9#ifndef AVARA3D_VISUAL_GROUND_H
10#define AVARA3D_VISUAL_GROUND_H
52 std::optional<GridComponent>
minor {};
53 std::optional<GridComponent>
major {};
69 using Fill = std::variant<Procedural, std::shared_ptr<Material>>;
Represents a normalized RGBA color.
static Color Black()
Returns opaque black.
Configures haze concentrated around the ground horizon.
float angularWidth
Angular extent from the horizon, in radians; must be in (0, pi/2].
Color color
Horizon-haze color.
Configures one set of procedural grid lines.
Color color
Grid-line color.
float reliefStrength
Strength of procedural grid relief; zero disables relief.
float spacing
Distance between grid lines in scene units; must be greater than zero.
float lineWidthPixels
Grid-line width in pixels; must be greater than zero.
Configures a procedural grid with optional minor and major line components.
Color color
Base ground color between grid lines.
std::optional< GridComponent > major
Optional major grid lines.
std::optional< GridComponent > minor
Optional minor grid lines.
float specularExponent
Phong specular exponent; must be greater than zero; higher values produce narrower highlights.
float specularIntensity
Phong specular intensity coefficient; must be non-negative; zero disables specular highlights.
Configures a procedurally rendered ground fill.
std::variant< Grid > Content
Supported procedural ground content.
Content content
Procedural content to render.
Configures a radial transition from the ground fill toward a color.
float startDistance
Distance from the center where fading begins; must be non-negative.
math::vec2 center
Center of the radial fade on the ground surface.
float endDistance
Distance where fading completes; must be greater than startDistance.
Color color
Color approached beyond the fade range.
Configures ground rendering over a VisualWorld reference Surface.
std::variant< Procedural, std::shared_ptr< Material > > Fill
Procedural or material-backed ground fill.
Fill fill
Ground fill to render.
std::optional< RadialFade > radialFade
Optional radial fade applied to the ground.
std::optional< HorizonHaze > horizonHaze
Optional haze applied around the ground horizon.