It has been quiet for too long now since the previous post. Hence this post to update you all about the status of the engine developments and future plans.
Last October 26th Microsoft released its latest operating system (OS) Windows 8 and Windows 8 RT (for ARM devices) supporting a wide variety of touch enabled devices. This release is a great and important milestone in their history. A couple of days later they also released Windows Phone 8. These three OS’es share the same Windows 8 core, making it easier for developers to create apps: a new ecosystem.
Brand new is the Start screen that you are welcomed with at startup of your device. It displays all important information you would like to see in one place. It does so using a grid of live tiles. Each tile can display the latest news and updates in your social media. Windows Phone 7 users will already be familiar with this concept, they already had the metro interface on their devices. Ofcourse there is much more to tell about Windows 8, I will now focus back on the engine, as thats the topic of this blog.
Next to the release of the Windows 8 based OS’es, the new Visual Studio 2012 has been officially released. It now runs smoothly now on my machines, and I replaced 2010 in favor of this new version for my engine developments. Speaking of which, I started a big refactoring project a month ago to factor out all OpenGL calls in the engine. They are combined in interfaces and moved to a DLL which is loaded at runtime depending on the settings. With OpenGL out of the way, it should be doable to make a similar interface on top of DirectX. During this refactoring I also had to make some decisions about old hardware support and decided to remove the support code for older hardware that did not yet support pixel shaders. It makes the code better readable and maintainable. I also have to look at the resources. Currently actors and the world load their images, sounds, etc. in both the client and server processes. For the server process this is a waste of memory. To solve this problem these objects have to be split up into separate modules, e.g. physics and graphics modules. The graphics module will only be added by the client process.
All in all, there still lies a lot of work ahead which I do not expect to be finished soon. I will keep you updated using more blogs and twitter. Thanks for reading!