Форум: "Игры";
Текущий архив: 2004.07.18;
Скачать: [xml.tar.bz2];
ВнизКак показать скорость? Найти похожие ветки
← →
Goida © (2004-03-30 12:42) [0]Как это сделать? Я знаю, что скорость говрит о том, как быстро меняется координата объекта, т.е. при равноускоренном движении я буду прибавлять, например к Х, всё большие и большие интервалы:
Х--Х---Х----Х-----Х--...
Таким образом, фигура будет выводиться в точках Х. Получается прерывистое движение, а мне нужно плавное...
И еще, мне нужно отследить во время движения объекта его пересечение с другим объектом. Но если я каждый раз прибавляю увеличивающиеся интервалы, то мне становятся не доступны положения между точками Х. Как в этом случае проверить пересечение траекторий и отобразить их столкновение? Что мне нужно делать?
← →
Morok (2004-03-30 14:19) [1]x(t) - это координаты первого объекта в момент времени t
y(t) - это координаты второго объекта в момент времени t
h - шаг времени...
для нахожедения столкновения объектов самое простое это искать пересечение отрезков {y(t), y(t+h)} и {x(t), x(t+h)}
ну и вот собсна......
← →
Morok (2004-03-30 14:21) [2]прерывистое движение будет в любом случае, чтоб его сгладить, нужно шаг интегрирования сделать достаточно маленьким, а еще лучше адаптивным....
← →
Goida © (2004-03-30 14:22) [3]Т.е. перед каждым отображением объектов просчитать их пересечени и если нет, то нарисовать их там, где они должны быть. А если да, то определить их точку столкновения и нарисовать их там, а потом уже, расчитав их будущие траектории, продолжить путь. Так?
← →
Goida © (2004-03-30 14:23) [4]А что значит АДАПТИВНЫМ?
← →
Morok (2004-03-30 14:34) [5]это значит что шаг интегрирования меняется в зависимости от ситуации, просто искать точку пересечения, дает не очень хороший результат объекты могут вести себя не правильно напалзать друг надруга, мне просто лень описывать пример такой ситуации.
далее об адаптивном шаге если ты выяснил что объекты все же пересеклись то нужно отъехать на шаг назад( вернуть как бы старые координаты) и уменьшить шаг в двое и еще раз проверить пересечение и так далее пока точка пересечения будет не между промежутком (t) и (t+h) а в некоторой близости от района (t+h)
бр..........понятно нет?
а вообще читай "An Introduction to Physically Based Modelling" David Baraff
← →
Shopot © (2004-03-30 23:36) [6]Я делал так: за основу брал само быстро движущийся объект.
Выбирал его максимальную скорость такой, чтобы он не прыгал по
экрану. Скорость остальных объектов интерполировал относительно
этой скорости (а не относительно 0). Получалось, если присмотрется, что не этот разгоняется, а те замедляются. А выглядит хорошо, все плавно, без дерганий.
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2004.07.18;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.037 c