Skip to content

Latest commit

 

History

History
64 lines (53 loc) · 2.84 KB

README.md

File metadata and controls

64 lines (53 loc) · 2.84 KB

Sauce3D

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.

Features

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

Samples

  • DrawText: Shows how to draw text from using BMFont. This includes drawing text bound to a box and colored text. Text Sample

  • 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. Gui Sample

  • 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). Physics Sample

  • RandomNoiseGPU: Shows how to render random noise on the GPU using shaders. Random Noise Sample

  • 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. Scene Graph

Traversal Order Traversal Order

  • Shaders: Shows how to create and load an GLSL shader. This shader visualizes the Mandelbrot set. Shader Sample
  • ShadowCasting: Shows how to create 2D shadow casting using the technique described by this article. Shadow Casting Sample
  • TextureAtlas: Shows how to programatically create and use a texture atlas, created run-time from a list of images. Texture Atlas Sample

Missing Features

  • Audio playback
  • Networking
  • Multi-platform support
  • Multi-language support