Тема: Странное.
Показать сообщение отдельно
Старый 23.10.2011, 17:45   #167
dsd
Мастер
 
Аватар для dsd
 
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений
(для 1,836 пользователей)
Ответ: Странное.


Кажется я сделал велосипед


Придумал генерацию лайтмапов на основе хейгтмапы.

1. Узнаем с какой стороны солнце.
2. Создаем массив из интегер с разрешением в 4 раза больше того массива в котором хранятся данные высот вершин. у меня это (8х32)х(8х32).
3. Узнаем направление источника света в виде 2д вектора. Строим еще один массив с разрешением равным количеству вершин. Далее смещаясь от угла куда первыми приходят лучи от света проверяем затенит ли вершина соседнюю (минимальный перепад высот который будет затенен вычисляется легко, т.к. дельтаикс и дельтаигрек между вершинами постоянны. Заполняем массив значениями. На свету эта вершина или нет.
4. Для мест где соседствуют затененные с освещенными вершины строим более подробные кусочки лайтмапы 4х4.
5. Учусь писать изображение не врайтпикселями, а сразу числами в жопег или бмп.
6. Немного извращений в пиксельном шейдере. И будет быстрая лайтмапа за время исполнения на цпу ~ 1 мс или меньше.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Reizel (23.10.2011)