Helium/Lunar Update - Cycle 13
Where we are at
This was somewhat of a short cycle… we lost about a week of time to the holidays and what not, but that being said, we did get a few things squared away. Some progress was made on the unification stuff, we have an actual design in mind of the system that was blocking us previously and we are currently chipping away at that. We also had a chat and laid out the differences in our use of enumerations across the code base, the unification of which is something we will have to tackle soon.
What was completed this cycle
- Fleshed out an actual design of a serialization system that meets the needs of lunar and helium, at least in the short term. We will be implementing this as designed, then go back periodically and make sure it is still serving the needs accordingly.
- Some new containers were added to Lunar’s custom container code. This is in preparation for Helium to switch over and use Lunars containers, instead of the STL.
- We are in the process of submitting a fix to wxWidgets regarding some image alpha blending stuff (for overlay icons!) We are getting some resistance from the maintainers there (lack of unit tests are giving them pause, but we don’t have a lot of time to spend on this) but I think it will go through soon.
- More refinement was done on the Project UI in the editor. You may be wondering “why do they keep working on the project view every cycle?” The short answer is that the project UI is going to be the main entry point for the editor, as well as the only place to add and remove data from the game. It is very important that it works well right off the bat as every other feature (in the editor at least) will rely on the currently loaded ‘project’ in some way.
- Geoff has written an article for Game Developer magazine. It is a technical article, so those of you on the internal ‘Code’ mailing list should already have a copy for review and feedback.
What’s next
Plug away on the serialization system design we have come up with. Hopefully this will be complete before the office closes for the holidays. Next up after that will be unification, if possible, of the object model, and then how to handle our scene storage format. After all that, we’ll finally be working on the changeover to use the Lunar renderer. As you can see, the order of operations is pretty much laid out for us at this point.
Demo time
Time for a little tour of the project view. When you first load the editor there isn’t much you can do without a project open, so we added some fairly large buttons here to make it easy to load or create a project.
And the best part of this is that we keep track of the projects you have used recently, so once you’ve done some work on a project or two, it will look more like this:
Just click on whatever project you want to work on and it will load up.
Once inside a project it will look something like this:
Obviously this is an extremely simple project right now, but hopefully you get the point. You can double click on the different scenes to edit them in the 3D view. Bold means a scene is currently being edited, while italic means you have made edits to that scene previously in the session, and they are currently not saved.
As usual, please let me know if you have any questions/comments. Also, this is the last update before the break, so happy holidays everyone.
-Paul-