Let me explain:
When you change RelativePosition or AbsolutePosition of a controller, it's TF is changed. The actual position is applied to the transform in the next call to Refresh() then. To get the resulting position immediately after changing the position, use the source spline with RelativePosition, e.g. SplineController.Spline.Interpolate(SplineController.RelativePosition).
Alternatively, add this to CurvyController.cs (currently untested, but should do the trick):
This will be added to 2.0.5
When you change RelativePosition or AbsolutePosition of a controller, it's TF is changed. The actual position is applied to the transform in the next call to Refresh() then. To get the resulting position immediately after changing the position, use the source spline with RelativePosition, e.g. SplineController.Spline.Interpolate(SplineController.RelativePosition).
Alternatively, add this to CurvyController.cs (currently untested, but should do the trick):
Code:
/// <summary>
/// Applies the current position to the transform
/// </summary>
/// <remarks>Use this to immediately set the transform after changing AbsolutePosition or RelativePosition!</remarks>
public virtual void Apply()
{
applyPositionAndRotation(mTF);
}
This will be added to 2.0.5