Dev Stream #05: DeepEnd submarine
ANDREJ KREBS, MITO HORVAT
The underwater scenery in Floatlands will be huge, you will need an efficient way to travel underwater without getting yourself killed and for this reason Deep End submarine comes in handy. Players will be able to craft this submarine. You’ll be able to travel at faster speed underwater and reach the undiscovered depths. You'll even mine precious minerals that only spawn on the ocean floor with the help of the laser mining “drill”, which you’ll craft and attach to the front of your Deepend. We livestreamed the creation of a few Deep End assets – the aforementioned submarine and a small crab:
We started making a small biome that will appear in the craters left by the raised islands. In particular these will be harsh toxic areas with a lot of very lucrative resources. So far we have modeled quite some assets for it, based on Mito’s concept art.
Reworked grass & bushes
In addition, we have reworked and developed a new look for the grass and bushes. The bushes we added use a similar approach as grass, using planes with alpha cutout textures and a foliage shader to make it react to wind.
Domen already did tremendous amount of work on improving the terrain, but I saw some room for improvement. Terrain is based on heightmap/bitmap, but sampling was done without interpolation. So this is why I implemented bicubic interpolation, which gives us smoother terrain and enables us to do derivatives on it (gradient). And from gradient, I can calculate normals or search for a local minimum/maximum through iteration (gradient descent). This is very useful because there is no more need to raycast meshes to get normal sample, which should optimize some terrain generation processes. As a result, here is animation of testing gradient iteration and it works quite good.
Simple animation script
For the purpose of creating simple animations (basic object rotations and translations) without using any external libraries we have written a script that handles animations by itself without using Unity3D’s animation framework. You can use the script either programmatically or as component. Good thing about having animation system is scalability and room for improvements, because it will be a location based system meaning only those game objects that are in vicinity are going to be animated.