Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/razish/xsngine
C++/SDL2/OpenGL engine for low latency games
https://github.com/razish/xsngine
c-plus-plus game-engine linux opengl
Last synced: 3 months ago
JSON representation
C++/SDL2/OpenGL engine for low latency games
- Host: GitHub
- URL: https://github.com/razish/xsngine
- Owner: Razish
- License: mit
- Created: 2013-08-20T06:54:48.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2018-04-01T13:26:56.000Z (almost 7 years ago)
- Last Synced: 2023-08-04T16:55:07.973Z (over 1 year ago)
- Topics: c-plus-plus, game-engine, linux, opengl
- Language: C++
- Homepage:
- Size: 21.7 MB
- Stars: 11
- Watchers: 9
- Forks: 5
- Open Issues: 44
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# xsngine [![Build Status](https://travis-ci.org/Razish/xsngine.svg?branch=master)](https://travis-ci.org/Razish/xsngine) #
A simple engine written in C++ using SDL and OpenGL.
Built for high performance, low-latency games using modern rendering techniques.
Written with native execution on 32/64 bit Windows, Linux and Mac in mind.Don't expect anything great, unless you're willing to make it =]
# Core contributors #
* Kieren "Razish" McDevitt (maintainer, designer, lead programmer)
* AstralSerpent (general programming)
* Alex "Xycaleth" Lo (lead graphics programming)# Contributing #
Pull requests may be accepted provided they /try/ to follow the coding style guidelines (see CODE_STYLE_CONVENTIONS)
Please discuss with a project maintainer before making any major changes to avoid wasted effort =]
All code must be compatible with the MIT licence (see LICENSE)# Related Repos #
* [xsngine-assets](https://github.com/Razish/xsngine-assets)
* [xsngine-tools](https://github.com/Razish/xsngine-tools)# Compiling #
## General ##
There is a scons project capable of producing Release, Debug and Optimised-Debug builds. You can also force 32 bit builds.
There are some project files provided for VS2013, CodeLite and Code::Blocks which just invoke scons. This is for ease of debugging.
Steps:
* Install Python 2.7
* Install SCons (preferrably latest, at-least 2.3.0)
* Run `scons` from the `src` directory## Windows ##
Make sure `C:\Python27` and `C:\Python27\Scripts` are in your `%PATH%` environment variable.
Install Visual Studio 2015 Community Edition or later for C++ language features.
All projects use scons under the hood, and there are project files available for VS2015, CodeLite and Code::Blocks.
You can also run a build from the command-line with `scons -Q` from within the `src` directory.## Linux ##
You will require `libsdl2-dev`, `libglu1-mesa-dev`, `libfreetype6-dev` and `libpng16-dev` (which is not available in the main repositories as of Ubuntu 14.10)
`libfreetype6-dev` depends on `libpng12-dev`, so you will have to install that first, and then install `libpng16-dev` (`dimensio/libpng16-deb`) with the following method:```bash
$ git clone https://github.com/dimensio/libpng16-deb.git && cd libpng16-deb
$ sudo apt-get install bundler curl
$ bundle install
$ make
$ sudo dpkg -i ./*.deb
```To compile, run the following
```bash
$ cd src
$ scons -Q
```## Mac ##
You will need to install Apple Developer Tools from the App Store, then use HomeBrew/brew to install git, python and scons.
As Mac and Linux both have a UNIX environment + tools, the process between the two is much the same.# Debugging #
All the provided project files assume there is an executable file named `xsngine` in the current working directory.
Because different platforms will have different binary names, and these tools are used on all platforms, it is recommended to create a symlink from `xsngine.exe` to e.g. `xsn.x86.exe` - On Windows you will require the Win32 Symlink Extensions.Run the binary with `+set com_path "../bin"` to load assets correctly. See [xsngine-assets](https://github.com/Razish/xsngine-assets) for these files.