Simple Direct Engine (SDE) is a game engine that covers most ot the topics needed in game development, such as graphics, sound, input and much more. It's built on top of DirectX and it's goal is to keep a simple interface while offering great features. It started as a C++ project, but due to the lack of time, now It's been developed from scratch in C#, with Managed DirectX 1.1.
My goal is to keep the interface simple enough and not offer excessive features (like Ogre does). I also want to write a bunch of tutorials to help newbie programmers easily start writing their own games. This project is hosted in Sourceforge so you can visit our Project page.
Bump mapping | GUI |
Shaders (blur) | Particles |
- Mesh loading
- simple objects creation (cube, cylinder, sphere, torus, teapot, ...)
- Light management that can handle infinite lights
- Node hierarchy
- Powerful material management
- Shader rendering
- Realistic fog
- Multiple camera rendering
- Billboards, Axis-Aligned Billboards and Decals
- Picking
- Render to texture
- Particle system
- Statistics (memory used, fps)
- GUI
- 3D sound
- Doppler effect
- Special FX (reverb, echo, ...)
- Streaming (mp3, wma, ...)
- Mouse
- Keyboard
- Joystick
- Read/write config files
- Write XML files
- Controllers to link different modules
- Gamestate handling
- Tutorial 01 - Understanding the Engine
- Tutorial 02 - Setting up the Environment
- Tutorial 03 - Hello Teapot
- Tutorial 04 - Material World
- Tutorial 05 - Ride the lighting
- Tutorial 06 - Camera Setup
- Tutorial 07 - Controller Job
- Tutorial 08 - Particle Fun
- Tutorial 09 - GUI Trouble
- Tutorial 10 - Sound, Music and Rythm!
- Line and Rectangle rendering
- Controllers aren't a public array (and some other controllers' bugs fixed)
- File module
- Input module (mouse, keyboard and Joystick support)
- Gamestate handling
- Tutorials
- Documentation
- Replace Getters and Setters with properties (like Camera.ViewMatrix)
- Fog
- Screenshot creation
- Multiple camera rendering
- Alpha blending - ordering
- Billboards, Axis-Aligned Billboards and Decals
- Picking
- Render to texture
- Particle system
- Statistics (memory used, fps)
- GUI
- Sound module
- Mesh loading
- simple objects creation (cube, cylinder, sphere, torus, teapot, ...)
- Light management
- Node hierarchy
- ThirdPersonController and RotationController
- One example
- DLL generation
- Shader loading
- Render by material
- Terrain rendering
- Stencil Shadows
- Visual editor
- Progressive mesh loading
- Frustrum culling
- Log
- Improve third person camera controller (keys)
- Sound Emitters should inherit from Node3
- Implent keyboard or gamepad gui events
- Slider gui control
- Font class
- XML Reader
- Default material (not null)
- Relative mouse position
- Positional sound isn't correct (sounds in your back aren't correct)
- LinearAffector's outterCone parameter doesn't behave properly
- Material.Alpha property doesn't work
- Fog doesn't work properly
- Waaghman (developer of the Swift Engine). He answered a lot of questions regarding C# and DirectX.
- Nikolaus Gebhardt (developer of the Irrlicht Engine). It was the first engine I ever used and I love the simplicity of it.
- I grab the timer class from The Ramblings of a Hazy Mind. And it's got some interesting tutorials if you want to start an engine with C#.
- Texture Bin - Free textures
- HDRI Maps - EEEEh, HDRI Maps
- Freesound - Free samples
- Freeplaymusic - Free music (more or less)
Miguel Herrero Obeso I post all the news about my engine in my personal blog, though it's in spanish. |