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

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

3D коридор


Филипп ©   (2003-07-14 09:20:00) 

В сети есть куча примеров 3D лабиринтов и комнот по которым можно ходить как почти в самомделишном DOOMe, но не где нет решения на тему, чтоб сквозь стены не ходить. Вопрос если ли стандартное решение, чтоб не ходить как призрок, а ощущать границы стен?


NailMan   (2003-07-14 14:35:00) [1]

В DOOMе было реализовано решение с помошью секторов. Это нечто вроде продвинутых матричных уровней аля Wolf3D.

Суто такова что карта в Думе была 2-хмерной, но разделена на "сектора", которые являлись замкнутыми многоугольниками.

Чтобы сектор мог быть трехмерным, ему давали 2 свойства:
Высота Пола и Высота Потолка.

минимальная карта - один замнкутый сектор с 3-мя вершинами(треугольник).

стена могла быть бесконечной высоты(точнее любой большой высоты) - если игрок находится в единственном секторе.
или конечной - внутри главного сектора делаем узкий сектор и снижаем высоту потолка до пола(или наоборот) или смыкаем на середине высоты или несмыкаем.

Подозреваю что коллишн делался на основе факта пересечения координат игрока+вектора направления с отрезком сектора и сравнивалось значения высот положения игрока с высотой сектора(или высотами) - если у сектора ниже, то игрок в него спускался, если выше - значит стенка.

Вышеприведенный алгоритм довольно примитивен, поэтому советую посмотреть сырцы дума.

ЗЫ: сам я думоподобщину не писал, но делал некоторые дополнительные уровни для DukeNukem`a(у него такая же организация карты).


Asteroid   (2003-07-14 12:27:00) [2]

Collision detection (проверка на столкновения). Пригодится http://www.gametutorials.com/download/OpenGL/CamWorldCollision_OGL.zip


pasha676   (2003-07-14 09:26:00) [3]

Не ошибусь если скажу, что есть куча стандартных решений.


Наверх

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