I’m getting really close to a functional tool with the world editor. I can now load a scene, add objects, select objects, translate, rotate, and scale objects, and save the scene. The editor saves the scene in two passes. First it writes a .png to the server that is a height map built from the scene’s terrain, then it writes a .json file that contains the name, location, rotation, and scale of each object in the scene. Those two files can then be used to load the scene later. There are just a few more abilities I want to add.
- Remove objects
- This should be really straightforward, but it will definitely be handy to be able to remove objects that are no longer needed without having to manually edit the .json file.
- Add lights
- I might actually save this one till later since it’s easy enough to just add a sunlight lamp or some ambient light to the whole world, but it would be nice for things like lamp posts or other cool atmospheric effects.
- Edit terrain
- I had a simple terrain editing tool in place but I was only able to select one vertex at a time and move it up or down. For managing a large scene this really isn’t practical. I want to have a scale-able circle projected onto the terrain where clicking raises all of the vertices in the circle and shift-clicking lowers them. I’m hoping this will be relatively easy to implement.
Once these basic abilities are in place I will start adding to the library of objects that can be placed into a scene. After I have the basic assets for Penrith Forest available, I’ll make the very first iteration of that area. Hopefully I can release a small demo shortly after that. I’m pretty excited to be at this point.