Показать сообщение отдельно
Старый 28.11.2013, 12:41   #95
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Clear Engine (Понятный движок)

Просто каждый кадр я задаю в каждый зарегестрированый на сцене шейдер информацию о источниках освещения
не знаю как в GL (в webgl вот нельзя), но в DX9 можно было назначать константы не просто "в шейдер" а в конкретный константный регистр на видяхе, так можно было бы 1 раз на старте рендера все константы для всех лайтов засунуть, а потом шейдеры их бы юзали или не юзали.
В DX10 и далее это ещё более удобно обёрнуто в constant buffers. Основная философия - разделить константы на группы по частоте обновления.


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

я делал для террейна нормали 8 битные ворлдспейс, смотрелось херово, пришлось юзать 16 бит хотя бы.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Mr_F_ за это полезное сообщение:
FREE MAN (28.11.2013), HolyDel (28.11.2013), pozitiffcat (28.11.2013)