Video game animation


We decided that it is time to implement some animations in our game “Burnt Islands“. Mostly because I had a task to add a catapult that was going to throw stones at enemies from the distance. A catapult needs to rotate toward the goal and to throw stones in the right direction. The whole thing without animation would look really weird.

From Irrlicht mesh to Bullet Physics mesh

There is typically no physics functionality in graphics engines like Irrlicht. If you are using graphics and physics engines instead of one like Unity or Unreal Engine then you will run into a problem called “Irrlicht physics”. Recall that Irrlicht is just a graphics engine. It renders object on the screen and that is all. In order for an object to be able to have physics properties you would need to integrate physics and graphics engines.

Mechanics behind a game engine

Monster game engine

We’ve worked on our own game engine (“Monster game engine”) for almost three years. It is this engine we were using to make “Burnt Islands“. By doing this we’ve fallen into the classic trap of making the engine and thinking a game will pop out somehow. Today, “Monster game engine” is a complex engine allowing you to make 3D and physics based games for Windows and Linux.

Irrlicht culling problem

We’ve recently had major performance issues while testing the game. Debug information has shown that it was the graphics that was taking from 60 and up to 300 milliseconds per second to redraw all nodes. One of the issues that was discovered in analysis is that terrain ISceneNode had automatic culling EAC_OFF: