Alex5 писал(а):Вообще, это - школьный курс. Хотя для плоскости, хоть для 3D. Сейчас в школах совсем плохо с математикой, да?
Сейчас учатся ради оценок а не ради знаний...
Zimaell писал(а):Есть точка А и точка В, нужно чтобы объект двигался от одной точки к другой за определенное время (к примеру ровно за 5 секунд реального времени), как вычислить скорость?
То есть чтобы при любых обстоятельствах на сцене объект проходил равномерно расстояние за 5 секунд (к примеру)...
Время вычисляй... Вспоминай математику (это не вышка)
Используется csharp
Vector3.Lerp(pointA,pointB, time);
пример интерполяции между двумя точками в кадрах
Используется csharp
public int interpolationFramesCount = 45; // количество кадров для интерполяции позиции от точки к точке
int elapsedFrames = 0;
void Update()
{
float interpolationRatio = (float)elapsedFrames / interpolationFramesCount;
Vector3 interpolatedPosition = Vector3.Lerp(Vector3.up, Vector3.forward, interpolationRatio);
elapsedFrames = (elapsedFrames + 1) % (interpolationFramesCount + 1);//обнуляем количество отрендереных фреймов
Debug.DrawLine(Vector3.zero, Vector3.up, Color.green);
Debug.DrawLine(Vector3.zero, Vector3.forward, Color.blue);
Debug.DrawLine(Vector3.zero, interpolatedPosition, Color.yellow);
}