Тема: raycasting
Показать сообщение отдельно
Старый 28.12.2013, 18:37   #47
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: raycasting

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

Поэтому я считаю что нужно использовать обобщенный алгоритм пересечения луча и отрезков как я предложил выше.

Конечно ты можешь хранить карту в таком массиве, а перед расчетом лучей преобразовать ее в отрезки, но зачем лишние конвертации если можно сразу хранить и редактировать в отрезках.

Если ты уверен на 100%, что кроме стен под углом 45 тебе ничего не понадобиться, то можешь остановиться на этом варианте.

В любом случае тебе придется делать редактор, потому что править такой массив данных прямо в коде весьма утомительно.
(Offline)
 
Ответить с цитированием