Life is a Space Odyssey

From EQUIS Lab Wiki

Jump to: navigation, search

The Awesomes - Cheryl, Jason and John


Project goals

Our learning objectives are to gain an understanding of the Ogre and Life is a Village software plus the ODE Physics engine. To do this, we plan to convert Life is a Village into landing simulator in which the user will attempt to land a space ship onto a target located on a 3D surface. The space ship will be subject to gravitational forces as well as the forces applied by engines mounted on the space ship.


How the changes will appear to a player

The appearance and the game play will be radically different from Life is a Village. The terrain and sky will be changed from an earth-like setting to that of an imaginary planet. There will be no villagers and the player will be represented by a space ship instead of by a robot.

The player will initially be floating in space. Planets will be visible in the distance. As the player approaches a planet, the terrain will appear in 3 dimensions. A target will be visible in the distance and the player will attempt to fly the space ship and to land it on the target without crashing.

The player will have controls that allow him to fire engines mounted tangentially and perpendicular to the space ship.


Technological Issues

- Integration of the ODE Physics engine (and OgreOde) with the Life is a Village software

- Calculation of gravitational forces and rotational forces on the space ship

- Handling multiple levels of detail for objects in the scene

- Use of Octree scene manager

- Switching smoothly between the Octree scene manager and the Terrain scene manager

- Integration of custom models (3ds or other) and textures within OGRE


Stages of Development

The project will be developed in stages in order to produce a playable demo at various points throughout the term. Currently we see the key stages as:

Stage 1

- Install ODE Physics engine and get it to run with Ogre/Life is a Village

- Develop a new planet/moon terrain

- Develop a lander that starts above the terrain and lands on the target


Stage 2

- Add HUD

- Addition of to handle the physics for rotation of the space ship


Stage 3

- Transition from deep space to planet surface


Stage 4

There are many possible enhancements which could be made if time permits. These include:

- Addition of obstacles or other flying objects to be avoided when landing the space ship

- Collision detection and alteration of flight path when colliding with obstacles or other flying objects

- Sound HUD for navigating toward the target (like Jason's project)

- Implementation of custom models