Posted By: jenGs
Mathematical Problem - 11/19/13 23:24
Hi,
I am creating some sort of interactive slideshow.
So here is what I want to do:
I want to increase a value, for example a distance, to a specific value, in a given fixed(!) time.
So far my function works fine. But I need too add a third component with wich I have a lot of problems. I want to smooth the movement in and out. I have no problem to do that with a not fixed timeframe, but I need a fixed one.
My problem is, that I don't now how much time is gone on a specific position, because I use time_step to be framerate independent.
what I have (works fine):
What I want:
void MoveToOrbit(var distance, var time, var smoothTime)
I hope someone can help me with that.
Greetings,
Patrick
I am creating some sort of interactive slideshow.
So here is what I want to do:
I want to increase a value, for example a distance, to a specific value, in a given fixed(!) time.
So far my function works fine. But I need too add a third component with wich I have a lot of problems. I want to smooth the movement in and out. I have no problem to do that with a not fixed timeframe, but I need a fixed one.
My problem is, that I don't now how much time is gone on a specific position, because I use time_step to be framerate independent.
what I have (works fine):
Code:
var camDistance; // filled in another function void MoveToOrbit(var distance, var time) { var t = 0; while(t < time) { t += 16 * time_step; var factor = t / time; // actual position in timeframe var distDif = abs(camDistance - distance); //get distance var nDist = camDistance; if(distance < camDistance) { nDist -= distDif * factor; } else { nDist += distDif * factor; } //(...) here the nDist var is put to use, for cameraDistance wait(1); } // (...) here the camDistance value and the actual camera value is set to distance-functionparameter to correct small discrepancies }
What I want:
void MoveToOrbit(var distance, var time, var smoothTime)
I hope someone can help me with that.
Greetings,
Patrick