From ReadMe:
Click here to download itThis required no modifications to Irrlicht. It works by storing all 6 cube faces on a single texture (I did this by using 6 viewports and rendering a screenquad with the texture applied to each viewport), then transforming the final texcoords to read from the correct face based on a texture index. I then projected this cubemap from a 3d position and multiplied it with the diffuse map of all the objects in the scene.
The method used here is good because it allows you to easily load a cubemap from 6 seperate textures, then blast it onto an RTT and you're away. Even if the textures are of different sizes, too big, too small, or of different aspect ratios they will be resized to fit into their respective area inside the cubemap texture (Using absolute positioning).
When you first start the demo, the default Irrlicht skybox is projected from the position of the FPS camera. After you shoot a cube it will follow that cube until you shoot another one. The physics here is provided by Bullet, its currently configured to be fast & fun, so the physics simulation should run pretty fast at the expense of accuracy.
Keys:
-----
WASD (Or arrows) to move.
Press space to shoot a cube.
R to display/hide cubemap texture on screen.