We’re still really early in the summer, but I’m pretty happy about my progress. The first version of my API is now finished, and I’m handing it off to the physics programmer so he can start cracking on AABB. It takes about 100 lines of code to get a full graphics engine up and running.A far cry from the mountain of code required to get our last graphics going. Currently, my engine supports the following:
- .FBX files. I use a custom parser that creates a custom file format that loads much faster than a raw .FBX file.
- Basic diffuse lighting system, right now it defaults to point at the camera.
- Full system for creating/getting/destroying renderable objects.
- Dare I say, a foolproof handle system that does type-checking and reflection for all resources in my engine (cameras, textures, models, objects, etc).
- Shader support, with built-in shader reflection for creating vertex inputs.
- AntTweakBar support.
Writing this down I realize I have a million things left to do, but still I’ve made good headway. The next thing on my list is textures, which should be fairly easy to do, and then animation/rigging, not so easy to do. I’m also researching a totally different rendering pipeline, it’s from a GDC talk given by Bungie about the rendering system for Destiny (http://www.gdcvault.com/play/1021926/Destiny-s-Multithreaded-Rendering).