Serious Games

Simulating Spacecraft Journeys

solar system

There is currently a renewed focus on travel in space, evidenced by very recent Mars landings, and flights to the space station. This project will use the UE4 engine to simulate the flight of a spacecraft in a restricted part of the Solar System, e.g., Earth-Mars or Earth-Moon. It will extend a previous Computing Project where the Solar System was simulated without a spacecraft.

The project could take many forms; you could simulate launch from the Earth into orbit around the Moon or Mars, or you could focus on the descent and landing phase of a vehicle. This could be done using an autonomous controller, though you may like to give it a more game feel with a human in the driving seat. The maths behind the model is known as the "restricted three-body" problem.

Primary data will be the trajectories of the spacecraft motion, and the planets positions. This could be validated against real-world NASA data.


Porting UDK Levels to UE4

UDK Level


Over the past years we have created a huge number of UDK levels  for use in teaching and research at Worcester. Examples include rehabilitation of stroke victims, footfall planning for architects, virtual labs for learning physics and also mechanical engineering.

We are now in the process of 'porting' our extensive UDK assets and code into the Unreal-4 engine. Some baby-steps have been made; we have a decent draft coding framework but there is much work to be done. This project will focus on transferring materials, static meshes and terrain from UDK into Unreal-4. In addition you will work out how to create HUDs, on-screen graphs and plots, and work on the user interface. All of this must be linked into the code, which is written in C++.

The project could be situated in the context of (i) creation of a game, (ii) creation of a simulation. You may know that the University is working towards the establishment of a Faculty of Medicine. Simulations linked to medical training would be potentially interesting.

Primary data could be collected from your development process; you could keep a learning journal of problems encountered and solved (including details of fixes).