Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Тело и ландшафт [Delphi, Windows]


марсианин ©   (2003-09-20 09:40:00) 

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

заранее thanx...


cyborg   (2003-10-15 11:15:00) [1]

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


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

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


Koreolis   (2003-10-15 09:49:00) [3]

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

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо