syBR Engine

A simple, modular, game engine

2008/12/30 - Version 0.0.8

List of changes:

  • Improved documentation about dependencies
  • Added Anti-Grain Geometry and Freetype as dependencies in order to do GUI rendering
  • Updated Ogre3D to 1.4.6
  • Updated OIS to OIS 1.2-cvs (2008/10/12)
  • Updated TinyXML to TinyXML 2.5.3
  • Updated Squirrel to Squirrel 2.2.2 and removed SqPlus dependency
  • Rewrote script bindings system and added automatic generation of documentation for it
  • Improved dependencies handling
  • Improved XML handling with more saving capabilities
  • Rewrote logging system
  • Various improvements and fixes
2008/01/20 - Version 0.0.7

List of changes:

  • Added mouse support
  • Added action manager to handle inputs
  • Added color node loading for GUIs (only used for text)
  • Added getTimeSinceLastFrame function to allow making FPS-independant scene updates
  • Added scene descriptor files loading support
  • Added physics support with Bullet
  • Created Viewport and Camera classes
  • Added possibility to create child scene nodes of scene nodes to allow building complex scenegraphs
  • Created the map2syBR .map compiler and its GtkRadiant configuration files
2007/06/10 - Version 0.0.6

List of changes:

  • Added kerning support in GUI font handling
  • Corrected bug in GUI font handling (characters position was not correctly calculated)
  • Corrected bug in PluginsSettings class (saving was not done correctly)
  • Rewrote and improved the plugin system
  • Created SceneManager, Scene, SceneNode and Actor classes in the game library
  • Added script support using Squirrel (support for basic scene management)
  • Created inputCore and inputOIS libraries
  • Added Input log file
  • Merged gameCore and game libraries as it was not necessary to have two separate libraries for the functionalities they provided
  • Corrected bug with D3D rendering device name in settings application
  • Minor changes / improvements / bug corrections
2006/11/02 - Version 0.0.5

List of changes:

  • Removed Direct3D / OpenGL rendering plugins as well as the rendererCore shared library
  • Added support of a single renderer shared library which uses Ogre3D
  • Main settings are available through the settings application which uses FLTK
  • Created GUI manager to handle rendering and management of GUIs
  • Created Picture and Text GUI widget
  • Fonts are created with AngelCode Bitmap Font Generator
  • Replaced Expat by TinyXML for XML handling
  • Makefiles and workspaces are now generated through CMake
  • Added new icon to the syBR executable
  • Created Vector2D class
2006/05/07 - Version 0.0.4b

List of changes:

  • Fixed a stupid bug with compilation of Direct3D rendering plugin
  • Fixed some warnings under Windows that did not occur under Linux
  • Replaced C-style file I/O by C++-style file I/O in TGA file loading code
  • Minor documentation improvements
2006/05/06 - Version 0.0.4

List of changes:

  • Completely rewrote plugins selection utility (now uses FLTK)
  • Changed windows to have a fixed size and removed minimize/maximize buttons
  • Created XML file handling classes, see samples/XML.cpp for an example of how to use them
  • Some minor code improvements / modifications
  • Renamed graphics/gfx to renderer/render in graphics-related plugins
  • Moved math-related stuff from shared to core
  • Created generateDoc utility to create text and HTML documentation from some source documentation files
  • Added documentation of makefile targets
  • Added documentation of directory structure
  • Created makefile cleanall target for executable and library files
  • Creatde script to launch syBR demo / settings under Linux
  • Changed .exe suffix to be only used under Windows
  • Added icons and version info to executables under Windows
  • Added icon to settings window and rendering window (Windows only)
2005/12/01 - Version 0.0.3

List of changes:

  • Completely changed code style
  • Makefiles (written by hand) for Linux and Windows
  • Compilation options can be tweaked in Makefile.options file
  • Some minor improvements / corrections
  • Completely portable between Window with Mingw / MSYS and Linux
  • Re-organized code and directory layout
2004/12/21 - Version 0.0.2

List of changes:

  • Core features:
    • Filesystem management class
  • Audio features:
    • Nothing
  • Graphics features:
    • OpenGL plugin
  • Game features:
    • Split into Game and GameCore
  • GameCore features:
    • All features of previous Game library
  • Run features:
    • Nothing
  • Shared features:
    • Nothing
  • Tools:
    • Utility to select plugins
  • Various stuff:
    • Better export/import code for DLLs under Windows
    • Full support of Linux
    • Makefiles for both Windows and Linux
2004/11/02 - Version 0.0.1 - Initial release

List of initial features:

  • Core features:
    • Plugin system class
    • Log system class
    • String class
  • Audio features:
    • Music support through Ogg Vorbis
  • Graphics features:
    • TGA files loading
    • Window creation
    • Rendering ALMOST inexistant
    • Direct3D plugin
  • Game features:
    • Initialization through XML file
    • Connection to plugins
    • Currently only using graphics plugin
  • Run features:
    • Run program which connects itself to game plugin
  • Shared features:
    • Math libraries with matrix, quaternion, vertex and AABB support
  • Other features:
    • Full documentation support through Doxygen
Before syBR...

Before the syBR Engine, there was something called... RLife3D. It was a game engine who existed for a bit more than four years. However, it was the author's first big project and it had several problems. Over years, the programming experience of the author improved and serious changes were made to the engine, leading sometimes to a lot of design improvements. Moreover, the main programmer was still at studies and he liked playing video games. So development time was quite limited, even inexistant when some great games were there.

Some of the implemented (and sometimes, abandonned) features were the following:

  • 3DS files loading
  • WorldCraft's MAP files loading and conversion
  • WAD files (texture packs) loading
  • TGA files loading
  • Quake III's MD3 files loading
  • FPS style camera
  • Basic console system
  • Portal system (ALPHA)
  • Pack files and filesystem
  • Basic encryption of files
  • Log system
  • Text rendering
  • SceneGraph
  • Math routines and classes
  • Several tools (conversion, configuration...)
  • Other stuff that I don't quite remember...

That makes a lot of source code and part of it will be used for the evolution of the syBR Engine. However, that code must be modified, documented, improved and integrated in the engine. Particularly, the RLife3D didn't used a plugin system. Last but not least, the engine was not platform-independant, its only OS was Windows.

So, RLife3D is dead. Long life to syBR Engine !!!