CameraComponent3D class
CameraComponent3D is a component through which a World3D is observed.
- Inheritance
-
- Object
- CameraComponent
- CameraComponent3D
Constructors
-
CameraComponent3D({double fovY = 60, Vector3? position, Vector3? target, Vector3? up, CameraProjection projection = CameraProjection.perspective, CameraMode mode = CameraMode.free, World3D? world, Viewport? viewport, Viewfinder? viewfinder, Component? backdrop, List<
Component> ? hudComponents}) - CameraComponent3D is a component through which a World3D is observed.
Properties
- backdrop ↔ Component
-
The backdrop component is rendered statically behind the world.
getter/setter pairinherited
- children → ComponentSet
-
The children components of this component.
no setterinherited
- debugColor ↔ Color
-
The color that the debug output should be rendered with.
getter/setter pairinherited
- debugCoordinatesPrecision ↔ int?
-
How many decimal digits to print when displaying coordinates in the
debug mode. Setting this to null will suppress all coordinates from
the output.
getter/setter pairinherited
- debugMode ↔ bool
-
Returns whether this
Component
is in debug mode or not. When a child is added to theComponent
it gets the same debugMode as its parent has when it is prepared.getter/setter pairinherited - debugPaint → Paint
-
The debugColor represented as a Paint object.
no setterinherited
- debugTextPaint → TextPaint
-
Returns a
TextPaint
object with the debugColor set as color for the text.no setterinherited - forward → Vector3
-
The forward direction relative to the camera.
no setter
- fovY ↔ double
-
The fovY is the field of view in Y (degrees) when the projection is
CameraProjection.perspective otherwise it is used as the near plane when
the projection is CameraProjection.orthographic.
getter/setter pair
- frustum → Frustum
-
no setter
- hasChildren → bool
-
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- isLoaded → bool
-
Whether this component has completed its onLoad step.
no setterinherited
- isLoading → bool
-
Whether the component is currently executing its onLoad step.
no setterinherited
- isMounted → bool
-
Whether this component is currently added to a component tree.
no setterinherited
- isMounting → bool
-
no setterinherited
- isRemoved → bool
-
Whether the component has been removed. Originally this flag is
false
, but it becomestrue
after the component was mounted and then removed from its parent. The flag becomesfalse
again when the component is mounted to a new parent.no setterinherited - isRemoving → bool
-
Whether the component is scheduled to be removed.
no setterinherited
- key → ComponentKey?
-
A key that can be used to identify this component in the tree.
finalinherited
-
loaded
→ Future<
void> -
A future that completes when this component finishes loading.
no setterinherited
- mode ↔ CameraMode
-
The current camera mode.
getter/setter pair
-
mounted
→ Future<
void> -
A future that will complete once the component is mounted on its parent.
no setterinherited
- parent ↔ Component?
-
Who owns this component in the component tree.
getter/setter pairinherited
- position ↔ Vector3
-
The position of the camera in 3D space.
getter/setter pair
- priority ↔ int
-
Render priority of this component. This allows you to control the order in
which your components are rendered.
getter/setter pairinherited
- projection ↔ CameraProjection
-
The current camera projection.
getter/setter pair
- projectionMatrix → Matrix4
-
The projection matrix of the camera.
no setter
-
removed
→ Future<
void> -
A future that completes when this component is removed from its parent.
no setterinherited
- right → Vector3
-
The right direction relative to the camera.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- target ↔ Vector3
-
The target in 3D space that the camera is looking at.
getter/setter pair
- up ↔ Vector3
-
The up direction relative to the camera.
getter/setter pair
- viewfinder ↔ Viewfinder
-
The viewfinder controls which part of the world is seen through the
viewport.
getter/setter pairinherited
- viewMatrix → Matrix4
-
The view matrix of the camera, this is without any projection applied on
it.
no setter
- viewport ↔ Viewport
-
The viewport is the "window" through which the game world is observed.
getter/setter pairinherited
- visibleWorldRect → Rect
-
The axis-aligned bounding rectangle of a world region which is currently
visible through the viewport.
no setterinherited
- world ↔ World3D?
-
Special component that is designed to be the root of a game world.
covariantgetter/setter pairoverride
Methods
-
add(
Component component) → FutureOr< void> -
Schedules
component
to be added as a child to this component.inherited -
addAll(
Iterable< Component> components) → Future<void> -
A convenience method to add multiple children at once.
inherited
-
addToParent(
Component parent) → FutureOr< void> -
Adds this component as a child of
parent
(see add for details).inherited -
ancestors(
{bool includeSelf = false}) → Iterable< Component> -
An iterator producing this component's parent, then its parent's parent,
then the great-grand-parent, and so on, until it reaches a component
without a parent.
inherited
-
canSee(
PositionComponent component, {World? componentWorld}) → bool -
Returns true if this camera is able to see the
component
. Will always return false ifinherited -
componentsAtLocation<
T> (T locationContext, List< T> ? nestedContexts, T? transformContext(CoordinateTransform, T), bool checkContains(Component, T)) → Iterable<Component> -
This is a generic implementation of componentsAtPoint; refer to those
docs for context.
inherited
-
componentsAtPoint(
Vector2 point, [List< Vector2> ? nestedPoints]) → Iterable<Component> -
An iterable of descendant components intersecting the given point. The
point
is in the local coordinate space.inherited -
contains(
Component c) → bool -
Whether the children list contains the given component.
inherited
-
containsLocalPoint(
Vector2 point) → bool -
Checks whether the
point
is within this component's bounds.inherited -
containsPoint(
Vector2 point) → bool -
Same as containsLocalPoint, but for a "global"
point
.inherited -
createComponentSet(
) → ComponentSet -
This method creates the children container for the current component.
Override this method if you need to have a custom
ComponentSet
within a particular class.inherited -
descendants(
{bool includeSelf = false, bool reversed = false}) → Iterable< Component> -
Recursively enumerates all nested children.
inherited
-
findGame(
) → FlameGame< World> ? -
Fetches the nearest
FlameGame
ancestor to the component.inherited -
findParent<
T extends Component> ({bool includeSelf = false}) → T? -
Returns the closest parent further up the hierarchy that satisfies type=T,
or null if no such parent can be found.
inherited
-
findRootGame(
) → FlameGame< World> ? -
Fetches the root
FlameGame
ancestor to the component.inherited -
firstChild<
T extends Component> () → T? -
Returns the first child that matches the given type
T
, or null if there are no such children.inherited -
follow(
ReadOnlyPositionProvider target, {double maxSpeed = double.infinity, bool horizontalOnly = false, bool verticalOnly = false, bool snap = false}) → void -
Makes the viewfinder follow the given
target
.inherited -
globalToLocal(
Vector2 point, {Vector2? output}) → Vector2 -
Converts from the global (canvas) coordinate space to
local (camera = viewport + viewfinder).
inherited
-
handleLifecycleEventAdd(
Component parent) → LifecycleEventStatus -
inherited
-
handleLifecycleEventMove(
Component newParent) → LifecycleEventStatus -
inherited
-
handleLifecycleEventRemove(
Component parent) → LifecycleEventStatus -
inherited
-
handleResize(
Vector2 size) → void -
inherited
-
lastChild<
T extends Component> () → T? -
Returns the last child that matches the given type
T
, or null if there are no such children.inherited -
localToGlobal(
Vector2 position, {Vector2? output}) → Vector2 -
Converts from the local (camera = viewport + viewfinder) coordinate space
to global (canvas).
inherited
-
moveBy(
Vector2 offset, {double speed = double.infinity}) → void -
Move the camera by the given
offset
.inherited -
moveForward(
double distance, {bool moveInWorldPlane = false}) → void -
moveRight(
double distance, {bool moveInWorldPlane = false}) → void -
moveTo(
Vector2 point, {double speed = double.infinity}) → void -
Moves the camera towards the specified world
point
.inherited -
moveToTarget(
double delta) → void -
moveUp(
double distance) → void -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onChildrenChanged(
Component child, ChildrenChangeType type) → void -
This method will be invoked from lifecycle if
child
has been added to or removed from its parent children list.inherited -
onGameResize(
Vector2 size) → void -
Called whenever the size of the top-level Canvas changes.
inherited
-
onLoad(
) → FutureOr< void> -
Late initialization method for
Component
.inherited -
onMount(
) → void -
Called when the component is added to its parent.
inherited
-
onParentResize(
Vector2 maxSize) → void -
Called whenever the parent of this component changes size; and also once
before onMount.
inherited
-
onRemove(
) → void -
Called right before the component is removed from the game.
inherited
-
pitch(
double angle, {bool lockView = false, bool rotateAroundTarget = false, bool rotateUp = false}) → void -
propagateToChildren<
T extends Component> (bool handler(T), {bool includeSelf = false}) → bool -
This method first calls the passed handler on the leaves in the tree,
the children without any children of their own.
Then it continues through all other children. The propagation continues
until the handler returns false, which means "do not continue", or when
the handler has been called with all children.
inherited
-
remove(
Component component) → void -
Removes a component from the component tree.
inherited
-
removeAll(
Iterable< Component> components) → void -
Removes all the children in the list and calls onRemove for all of them
and their children.
inherited
-
removeFromParent(
) → void -
Remove the component from its parent in the next tick.
inherited
-
removeWhere(
bool test(Component component)) → void -
Removes all the children for which the
test
function returns true.inherited -
render(
Canvas canvas) → void -
inherited
-
renderDebugMode(
Canvas canvas) → void -
inherited
-
renderTree(
Canvas canvas) → void -
Renders the world as seen through this camera.
inherited
-
roll(
double angle) → void -
setBounds(
Shape? bounds, {bool considerViewport = false}) → void -
Sets or clears the world bounds for the camera's viewfinder.
inherited
-
setLoaded(
) → void -
Used by the
FlameGame
to set the loaded state of the component, since the game isn't going through the whole normal component life cycle.inherited -
setMounted(
) → void -
Used by the
FlameGame
to set the mounted state of the component, since the game isn't going through the whole normal component life cycle.inherited -
setRemoved(
) → void -
Used by the
FlameGame
to set the removed state of the component, since the game isn't going through the whole normal component life cycle.inherited -
stop(
) → void -
Removes all movement effects or behaviors from the viewfinder.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
update(
double dt) → void -
This method is called periodically by the game engine to request that your
component updates itself.
inherited
-
updateTree(
double dt) → void -
This method traverses the component tree and calls update on all its
children according to their priority order, relative to the
priority of the direct siblings, not the children or the ancestors.
inherited
-
yaw(
double angle, {bool rotateAroundTarget = false}) → void
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
- currentCamera → CameraComponent3D?
-
no setter
Constants
- distanceFar → const double
- distanceNear → const double