Sauce3D is a game engine built on the Simple DirectMedia Library. The engine adds high-level classes and functionality for easier handling of the graphics, input, window, etc.
Engine
- Logging functionality
- Resource managing
Graphics:
- Bitmap fonts
- Sprite batching
- Render targets/Frame buffer objects
- Indexed and non-indexed primitive rendering
- Textured primitives
- Texture atlases
- Vertex buffers and index buffers
- OpenGL 3.1 shaders
- Multiple render-targets
- Integer textures
Input
- Keyboard input
- Mouse input
- Input configuration files
- Joystick/Gamepad input
Utility
- Extra math functions
- Matrix and vector classes
- Rectangle packer class
-
DrawText: Shows how to draw text from using BMFont. This includes drawing text bound to a box and colored text.
-
GameController: Shows how handle and use controller input. Tested using an wired Xbox 360 controller.
-
Gui: Shows an implementation of a graphical user interface. This sample includes a line-edit which supports most of the common features and shortcuts of a single-line text-editor. Also features a Button class, a Slider class, dialog boxes and GUI naviation with cross-fade. The GUI-element supports relative positioning and anchoring.
-
Keybinds: Shows how to bind keys to functions, use the InputConfig file to create keybindings and how to use the InputContext class.
-
PhysicsEngine: Shows how to make a simple physics engine (work-in-progress).
-
RandomNoiseGPU: Shows how to render random noise on the GPU using shaders.
-
SceneGraph: Shows how to construct a scene graph by creating object which inherits the SceneObject class, and then adds them to the scene graph. Also exports the object to a graphviz file which visualizes the scene graph in a tree.
- Shaders: Shows how to create and load an GLSL shader. This shader visualizes the Mandelbrot set.
- ShadowCasting: Shows how to create 2D shadow casting using the technique described by this article.
- TextureAtlas: Shows how to programatically create and use a texture atlas, created run-time from a list of images.
- Audio playback
- Networking
- Multi-platform support
- Multi-language support