Code Monkey home page Code Monkey logo

xsngine's Introduction

xsngine Build Status

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

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 2013 Community Edition or later for C++11 features.
All projects use scons under the hood, and there are project files available for VS2013, 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:

$ 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

$ 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 for these files.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.