Update 10:It's a big one.
It's been an absolute blast developing this next part. An important idea around MYMMO is creativity, the ability to create your own world as you want it. Terraforming in old Sim City's was one of the most exciting parts of creating your city and everyone knows how fun it can be in games like Minecraft. I was scared about developing this, I didn't wan't want to fall into a time sink hole and never return. Today I'm happy to say i'm out of it, the worst is surely over.
Voxels lend themselves to terraforming perfectly, simple to use and in the right hands you can create beautiful things. On the face of it, you'd think it would be easy to develop a voxel engine but performance plays a major role in MYMMO and unlike Minecraft it's top down, you can see the whole map, I can't rely on culling alone for optimisations. MYMMO's terrain engine is super optimised, I've generated huge maps containing
hundreds of thousands of voxels and it handles it easily at 60fps with vsync on. In the time since the last update i've developed:
- Procedural generation of islands using multiple noise functions
- Basic Biome support
- Greedy mesh optimised voxels - meshing is not done per voxel but per textured area (a large expand of grass voxels is 1 quad)
- Tiled textured voxels via a custom shader- a difficult problem to solve as I don't have each voxels vertices, so no UV mapping
- Support for semi transparent voxels
Teaser of voxel editing:
Small island, can generate much larger:
Next on the todo list:
- Current textures are temporary + need to design more block types.
- More interesting biomes, fit for an MMO - Blood (red leaf, white trunk) trees, Volcanos, Elvern style mystical forests.
- Terraforming UI - Square select, circle select
- Water physics and shader