Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.18;
Скачать: CL | DM;

Вниз

Тело и ландшафт   Найти похожие ветки 

 
марсианин   (2003-09-20 09:40) [0]

Привет мастерам! Есть такая задача: нужно смоделировать поведение твердого тела (скажем там танка, трактора) на ландшафте. Ландшафт представляет собой сетку треугольников, а у тела есть набор точек. короче получить координаты точек опоры тела (и вектор нормали к поверхности) - не вопрос. а вот сам алгоритм каков? как силы опоры там распределить чтоб все было реалистично? чтоб и лежало и ударялось при падении....  как это делается по-человечески??

заранее thanx...


 
Koreolis ©   (2003-10-15 09:49) [1]

Не занимался этим специально, но мысли есть.
1) У объекта должен быть не набор точек, а прямоугольник(дно).
2) в области ладшафта(над которой находится обжэкт) ищем две самые высокие точки.
3) ложим дно прямоуКольника на эти две точки.
4) Затем момент: берём центр тяжести объекта(определённая точка на этом прямоугольнике).
5) Ищем третью по высоте точку, но не везде: только среди тех точек ландшафта, которые находятся по ту же сторону от прямой(см пункт №2) что и центр тяжести.
6) Теперь перемещаем дно объекта в пространстве так, чтобы оно касалось всех трёх найденных точек.(в пункте 2 и 5)

Естественно, плавности здесь не будет. Для стратегии оч даже подойдёт.(для реалистичной стратегии, т.к. учитывается центр тяжести) Для симулятора уже надо искать не только точки ландшафта, а ещё и точки пересечения отрезков ландшафта и отрезков дна.
PS на счёт плавности - танк просто будет прилипать к поверхности, т.е не булет зависаний над пропастью и т.д. Да и расстояние между точками ладшафта не должно превышать расстояние между точками дна объекта. Зато скорость гарантированна...


 
MeF88 ©   (2003-10-15 11:00) [2]

http://dev.dtf.ru/articles/read.php?id=406


 
cyborg ©   (2003-10-15 11:15) [3]

На delphigfx.mastak.ru есть пример, ездит танчик по ландшафту, смотри.



Страницы: 1 вся ветка

Текущий архив: 2004.04.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.028 c
1-1080803727
ORMADA
2004-04-01 11:15
2004.04.18
Variant


4-1075488257
stainer
2004-01-30 21:44
2004.04.18
loadbitmap не пашет!


14-1079961920
Kerk
2004-03-22 16:25
2004.04.18
Разомнем слегка мозги... :)


14-1080494051
nonename
2004-03-28 21:14
2004.04.18
Раб стол


7-1075920853
Rim
2004-02-04 21:54
2004.04.18
Параметры панели задач