Planetary

Generated from the schema registry by ernie schema --markdown.

Terrain

Heights displacing a body's surface, or a plane.

Prim type · Inherits Gprim

Attribute Type Description Fallback Values Source
ernie:terrain:body rel The Sphere whose surface the heights displace, along its geodetic normals; unset, a plane in the terrain's xy plane. "" Ernie
ernie:terrain:heights float tensor, rank 2 or 3 float32 (rows, columns) heights in metres, the first row the northern; on a body, (6, n + 1, n + 1) cube faces. Ernie
ernie:terrain:heights:file asset Heights as a raster (TIFF, PDS3, PNG or JPEG) in place of the array, paged as views need them. "" Ernie
ernie:terrain:heights:unit double Metres in a unit of the file's values: 1000 for kilometres. 1.0 > 0 Ernie
ernie:terrain:heights:reference double Metres subtracted from the file's values: the radius, for files of radii. 0.0 Ernie
ernie:terrain:noData double The height marking missing cells; unauthored, every cell is a height. 0.0 Ernie
ernie:terrain:origin double2 A plane's north-west corner in its x and y, metres. [0.0,0.0] Ernie
ernie:terrain:cellSize double Metres between a plane's heights. 1.0 > 0 Ernie
ernie:terrain:exaggeration double Scales the heights as drawn. 1.0 ≥ 0 Ernie
ernie:terrain:finestCell double Metres: a body's LOD refines below its heights, bilinearly, to quads this size; 0 stops at the heights'. 1.0 ≥ 0 Ernie
ernie:terrain:colorMode token shaded: its material, lit; colormap: a height ramp, unlit; shadedColormap: both; hillshade: a GIS hillshade, grey and unlit. "shaded" shaded, colormap, shadedColormap, hillshade Ernie
ernie:terrain:hillshade:azimuth double Degrees clockwise from north of the hillshade's light; GIS's 315, from the north-west. 315.0 ≥ 0, ≤ 360 Ernie
ernie:terrain:hillshade:altitude double Degrees above the horizon of the hillshade's light. 45.0 ≥ 0, ≤ 90 Ernie
{
  "$schema": "https://alexmaietta.github.io/ernie/schema/ernie-scene.schema.json",
  "prims": {
    "/World/Terrain": {
      "typeName": "Terrain",
      "ernie:terrain:heights:unit": 1.0,
      "ernie:terrain:heights:reference": 0.0,
      "ernie:terrain:noData": 0.0,
      "ernie:terrain:origin": [0.0, 0.0],
      "ernie:terrain:cellSize": 1.0,
      "ernie:terrain:exaggeration": 1.0,
      "ernie:terrain:finestCell": 1.0,
      "ernie:terrain:colorMode": "shaded",
      "ernie:terrain:hillshade:azimuth": 315.0,
      "ernie:terrain:hillshade:altitude": 45.0
    }
  }
}

Atmosphere

The air around a body: its constituents, haze and clouds.

Prim type · Inherits Xformable

Attribute Type Description Fallback Values Source
ernie:atmosphere:body rel The Sphere it surrounds. "" Ernie
ernie:atmosphere:preset token Its physical model: Earth's air, ozone and haze, or Mars's carbon dioxide and dust. "earth" earth, mars Ernie
ernie:atmosphere:top double Metres above the surface it reaches; Earth's 100 km. 100000.0 ≥ 0 Ernie
ernie:atmosphere:groundAlbedo double The ground's reflectance for light scattered in the air. 0.3 ≥ 0, ≤ 1 Ernie
ernie:atmosphere:hazeOpticalDepth double Earth: the haze's vertical optical depth at 550 nm. 0.1 ≥ 0 Ernie
ernie:atmosphere:ozoneColumn double Earth: total column ozone, Dobson units. 300.0 ≥ 0 Ernie
ernie:atmosphere:sodiumColumn double Earth: mesospheric sodium atoms per square metre, lit 92 km up by a 589 nm laser as a guide star. 40000000000000.0 ≥ 0 Ernie
ernie:atmosphere:dustOpticalDepth double Mars: the dust's vertical optical depth at 880 nm. 0.5 ≥ 0 Ernie
ernie:atmosphere:cloudTop double Metres below which clouds block light grazing the limb, darkening its shadow as in a lunar eclipse; 0 clear. 0.0 ≥ 0 Ernie
ernie:atmosphere:cloudCover double The fraction of the limb the clouds cover. 0.5 ≥ 0, ≤ 1 Ernie
ernie:polarization:degree double The sky's greatest degree of linear polarization, 90 degrees from the sun. 0.75 ≥ 0, ≤ 1 Ernie
{
  "$schema": "https://alexmaietta.github.io/ernie/schema/ernie-scene.schema.json",
  "prims": {
    "/World/Atmosphere": {
      "typeName": "Atmosphere",
      "ernie:atmosphere:preset": "earth",
      "ernie:atmosphere:top": 100000.0,
      "ernie:atmosphere:groundAlbedo": 0.3,
      "ernie:atmosphere:hazeOpticalDepth": 0.1,
      "ernie:atmosphere:ozoneColumn": 300.0,
      "ernie:atmosphere:sodiumColumn": 40000000000000.0,
      "ernie:atmosphere:dustOpticalDepth": 0.5,
      "ernie:atmosphere:cloudTop": 0.0,
      "ernie:atmosphere:cloudCover": 0.5,
      "ernie:polarization:degree": 0.75
    }
  }
}

StarField

The stars, from a catalogue or arrays, at infinity: a light, unbounded.

Prim type · Inherits NonboundableLightBase

Attribute Type Description Fallback Values Source
ernie:stars:magnitudeLimit double Stars fainter than this are left out. 99.0 Ernie
ernie:stars:zeroPoint double Lux of a magnitude 0 star (Allen's Astrophysical Quantities). 2.54e-06 > 0 Ernie
ernie:stars:magnitude float[] float32 (stars): apparent visual (Johnson V) magnitudes. Ernie
ernie:stars:rightAscension float[] float32 (stars), degrees, in the catalogue's frame. Ernie
ernie:stars:declination float[] float32 (stars), degrees, in the catalogue's frame. Ernie
ernie:stars:direction float[n, 3] float32 (stars, 3) unit directions in its own space, in place of right ascension and declination. Ernie
ernie:stars:colorIndex float[] float32 (stars): B-V colour indices, giving each star's temperature. Ernie
ernie:stars:temperature float[] float32 (stars) kelvin, in place of the colour indices; without either, the Sun's 5772 K. Ernie
{
  "$schema": "https://alexmaietta.github.io/ernie/schema/ernie-scene.schema.json",
  "prims": {
    "/World/StarField": {
      "typeName": "StarField",
      "ernie:stars:magnitudeLimit": 99.0,
      "ernie:stars:zeroPoint": 2.54e-06
    }
  }
}

GroundPlane

An infinite plane in its xy plane, facing +z.

Prim type · Inherits Gprim

Attribute Type Description Fallback Values Source
ernie:checker bool Multiplies its material's albedo by checker squares. false Ernie
ernie:checker:size double Metres along a square's edge. 1.0 > 0 Ernie
ernie:checker:color0 color3d Linear RGB. [1.0,1.0,1.0] ≥ 0 Ernie
ernie:checker:color1 color3d Linear RGB. [0.5,0.5,0.5] ≥ 0 Ernie
{
  "$schema": "https://alexmaietta.github.io/ernie/schema/ernie-scene.schema.json",
  "prims": {
    "/World/GroundPlane": {
      "typeName": "GroundPlane",
      "ernie:checker": false,
      "ernie:checker:size": 1.0,
      "ernie:checker:color0": [1.0, 1.0, 1.0],
      "ernie:checker:color1": [0.5, 0.5, 0.5]
    }
  }
}