![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
OpenGL движок [Delphi, Windows]
ins3rt © (2005-05-24 22:08:00)Скачал с этого сайта Basic 3D Engine. Как сделать, чтобы камера не проходила скозь стены? Теоретическ понимаю как это сделать, а вот код прописать никак не могу. Кому не трудно напишите код пожалуйста.
P.S. Извините за такой вопрос я только неделю назад начал изучать OpenGL, так что еще мало чего знаю. =(
XProger (2005-06-01 17:58:00) [1]Комнаты делятся некими полигонами, в передлах этой комнаты расчёт столкновений не происходит. А полигон портала служит "экраном" для отрисовки соседних комнат...
Кефир87 (2005-06-01 17:44:00) [2]
> А имхо, просто порталы...
Можно подробнее?
OSokin (2005-05-31 18:50:00) [3]Кефир87 (26.05.05 17:59) [17]
XProger © (26.05.05 18:42) [18]
А имхо, просто порталы...
XProger (2005-05-26 18:42:00) [4]Кефир87, то что я дал - самый просто метод!
Проверка столкновения со сферой кушает ресурсов гораздо меньше нежели с БиБоксом.
Уровни Max Payne 2, впрочем как и 1 по сути - BSP (не исключено наличие PVS).
Для "НПК" расчёт ничем не отличается тем что для игрока... аналогичный спуск по дереву до листьев.
Кефир87 (2005-05-26 17:59:00) [5]
> XProger © (25.05.05 23:34) [16]
Вот ты намудрил. Если брать в пример то же Хорновский бэйсик три дэ энджин там все можно проделать гораздо проще! Имеется некий параллепипед (блин. во слово...), в центре игрок, камера (нужное подчеркнуть) и есть плоскости (читай квадраты) с которыми и надо проверять столкновение. Ну а как его проверять уже надо подумать... А еще важный момент! Я долго тупил, пока не запустил Max Payne 2 с параметром -developerkeys и не нажал на F4. Я вот дого думал. Это как же так! СТОЛЬКО надо ведь столкновений проверять, на каждом огромном уровне... А оказалось что уровень делится на комнаты в которых свои списки столкновений. Хотя я все еще не понимаю. Там ведь кроме игрока еще полно всяких НПК. Как же для них проверяются коллизии если они находятся не в текущей комнате... Наверное ответ на поверхности...
XProger (2005-05-25 23:34:00) [6]Суть метода Sphere VS World
Есть игрок (сфера) и мир (N тругольников)
Проверяем расстояние от всех треугольников до центра сферы.
Если растояние меньше радиуса то отодвигаем сферу на (R - Rast)*Normal
где R - радиус сферы, Rast - рсстояние до полигона, Normal - нормаль-вектор к текущему треугольнику
Nic87 (2005-05-25 23:19:00) [7]Мне вопрос тоже интересен, но тут надо поискать примеры с collision detection и хорошо их разобрать. Тут скорее не программирование, а геометрия. Код просто так вряд ли кто напишет, т.к. надо подумать как такое сделать.
XProger (2005-05-25 21:11:00) [8]"КОД"
ins3rt (2005-05-25 20:41:00) [9]Ну так че? Кто-нить код может сказать?
grouzd[E]v (2005-05-25 19:44:00) [10]Хех, а у меня наоборот - КАНИКУЛЫ <censored>!!!... скоро...
ins3rt (2005-05-25 17:21:00) [11]Счастливое детство кончилось с началом летней сессии =)))
П7 (2005-05-25 00:36:00) [12]А кто портит-то? Наоборот, делаем его ещё счастливее... (:
grouzd[E]v (2005-05-25 00:30:00) [13]Блин, народ, может хватит хаять ламеров?! Не портите людям счастливое детство!
П7 (2005-05-25 00:29:00) [14]ну вот и RTFM! (:
Yanis (2005-05-25 00:27:00) [15]
> Хе-хе! лол! Мне нравится 8)
Что такое "LOL" ты знаешь, а "RTFM" нет?
Кефир87 (2005-05-24 23:42:00) [16]
> Read The Fucking Manual
Хе-хе! лол! Мне нравится 8)
Servelat (2005-05-24 23:38:00) [17]RTFM Read The Fucking Manual прочти эту чёртову инструкцию ( ответ спеца на тривиальный назойливый вопрос в сети)
(c) Lingvo
Кефир87 (2005-05-24 23:34:00) [18]
> RTFM
Кстати (оффтоп) что это такое? 8)
Zer0 (2005-05-24 23:27:00) [19]раньше никак не мог понять, почему так много кричат "RTFM!"
теперь понимаю и поддреживаю.
Кефир87 (2005-05-24 23:14:00) [20]
> А теперь с неделю поучи аналитическую геометрию...
А причем тут? Разве сложно проверять не прошла ли некая точка через квадрат? У меня с этим проблем небыло... хм...