Текущий архив: 2003.03.03;
Скачать: CL | DM;
ВнизClipping, или как там Найти похожие ветки
← →
Ricks (2002-09-22 12:37) [0]Люди, помогите пожайлуста разобраться.
Я создаю карту в OpenGL таким образом:
имеется файл с набором координат (которые будут использоватся в glVertex3d), например:
-0.4 0.2 -3
0.4 0.2 -3
0.4 0.2 -2.8
-0.4 0.2 -2.8
-0.4 0.05 -3
0.4 0.05 -3
0.4 0.05 -2.8
-0.4 0.05 -2.8
итд, итп. Те имеется массив координат.
По карте я могу ходить (glTranslated(X, Y, Z)). Так вот собственно вопрос: как сделать так, чтобы не проходить сквозь стены???
← →
Sapersky_ (2002-09-27 00:51) [1]Обычно в таких случаях используют какой-нибудь метод разбиения пространства - BSP-tree или Octree. Или задаём уровень как набор выпуклых областей (для которых легко проверить, снаружи мы или внутри), соединённых порталами - это, соответственно, портальная технология. Оно и для ускорения рендеринга полезно. Хотя и сложно, надо признать... :(
Если проще - можно для каждого полигона проверять, не въехали ли мы в него - т.е. определить, пересекается ли отрезок ("теперешнее положение" - "следущее положение") с полигоном. По этому поводу см. http://geometryalgorithms.com/Archive/algorithm_0105/algorithm_0105.htm
Страницы: 1 вся ветка
Текущий архив: 2003.03.03;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.009 c