Skip to content
This repository was archived by the owner on Jul 1, 2021. It is now read-only.

ActiveAreas Explained

Neal Nicdao edited this page Sep 20, 2019 · 2 revisions

This page still needs some work

The implementation described in "Dealing with a Large Universe" is separate from the game engine. So how does the player interact with the universe, or anything at all? There exists the ActiveArea, which stores the physics-enabled game Scene, projecting the large universe into a tiny space the game engine can handle. ActiveArea is a Satellite, so it's positioned the same way as other astronomical body or space craft, but usually follows the player around. To

Loading and Unloading Satellites

All Satellites have a m_loadRadius variable, describing a sphere around the satellite. When sphere of a normal Satellite (a spacecraft or planet) hits an ActiveArea's sphere, then the ActiveArea calls that Satellite's load() function. Whatever happens in load() is up to the Satellite's implementation, like load a Node containing PlanetTerrain for AstronomicalBody.

Loading Previews

write something about loading discount models of far away objects, so they are still visible. like distant flares for stars, and low detailed planets.

Floating Origin

The (0, 0, 0) position of the ActiveArea's internal Scene, corresponds to the center of the Satellite in the large universe. Note: ActiveArea keeps units of its Scene in meters, regardless of any precision values.

There should be more features here

This is suppose to be an open source project, so go ahead and contribute. If you don't like this implementation then go to the Discord server and yell at Capital-Asterisk.

Clone this wiki locally