SceneConfig

open class SceneConfig(val renderOptions: RenderOptions = RenderOptions.Default, val lightDirection: Vector = DEFAULT_LIGHT_DIRECTION.normalize(), val defaultColor: IsoColor = IsoColor(33.0, 150.0, 243.0), val colorPalette: ColorPalette = ColorPalette(), val strokeStyle: StrokeStyle = StrokeStyle.FillAndStroke(), val gestures: GestureConfig = GestureConfig.Disabled, val useNativeCanvas: Boolean = false, val cameraState: CameraState? = null)

Core configuration for an isometric scene.

Bundles rendering, lighting, color, stroke, gesture, and camera settings into a single immutable value that drives IsometricScene behaviour. Extend with AdvancedSceneConfig when hook callbacks or engine-level tuning are needed.

Parameters

renderOptions

Controls rendering behaviour such as sorting and face culling.

lightDirection

Normalized direction vector for the scene's light source, used to compute per-face shading.

defaultColor

Fallback IsoColor applied to shapes that do not specify their own color.

colorPalette

A ColorPalette providing named semantic colors (primary, secondary, etc.) that shapes can reference for consistent theming.

strokeStyle

Determines how shape outlines are drawn. Defaults to StrokeStyle.FillAndStroke.

gestures

A GestureConfig controlling tap and drag interaction with the scene. Defaults to GestureConfig.Disabled.

useNativeCanvas

When true, renders directly to the platform's native canvas instead of the Compose draw scope. May improve performance on some devices.

cameraState

Optional CameraState for pan/zoom control. When null, the scene uses a fixed viewport. Equality is checked by reference identity.

Inheritors

Constructors

Link copied to clipboard
constructor(renderOptions: RenderOptions = RenderOptions.Default, lightDirection: Vector = DEFAULT_LIGHT_DIRECTION.normalize(), defaultColor: IsoColor = IsoColor(33.0, 150.0, 243.0), colorPalette: ColorPalette = ColorPalette(), strokeStyle: StrokeStyle = StrokeStyle.FillAndStroke(), gestures: GestureConfig = GestureConfig.Disabled, useNativeCanvas: Boolean = false, cameraState: CameraState? = null)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
open override fun toString(): String