Closed Sebanisu closed 4 years ago
In the last 7 or so frames of animation. Seems at some point CameraTarget == CameraPosition which results in NaN's in the Matrixes. Then the camera Target becomes negative z value for like 3 frames as it goes back to the value it was in like 3 more frames.
Okay so I dumped the raw short values from _cameraLookAt and in the last like 7 frames the starting point becomes 0 but the ending point stays the same.
(151, -1891, -1277) // start
(-453, -293, 260) //end
becomes
(0, 0, 0) // start
(-453, -293, 260) // end
seems the starting position for _cameraWorld is also set to 0. So what I think I'll do is if both are detected to be 0 I'll just assume camera animation is done.
public bool Done => CurrentTime >= TotalTime || (_cameraLookAtX[0], _cameraLookAtY[0], _cameraLookAtZ[0],_cameraWorldX[0], _cameraWorldY[0], _cameraWorldZ[0]) == (0, 0, 0, 0, 0, 0);
This seems to work well. Hopefully this isn't more complicated than that. :)
The camera near end or end of animation in battle it shakes. I almost think somehow the value of the one of two vectors changes or the fov before coming to rest.