This week I spent some time researching development platforms for the creation of the simulation. I had initially decided that I would create example applications for three different environments and would performance test these to decide which one to use. On considering this idea further I realised that this could constitute an honours project by itself, and would not be a good use of time when it is largely inconsequential to my aims. Justification of a chosen environment could be achieved through research instead.
I watched a GDC talk given by Improbable from this years GDC where they gave an introduction to SpatialOS and also invited a range of developers to give further insight and testimonials. The talk explained that the Unity implementation had been maintained from the beginning and was by far the most developed implementation. This indicated to me that it made more sense to use this over the Unreal implementation which has only recently been released.
The talk also helped solidify some of the concepts of the platform, which further helped me make a decision regarding development environment. All of the simulation complexity will be handled by specific workers in the cloud, that means that the rendering of the simulation should not affect the performance of the simulation at all. All other parts of the game engine can be used voluntarily, so using a game engine rather than a more bare-bones framework shouldn’t provide any performance issues, especially if using a real-time simulation.
This resulted in a decision being made to use Unity as the development environment.