Crystallize писал: Я не понимаю что такое эта Pull light from children. Это необходимость связанная с переходом на кудвачный формат BSP где фейсы не лежат на ноде? Или это просто решение принятое для конкретной имплементации осветительного алгоритма?
Это какая-то мутная хрень, которая вообще не нужна. Но в сорсе слишком много недоработок чтобы это трогать. Во всех движках, которые выросли с оглядкой на Кармака есть это идиотское разделение на сущности. Браши освещаем так, кривые Безье освещаем эдак, модели - вообще повертексно, радиосити для них собираем хаком. Всё это дерьмо помоему есть даже в четвертом Унреале, насчёт Юнити не знаю.
В Юнити всё кешируется в меш рендер, и через материал с нужным шейдером рисуется всё что хочешь. Т.е. за освещение отвечает шейдер, а не формат. Меш рендеру плевать на ваши сущности, это просто треульники загруженные в память. Чем то отдаленно ТриАпи из халфы напоминает. Туда их можно и самому писать, благодаря чему движок не прибит гвоздями к конкретному формату, в отличие от кармаковских костылей.
FiEctro писал: Т.е. за освещение отвечает шейдер, а не формат. Меш рендеру плевать на ваши сущности, это просто треульники загруженные в память.
В XashNT тоже всё превращается в треугольники, да. И эти же треугольники лайтмапятся. А отдельные сущности исчезают уже на этапе построения карты, хотя некоторые напоминания о них всё же остаются - как правило в материалах.
Лайтмапа с точки зрения это просто дополнительная UV. К которой уже обращается шейдер. Сами модели про лайтмапы ничего не знают. Таже история с вертексколором.
В Ксаше нет вертексколора. Ну точнее есть, но на инстансах не поддерживается. Проще говоря все инстансы покрасятся в один и тот же цвет. Хотя у меня за него вроде как никто и не спрашивал. Оно редко когда нужно.
Дядя Миша писал: В Ксаше нет вертексколора. Ну точнее есть, но на инстансах не поддерживается. Проще говоря все инстансы покрасятся в один и тот же цвет. Хотя у меня за него вроде как никто и не спрашивал. Оно редко когда нужно.
Я думал это вот это csm_color_t color;
Ты вроде говорил что он используется для освещения.
Дядя Миша писал: Это какая-то мутная хрень, которая вообще не нужна. Но в сорсе слишком много недоработок чтобы это трогать. Во всех движках, которые выросли с оглядкой на Кармака есть это идиотское разделение на сущности. Браши освещаем так, кривые Безье освещаем эдак, модели - вообще повертексно, радиосити для них собираем хаком. Всё это дерьмо помоему есть даже в четвертом Унреале, насчёт Юнити не знаю.
Как минимум он просто копирует освещение из дочерних ячеет totallight и emitlight на уровень выше. Немного играет с коэффициентами но без яркого света это вообще не заметно.
Правильно ли я понял что child->area в patch->child это площадь контакта лифа с нодой, площадь портала?
Дядя Миша писал: Это какая-то мутная хрень, которая вообще не нужна. Но в сорсе слишком много недоработок чтобы это трогать. Во всех движках, которые выросли с оглядкой на Кармака есть это идиотское разделение на сущности. Браши освещаем так, кривые Безье освещаем эдак, модели - вообще повертексно, радиосити для них собираем хаком. Всё это дерьмо помоему есть даже в четвертом Унреале, насчёт Юнити не знаю.
Ты что-то говорил что ты взял похожий алгоритм в XashNT. Интересно, насколько буквально. Например деление энергии на 65536. Или константный scales 0.5/pi. Или вот этих чилдренов. (Без них алгоритм вообще отказывается затухать.) Не уменьшилась ли яркость теней?