Doug Binks - 30 Oct 2013
It's been a busy couple of months since my last technology update. After being laid low by a viral modification program masquerading as an Autumn cold, I have emerged into my cold weather form with time to spare for a bit of programming.
Some of my work has gone into improvements in the Runtime Compiled C++ I use to help program Avoyd with which you can catch up on over at the RCC++ blog. The rest has been on two fundamental features: materials and multiple voxel models.
Materials are pretty obvious requirements as we plan to make resources and building a large part of Avoyd. Avoyd's voxels are 32bits in size. 8 bits are used to represent the amount of material within the voxel. A further 8 bits are needed for material modifiers as a team or 'culture' can own parts of the environment. So we have 16 bits left for materials, which gives us 65536 or 64k materials, a bit more than the 10 I currently have bound to the keyboard!
Testing materials: in future materials will have different physical properties along with texturing.
Multiple voxel models are needed because not only do we plan to have more than one world, we'll also be making the entities in the game from voxel model so as to get maximum re-use from our technology and to allow easy customization for gamers.
It's now possible to have several voxel worlds in the same universe. Here you can see several voxel worlds where each has its own independent set of axes.
_ Voxel models will also be used to represent entities. Here I'm testing this out with by adding a voxel world in yellow scaled down 100 times.