Skip to content

Interface: PlanetVisualProfile

Visual tunables kept inline on PlanetConfig — these are read by the render layer when building palettes and decorative features but have no effect on the simulation itself. Full palette overrides live separately in BodyRenderOptions (render-only, coupled to THREE.Color).

Stars do not carry a visual profile: their look is fully driven by SpectralType — every visible knob (palette, granulation, corona, godrays) derives from it.

Properties

liquidColor?

ts
optional liquidColor?: ColorInput;

Liquid-surface colour. Required when liquidState !== 'none' — the lib no longer ships a fallback keyed on chemistry names, so the caller owns the substance→colour catalogue entirely. Frozen sheets use this value as the liquid-side anchor; the frozen tint is then derived by desaturation.


bandColors?

ts
optional bandColors?: object;

Four-stop band palette for gas giants — ordered light → dark → accent → secondary. Consumed by the gas terrain palette and the shader's band uniforms. When omitted, a neutral default is used; callers that want molecule-accurate hues (Jupiter, Neptune, Titan…) compute the stops from their own gas catalogue and pass them in here.

colorA

ts
colorA: ColorInput;

colorB

ts
colorB: ColorInput;

colorC

ts
colorC: ColorInput;

colorD

ts
colorD: ColorInput;

terrainColorLow?

ts
optional terrainColorLow?: ColorInput;

Low anchor colour of the default rocky terrain ramp — assigned to the shortest band (elevation 1). Ignored when a palette override is supplied at render time. Defaults to DEFAULT_TERRAIN_LOW_COLOR.


terrainColorHigh?

ts
optional terrainColorHigh?: ColorInput;

High anchor colour of the default rocky terrain ramp — assigned to the tallest band (elevation N). Ignored when a palette override is supplied at render time. Defaults to DEFAULT_TERRAIN_HIGH_COLOR.


metallicBands?

ts
optional metallicBands?: readonly [MetallicBand, MetallicBand, MetallicBand, MetallicBand];

Four-band palette for metallic bodies — ordered crater floor → plains → highlands → peaks. Consumed by the metallic terrain palette and the procedural shader (base + accent are read from the first and last bands). When omitted, the lib falls back to a neutral grey ladder; callers wire their own composition catalogue (see the playground for a reference implementation) and pass the result in here.


hasRings?

ts
optional hasRings?: boolean;

When true, a decorative ring system is generated around this body (visual only).

Distribué sous la licence indiquée dans le dépôt.