Our VoxMill engine has been modified quite a lot from the prototype used for the ZPoc project. Our team decided to step in the ring again for Dream Build Play, and we needed an engine that would work well on the XBox for what we had in mind. Since the XBox has 3 cores, and 2 threads per core, that meant a threaded engine.
In the beginning we tried to find something off the shelf to use. Some of the open source projects were quite promising, but when pushed hard just couldn’t make the cut. When programmers hear “threaded” they generally lift their eye brow as if to say — “Are you sure you want to go there?” You see, there really are dragons there, the multi-headed Tiamat sort of beasts. Not to say there aren’t a lot of capable programmers that can handle it, but many modern engines and software solutions keep “we” the coders at arms length for a reason. It’s terribly easy to make a mess, and many times harder to clean it up. It’s generally just not worth the time or pain….yet we did it anyway…and still have a long way to go.
The nature of Dream Build Play is that you end up with a hard crunch at the end. This was no exception. Coordinating a team that can only work nights is very difficult. Inevitably, a host of features are piled on top of the engine at the last moment. So this time, we invested up front so it would be ready for the final push.
At the prototype level of the game, we were routinely hitting 100+ fps on the XBox. Even now, after the final content and additional features, we’re still hovering around 60.
So, we have the typical blocks (voxels) any builder would have, sunlight propagation and multi-colored light propagation. But there are still a lot of features to add. Normal mapped voxels, liquids, radiation fields, “decals” and semi-complex constructs. All of that, just to get caught up with where we feel we should be. After that, we hope to start adding complex/dynamic systems that interact with the world in an accessible manner. Sounds vague — it still is to me too 🙂
Xenominer has a large story to tell. Only a fraction of the features we have on the board made it through to Dream Build Play. The VoxMill engine will continue to grow through the process, and will likely live on for more titles after this. Many of those will look nothing like Xenominer. It seems to me that the simple voxel has a long future, and when combined with its siblings in the millions, will form some very beautiful constructs!