Light class
Light source in the scene.
Constructors
- Light({String name = 'light', LightType type = LightType.directional, Color color = const Color(0xFFFFFFFF), double intensity = 1.0, Vector3? direction, double range = 0, double spotAngle = 0.5})
- Light.ambient({Color color = const Color(0xFF404040), double intensity = 0.3})
-
Creates a default ambient light.
factory
- Light.directional({Vector3? direction, Color color = const Color(0xFFFFFFFF), double intensity = 1.0})
-
Creates a default directional light (sun-like).
factory
- Light.point({Vector3? position, Color color = const Color(0xFFFFFFFF), double intensity = 1.0, double range = 10})
-
Creates a point light.
factory
Properties
- childCount → int
-
no setterinherited
-
children
→ List<
Node> -
no setterinherited
- color ↔ Color
-
getter/setter pair
- direction ↔ Vector3
-
Direction for directional/spot lights.
getter/setter pair
- hashCode → int
-
The hash code for this object.
no setterinherited
- intensity ↔ double
-
getter/setter pair
- localAabb → Aabb
-
Override to provide local-space bounding box.
no setterinherited
- localMatrix → Matrix4
-
Local transform matrix.
no setterinherited
- name → String
-
finalinherited
- parent → Node?
-
no setterinherited
- range ↔ double
-
Range for point/spot lights (0 = infinite).
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- spotAngle ↔ double
-
Spot angle in radians (for spot lights only).
getter/setter pair
- transform → Transform3D
-
finalinherited
- type → LightType
-
final
- visible ↔ bool
-
getter/setter pairinherited
- worldAabb → Aabb
-
Computes the AABB of this node in world space.
no setterinherited
- worldMatrix → Matrix4
-
World transform matrix (accumulated from root).
no setterinherited
- worldPosition → Vector3
-
World position extracted from world matrix.
no setterinherited
Methods
-
addChild(
Node child) → void -
inherited
-
calculateIntensity(
Vector3 surfacePoint, Vector3 surfaceNormal) → double - Calculates the light contribution at a given surface point and normal.
-
collectVisible(
) → List< Node> -
Collects all visible nodes in the tree.
inherited
-
findChild(
String name) → Node? -
Finds a child by name recursively.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onRender(
Canvas canvas, Matrix4 viewProjection) → void -
Override for custom rendering.
inherited
-
onTransformChanged(
) → void -
Called when any transform property changes.
inherited
-
onUpdate(
double dt) → void -
Override for custom per-frame logic.
inherited
-
removeChild(
Node child) → void -
inherited
-
removeFromParent(
) → void -
inherited
-
render(
Canvas canvas, Matrix4 viewProjection) → void -
Renders this node and children to the canvas.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
traverse(
void visitor(Node child)) → void -
Traverses the tree depth-first, calling visitor for each node.
inherited
-
update(
double dt) → void -
Called once per frame before rendering.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited