Editor: The Solar System
Description
By default, Nominal Editor (and Nominal Studio) create the entire Solar System in the Universe. This means that all bodies are initialized and their data (position, rotation, velocity) are all loaded correctly from the SPICE kernels. NASA provides the SPICE library as a way for pulling updated ephemeris data from a particular epoch for Solar System bodies. Along with the 8 planets (Mercury to Neptune), the following three bodies are also added to the simulation:
- Sun (Sol)
- Moon (Luna)
- Pluto
Note
Currently, additional moons and celestial objects cannot be added to the simulation. Future releases plan to add these objects to the Solar System.
Changing the Central Body
When configuring the Universe, there is an option to change the central body, also known as the zero base. This defines the origin of all coordinates within the simulation. By default, the Earth is the central body and will be positioned at the origin (\(0, 0, 0\)). Changing this coordinate origin will not affect the rest of the simulation, as all positions are relative, but may help with spacecraft coordinates. If the spacecraft should be in a sun-frame, the central body may be changed to be the sun. Typically, for single-spacecraft simulations, it is best practice to set the central body to be the object that the spacecraft is orbiting.
Warning
Avoid changing the zero base during a simulation. If the zero-base is changed, although all planets and SPICE data will be updated, the spacecraft will not change its position and will result in an incorrect orbit. Zero-base and other Universe functions should only be set before all other objects are spawned into the level.
Changing the Coordinate Frame
Another option available in SPICE is the coordinate frame. This again concerns the positions of the bodies in the system but enables different rotation frames for each of the objects. Specifying a different frame will result in the positions of the spacecraft and planets being different. There are 8 exposed coordinate frames, with the J2000
frame being the default. This is a common PCI (planet-centered-inertial) frame defined with the central body’s Mean Equator and Mean Equinox (MEME) at noon Terrestrial Time on 1 January 2000. Other frames include:
B1950
: Besselian year 1950, using 1976 IAU precession modeCENTRAL_BODY_FIXED
: Rotation Fixed Body frame using defined Central Body PCPF (Planet Centered Planet Fixed). Uses the IAU frame systemEARTH_HIGH_PRECISION
: High Precision Earth Rotation frame using Julian J2000ECLIPTIC_B1950
: Ecliptic coordinates based on the Besselian B1950 modelECLIPTIC_J2000
: Ecliptic coordinates based on the Julian J2000 modelFRICKE_CATALOG_4
: Fundamental Catalog reference frame, derived from Besselian B1950 by FrickeGALACTIC
: Galactic System II frame using Julian J2000 system with the central rotation about the galactic plane
Earth Clouds
The standard Earth models have an overlay texture of clouds that are present in the model. The clouds currently are not simulated and are a standard texture that rotates with the Earth’s rotation. However, the cloud density and opacity can be changed through a function call. The function Configure Earth Clouds
can be called at any time to enable or disable the clouds on the Earth. The Opacity
fraction will adjust how much of the clouds are transparent while decreasing the Cloud Contrast
fraction will increase the amount of cloud cover over the Earth. The Normal Intensity
changes how the normal map of the clouds affects the world.
Lunar Height Map
Most bodies in the Nominal System’s Solar System are made from spheres (or at least a high-polygon sphere). An updated height map has been added to the moon which can highlight the craters and mountains present on this body. This map deviates away from the sphere model and provides extra detail when rendering objects near or on the Lunar surface.
Custom Bodies
It is possible to create a custom model of the Earth or the Sun within Nominal Editor. To do this, create a new blueprint class that inherits from Planet
. By default, this will add a static mesh. The properties of the mesh and any objects associated with the planet can be added through the blueprint. To set the planet as the default for the Earth once created, navigate to the project settings and in the Nominal for Unreal Settings
, change the Earth Blueprint Class
to the one that is selected. This will always spawn your planet in replace of the Earth whenever it is called. The size and the position of the Earth are handled via SPICE and do not need to be configured in the planet blueprint. Leaving the value as None
will result in the default Earth (BP_Earth
) being spawned.
Warning
When creating the sun's custom body, be sure to correctly configure the lighting of the body, as this may affect the result of the sunlight in the Universe system.