Click or drag to resize
AB4D logo

FreeCameraAnimationNode Class

FreeCameraAnimationNode provides logic to animate a FreeCamera's CameraPosition, TargetPosition and UpDirection.
Inheritance Hierarchy
SystemObject
  Ab3d.AnimationAnimationNodeBase
    Ab3d.AnimationFreeCameraAnimationNode

Namespace: Ab3d.Animation
Assembly: Ab3d.PowerToys (in Ab3d.PowerToys.dll) Version: 11.1.8864.1045
Syntax
C#
public class FreeCameraAnimationNode : AnimationNodeBase

The FreeCameraAnimationNode type exposes the following members.

Constructors
 NameDescription
Public methodFreeCameraAnimationNode Constructor
Top
Properties
 NameDescription
Public propertyAnimationType Gets or sets a type of animation that is performed with this FreeCameraAnimationNode. Default value is LinearInterpolation.
Public propertyCamera FreeCamera that is animated. This value is set in the CameraAnimationNode's constructor.
Public propertyCameraPositionTrack Gets a PositionTrack that defines position key frames for CameraPosition property.
Public propertyFirstFrameNumber Gets the first defined frame number for this AnimationNode.
(Overrides AnimationNodeBaseFirstFrameNumber)
Public propertyLastFrameNumber Gets the last defined frame number for this AnimationNode.
(Overrides AnimationNodeBaseLastFrameNumber)
Public propertyTargetPositionTrack Gets a Position3DTrack that defines position key frames for TargetPosition property.
Public propertyUpDirectionTrack Gets a Vector3DTrack that defines Vector3D value key frames for UpDirection property.
Top
Methods
 NameDescription
Public methodGetDumpString GetDumpString virtual method can be overridden to provide detailed description of this object.
(Overrides AnimationNodeBaseGetDumpString)
Public methodGoToFrame GoToFrame method updates the objects animated with this animation node based on the specified frame number.
(Overrides AnimationNodeBaseGoToFrame(Double))
Top
Remarks

FreeCameraAnimationNode provides logic to animate a FreeCamera's CameraPosition, TargetPosition and UpDirection.

FreeCameraAnimationNode can perform a linear or spherical animation.

When AnimationType is set to LinearInterpolation (by default), then CameraPosition, TargetPosition and UpDirection are animated with moving lineary from one position or vector to another. This means that if you only animate CameraPosition, then the distance to the TargetPosition will change during animation. If you want to circle the camera around the target object and preserve the distance, then use the CameraAnimationNode.

To rotate the camera around TargetPosition, set the AnimationType is set to SphericalInterpolation. In this mode for each KeyFrames in CameraPositionTrack a Quaternion is created from UpDirection and calculated LookDirection. Then CameraPosition and UpDirection are animated using Quaternion.Slerp. In this mode it is also possible to lineary animate the TargetPosition and the distance of the Camera to the TargetPosition.

See Also