I began implementing it just for fun, but it’s working so well that I will include it in next release, I was a bit afraid at first that it would corrupt classic map loading, or use too much CPU, but it’s fine.
I’ve also began working on adding a third thread on my game, for multi-core computers (so almost all recent computers), in order to do so I have split graphics rendering and game engine. So now there are 3 threads :
- Cache rendering (light calculation, texture mapping, on 32x32x32 voxels cubes)
- Game engine (physical engine, bullets, weapons, monsters,…)
- Graphics rendering
So far everything is good, I thought I would have synchronization problems, but not at all, just a few null pointer exception when game engine is triggered after graphics rendering, but it was quickly corrected. The game should have better performance on multi-core computers (even with only two cores as graphics rendering is the one that eats the most CPU, other two “sleep” a lot more)
I asked a friend if he could do some graphics for me, so hopefully, if he agrees, snorms might get better graphics in the future 🙂