Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Argument out of range (index) error on DistanceToTF
Hi all, I've got a pretty simple setup: a single spline linked to a script, where at Start() I need to analyze the curvature of the spline, so I do:

float tf = 0f;
float distance = 0.0f;
while(tf < 1){
    tf = spline.DistanceToTF(distance);

Even though the Spline is correctly linked and instantiated, I get:

ArgumentOutOfRangeException: Argument is out of range.
Parameter name: index
At line 519 of CurvySpline.cs, where DistanceToSegment gets mSegment[0].  An mSegment.Count before that line returns 0.  Not sure what to try next.

There definitely seems to be a delay before you can access the spline for some reason.  If I stick

into an Update(), the first one gives a NullReferenceException but all subsequent ones work.  How should we work around this?

Ah. Just discovered  CurvySpline.IsInitialized.  My bad.
Yeah, Unity initialization order isn't predictable (unless you specify script priority in the settings), so you always have to wait until Spline.IsInitialized==true

Possibly Related Threads…
Thread Author Replies Views Last Post
Bug Got Position { Nan } error. Canis 3 316 08-20-2020, 06:27 PM
Last Post: _Aka_
  Error: Calling TeleportBy on a controller that is stopped jamesunity 5 622 07-13-2020, 12:28 PM
Last Post: _Aka_
  Playmaker error Lupp_ 7 2,037 01-08-2020, 12:49 PM
Last Post: _Aka_
  Generator Shape Extrusion Range/Lenght precision UsernameHed 3 2,136 07-10-2019, 10:21 AM
Last Post: _Aka_

Forum Jump: