Skip to content

rilpires/saucer_engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Saucer Engine

Saucer Engine is a 2D Game engine made with C++11, using OpenGL 3.0 as rendering back-end. The focus on this engine was primarily for learning graphics programming, and then some low level development in general. It evolved a little bit further, with an integrated gui editor, with embedded lua profiling and scene editor (ImGui is indeed an amazing library).

It's focus is to be lightweighted and script-friendly, so you don't need to write C++ if you want, although it is simple to add custom C++ components.

I made this proof-of-concept game with Saucer. It's a chess game. It uses a custom C++ component to communicate with a external process (any chess engine executable that uses UCI protocol, like Stockfish).

Dependencies

Apart from heavy use of C++ STL libs, these below are all third-party dependencies:

(*) - Included as a git submodule. When not included as submodule, there is a copy of the project's source code.

Building

Currently, I'm working on building a proper release build (resource packaging). For now, you can easily build the editor executable with CMake. Don't forget to include all git submodules when cloning this repository.

Documentation

Source code documentation is being created with Doxygen. (Incomplete) Also, I think a script-API (Lua bindings) would be more useful since it is the subset of C++ functions that is useful for scripting. More on that is yet to come too.

Possibly nexts TO-DO's (by priority):

  • Picking scene node objects with mouse cursor in editor mode.
  • More API functions related to physics & collision (velocity, normal vector, etc)
  • Networking module
  • Integrate a file explorer in editor (will use boost or C++17)
  • Supporting Lua to the most recent version (5.4.2).
  • Imports for some popular tools (Aseprite, Tiled, OGMO, ... suggestions accepted! )

About

Game engine made in C++, using Lua scripting and OpenGL as renderer

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages