Controller working with Splines
|
bool | AllowDirectionChange [get, set] |
| Connections handling: When true, the controller will modify its direction to best fit the connected spline. Is used when ConnectionBehavior is equal to SplineControllerConnectionBehavior.FollowUpSpline, SplineControllerConnectionBehavior.RandomSpline, or SplineControllerConnectionBehavior.FollowUpOtherwiseRandom More...
|
|
SplineControllerConnectionBehavior | ConnectionBehavior [get, set] |
| Connections handling: What spline should the controller use when reaching a Connection More...
|
|
ConnectedControlPointsSelector | ConnectionCustomSelector [get, set] |
| Connections handling: A custom logic to select which connected spline to follow. Select a Script inheriting from SplineControllerConnectionBehavior. Is used when ConnectionBehavior is equal to SplineControllerConnectionBehavior.Custom More...
|
|
override bool | IsReady [get] |
|
bool | IsSwitching [get] |
| Gets whether the Controller is switching splines More...
|
|
override float | Length [get] |
| Gets the source's length More...
|
|
float | MaxAllowedDivergenceAngle [get, set] |
| Connections handling: Maximum allowed divergence angle in degrees. Considered when MaxAllowedDivergenceAngle is true. Is used when ConnectionBehavior is equal to SplineControllerConnectionBehavior.RandomSpline, or SplineControllerConnectionBehavior.FollowUpOtherwiseRandom More...
|
|
CurvySplineMoveEvent | OnControlPointReached [get, set] |
| Event raised when moving over a Control Point More...
|
|
CurvySplineMoveEvent | OnEndReached [get, set] |
| Event raised when reaching the extends of the source spline More...
|
|
CurvySplineMoveEvent | OnSwitch [get, set] |
| Event raised while switching splines. Splines switching is done via the SwitchTo method. More...
|
|
bool | RejectCurrentSpline [get, set] |
| Connections handling: Whether the current spline should be excluded from the randomly selected splines. Is used when ConnectionBehavior is equal to SplineControllerConnectionBehavior.RandomSpline, or SplineControllerConnectionBehavior.FollowUpOtherwiseRandom More...
|
|
bool | RejectTooDivergentSplines [get, set] |
| Connections handling: Whether splines that diverge from the current spline with more than MaxAllowedDivergenceAngle should be excluded from the randomly selected splines. Is used when ConnectionBehavior is equal to SplineControllerConnectionBehavior.RandomSpline, or SplineControllerConnectionBehavior.FollowUpOtherwiseRandom More...
|
|
virtual CurvySpline | Spline [get, set] |
| Gets or sets the spline to use More...
|
|
float | SwitchProgress [get] |
| The ratio (value between 0 and 1) expressing the progress of the current spline switch. 0 means the switch just started, 1 means the switch ended. Its value is 0 if no spline switching is in progress. Spline switching is done by calling SwitchTo More...
|
|
bool | UseCache [get, set] |
| Gets or sets whether spline's cache data should be used More...
|
|
float | AbsolutePosition [get, set] |
| Gets or sets the absolute position on the source, respecting Clamping More...
|
|
CurvyClamping | Clamping [get, set] |
| Gets or sets what to do when the source's end is reached More...
|
|
float | DirectionDampingTime [get, set] |
| If non zero, the direction vector will not be updated instantly, but using a damping effect that will last the specified amount of time. More...
|
|
bool | IgnoreDirection [get, set] |
| Should the controller's orientation ignore the movement direction? More...
|
|
bool | isInitialized [get] |
| Whether or not the controller is initialized. Initialization happens before first usage More...
|
|
abstract bool | IsReady [get] |
| Returns true if the controller has all it dependencies ready. More...
|
|
abstract float | Length [get] |
| Gets the source's length More...
|
|
bool | LockRotation [get, set] |
| Used only when OrientationMode is equal to None When true, the controller will enforce the rotation to not change More...
|
|
MovementDirection | MovementDirection [get, set] |
| Gets or sets the movement direction More...
|
|
MoveModeEnum | MoveMode [get, set] |
| Gets or sets the movement mode to use More...
|
|
float | OffsetAngle [get, set] |
| Gets or sets the angle to offset (-180° to 180° off Orientation) More...
|
|
bool | OffsetCompensation [get, set] |
| Gets or sets whether to compensate offset distances in curvy paths More...
|
|
float | OffsetRadius [get, set] |
| Gets or sets the offset radius More...
|
|
ControllerEvent | OnInitialized [get] |
| Invoked each time the controller finishes initialization More...
|
|
OrientationAxisEnum | OrientationAxis [get, set] |
| Gets or sets the axis to apply the rotation to More...
|
|
OrientationModeEnum | OrientationMode [get, set] |
| Gets or sets how to apply rotation More...
|
|
bool | PlayAutomatically [get, set] |
| Gets or sets whether to start playing automatically More...
|
|
CurvyControllerState | PlayState [get] |
| The state (Playing, paused or stopped) of the controller More...
|
|
float | Position [get, set] |
| Gets or sets the position on the source (relative or absolute, depending on MoveMode), respecting Clamping More...
|
|
CurvyPositionMode | PositionMode [get, set] |
| Gets or sets the position mode to use More...
|
|
float | RelativePosition [get, set] |
| Gets or sets the relative position on the source, respecting Clamping More...
|
|
virtual bool | ShowOffsetSection [get] |
| Whether the controller should display the CurvyController properties under the Offset section or not. More...
|
|
virtual bool | ShowOrientationSection [get] |
| Whether the controller should display the CurvyController properties under the Orientation section or not. More...
|
|
float | Speed [get, set] |
| Gets or sets the speed either in world units or relative, depending on MoveMode More...
|
|
float | TimeSinceLastUpdate [get] |
| When in Play mode, the controller update happens only in Update or Late Update of Fixed Update, so the time since last update is always equal to Time.deltaTime When in Edit mode, the controller update happens at various points, including the editor's update, so we compute the time since last update using a time stamp More...
|
|
virtual Transform | Transform [get] |
| Gets the transform being controlled by this controller. More...
|
|
float | UpDampingTime [get, set] |
| If non zero, the up vector will not be updated instantly, but using a damping effect that will last the specified amount of time. More...
|
|
bool | UseOffset [get] |
| Whether this controller uses Offsetting or not More...
|
|
|
void | CancelCurrentSwitch () |
| If is switching splines, cancels the current switch. More...
|
|
void | FinishCurrentSwitch () |
| If is switching splines, instantly finishes the current switch. More...
|
|
| SplineController () |
|
virtual void | SwitchTo (CurvySpline destinationSpline, float destinationTf, float duration) |
| Start a spline switch. Should be called only on non stopped controllers. More...
|
|
void | ApplyDeltaTime (float deltaTime) |
| Advances the controller state by deltaTime seconds, without waiting for the automatic per frame update. Can initialize or deinitialize the controller if the right conditions are met. More...
|
|
void | Pause () |
| Pauses the controller. To unpause it call Play() More...
|
|
void | Play () |
| Plays the controller. Calling this method while the controller is playing will have no effect. More...
|
|
void | Refresh () |
| Forces the controller to update its state, without waiting for the automatic per frame update. Can initialize or deinitialize the controller if the right conditions are met. More...
|
|
void | SetFromString (string fieldAndValue) |
| Event-friedly helper that sets a field or property value More...
|
|
void | Stop () |
| Stops the controller, and restore its position (and other relevant states) to its state when starting playing More...
|
|
void | TeleportBy (float distance, MovementDirection direction) |
| Teleports the controller to by a specific distance, while handling events triggering and connections. More...
|
|
void | TeleportTo (float newPosition) |
| Teleports the controller to a specific position, while handling events triggering and connections. More...
|
|
|
override float | AbsoluteToRelative (float worldUnitDistance) |
| Converts distance on source from absolute to relative position. More...
|
|
override void | Advance (float speed, float deltaTime) |
| Advance the controller and return the new position. This method will do side effect operations if needed, like updating some internal state, or trigerring events. More...
|
|
override void | ComputeTargetPositionAndRotation (out Vector3 targetPosition, out Vector3 targetUp, out Vector3 targetForward) |
| Gets the position and rotation of the controller, ignoring any damping or other interpolations More...
|
|
override Vector3 | GetInterpolatedSourcePosition (float tf) |
| Retrieve the source global position for a given relative position (TF) More...
|
|
override void | GetInterpolatedSourcePosition (float tf, out Vector3 interpolatedPosition, out Vector3 tangent, out Vector3 up) |
| Retrieve the source global position, tangent and orientation for a given relative position (TF) More...
|
|
override Vector3 | GetOrientation (float tf) |
| Retrieve the source global Orientation/Up-Vector for a given relative position More...
|
|
override Vector3 | GetTangent (float tf) |
| Gets global tangent for a given relative position More...
|
|
override void | InitializedApplyDeltaTime (float deltaTime) |
| Advances the controller state by deltaTime seconds. Is called only for initialized controllers More...
|
|
override float | RelativeToAbsolute (float relativeDistance) |
| Converts distance on source from relative to absolute position. More...
|
|
override void | RestorePrePlayState () |
|
override void | SavePrePlayState () |
|
override void | SimulateAdvance (ref float tf, ref MovementDirection curyDirection, float speed, float deltaTime) |
| Advance the controller and return the new position. Contrary to Advance, this method will not do any side effect operations, like updating some internal state, or trigerring events More...
|
|
virtual void | BindEvents () |
| Binds any external events More...
|
|
float | ComputeOffsetCompensatedSpeed (float deltaTime) |
| Returns the Speed after applying Offset Compensation OffsetCompensation More...
|
|
virtual void | Deinitialize () |
|
virtual void | Initialize () |
|
virtual void | UnbindEvents () |
| Unbinds any external events More...
|
|
virtual void | UserAfterInit () |
| Called after the controller is initialized More...
|
|
virtual void | UserAfterUpdate () |
| Called after the controller has updated it's position or rotation More...
|
|
|
MovementDirection | DirectionOnSwitchTarget |
| The controller's current Direction on the SwitchTarget. Its value is invalid if no spline switching is in progress. Spline switching is done by calling SwitchTo More...
|
|
CurvySplineMoveEvent | m_OnControlPointReached = new CurvySplineMoveEvent() |
|
CurvySplineMoveEvent | m_OnEndReached = new CurvySplineMoveEvent() |
|
CurvySplineMoveEvent | m_OnSwitch = new CurvySplineMoveEvent() |
|
CurvySpline | m_Spline |
| The spline to use. It is best to set/get the spline through the Spline property instead More...
|
|
float | SwitchDuration |
| The duration of the the current spline switching. Its value is invalid if no spline switching is in progress. Spline switching is done by calling SwitchTo More...
|
|
float | SwitchStartTime |
| The time at which the current spline switching started. Its value is invalid if no spline switching is in progress. Spline switching is done by calling SwitchTo More...
|
|
CurvySpline | SwitchTarget |
| The spline to which the controller is switching. Its value is invalid if no spline switching is in progress. Spline switching is done by calling SwitchTo More...
|
|
float | TfOnSwitchTarget |
| The controller's current TF on the SwitchTarget. Its value is invalid if no spline switching is in progress. Spline switching is done by calling SwitchTo More...
|
|
const string | ControllerNotReadyMessage = "The controller is not yet ready" |
| An error message used in various assertions More...
|
|
Vector3 | DirectionDampingVelocity |
| The damping velocity used in the Direction damping - See also
- DirectionDampingTime, Vector3.SmoothDamp(Vector3, Vector3, ref Vector3, float, float, float)
More...
|
|
Quaternion | LockedRotation |
| When OrientationMode is None, and LockRotation is true, this field is the value of the locked rotation, the one that will be assigned all the time to the controller More...
|
|
float | m_Position |
|
ControllerEvent | onInitialized = new ControllerEvent() |
|
MovementDirection | PrePlayDirection |
| The MovementDirection of the controller when started playing More...
|
|
float | PrePlayPosition |
| The position of the controller when started playing More...
|
|
CurvyControllerState | State = CurvyControllerState.Stopped |
| The state (Playing, paused or stopped) of the controller - See also
- CurvyControllerState
More...
|
|
Vector3 | UpDampingVelocity |
| The damping velocity used in the Up damping - See also
- UpDampingTime, Vector3.SmoothDamp(Vector3, Vector3, ref Vector3, float, float, float)
More...
|
|