Direct3D 11 Progress – Loading Scenes
There’s been a lot of progress in last couple of weeks. Many resource managers are done, Scene graph is almost complete, some camera systems are there, also static model loading is there, etc. Couple of Camera controllers have been done too – CameraFREELOOK and CameraOrbit. Other types of camera will be implemented as needed but for now I need these two only. Also I am using open source asset import library for importing X files only for now as I have test scenes in X file from the artwork used in last version of the engine. Once I get things working I will mess around with other formats too. Also looks like it doesn’t support so might have to implement FBX loader myself using FBX SDK later.
I trying to make the engine component based this time and also there’s been significant architectural changes compared to old DX9 version of the engine. It’s going to take a while to make engine as capable as before in terms of features. But this time it will be much more programmer friendly, more optimized, more capable to support complex scene hierarchies, etc.
I am working on loading large scenes again in this new version. Today I tested the full map with all textures at 7-8 FPS, using simple textured shader for now. It’s still better than my first attempt using DX9 engine when I got 1-2 FPS 🙂 which later after optimizations went up to 1000 FPS approx. ( after spatial partitioning, frustum culling, batching etc. ) .
In this first attempt I just made things working and there’s a lot of things left in mesh grouping, scene render manager, batching, material management, etc. I am hoping to achieve at least same results ( at least 1000 FPS ) after some optimizations and finish some loose ends.
Here’s a quick screenshot –
Also I will be adding a dedicated page for new version of the engine which will have an update list of things and also a To-do list. But I want to finish this scene loading first which should be done by Friday.
ASSIMP ( An open source library to import many 3d file formats )