__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
Наилучшие результаты получаются с халфовским принципом построения матрицы лайтмапы - т.е. из матрицы исходной текстуры. Вероятно это происходит потому что некоторые моделлёры любят накладывать текстуру на треугольники, образующие квад реверсивно. Одна туда, другая обратно.
Впрочем я не моделлёр, это только догадка. И да, я протестировал пока что лишь одну модель, представленную на скрине. Здесь же выявилась резкая зависимость от texture_step. Так, например при texture_step 8 и 4 (как на скринах) всё отлично, а вот на разрешении 2 - лезут артифакты, хотя должно происходить обратное. Ну вот пока так, я еще не разобрался почему. Радиосити пока тоже нет.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша писал: Вероятно это происходит потому что некоторые моделлёры любят накладывать текстуру на треугольники, образующие квад реверсивно. Одна туда, другая обратно.
Наверное, такое происходит для экономии места на текстуре: зачем дважды рисовать одну и ту же деталь, если с обоих сторон она зеркально похожа?!
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
А зачем вообще брать UVшку текстуры для лайтмапы 0_о?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro писал: А зачем вообще брать UVшку текстуры для лайтмапы 0_о?
так получается меньше всего швов. Ворлд-люксели проблематично накладывать, в халфовских моделях все треугольники флипнуты и высота инвертирована. Получается какая-то хрень стабильно.
не забывай что иногда несколько координат одной UV могут перекрывать друг друга (используется для повторяющихся деталей), как в таком случае будет рендериться лайтмапа?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша писал: Второй момент - как посчитать непрямое освещение.
<...>
А теперь скажите мне как это применить на модельку у которой десятки тысяч маленьких полигонов? И сколько по времени это всё будет считаться? И самое главное сколько это займет памяти?
Аппроксимировать модельку более простой моделькой или массивом лайт-проб...
Может конечно глупость скажу, а что если интерполировать освещение на полигонах на которые не попали лучи к тем на которых всё ок? Типа как это делает DDS между пикселями.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro не всё можно интерполировать и получить при этом вменяемый результат. Интерполяция это всё-таки линейная штука, а между упрощенным мешом и его точной копией - явная нелинейность. Можно конечно сделать интегрирование, но мне что-то подсказывает, что по времени это будет сопоставимо с честными рассчётами. Я уже молчу что простое разблуривание лайтмапы увеличивает время работы вдвое. То есть даже обычный блур по гауссу - далеко не такая безобидная операция как кажется на первый взгляд. На той же ЧАЭС, к примеру, я подвёл некоторую статистику, так вот в самом минимальном разрешении лайтмапы мы имеем пять миллионов люкселей. И лайтмапа выглядит как говно, люксели в несколько раз больше игрока. Увеличения разрешения кратные, т.е. следующий шаг уже 25 миллионов люкселей.
Добавлено 09-06-2019 в 14:40:
Для тех кто от темы совсем далёк, поясню на простом примере. Линейная интерполяция - это нахождение среднего значения между двумя точками.
Ну очевидно между точками упрощённого меша и точками высокополигонального. И уже здесь нас поджидает первая (но далеко не единственная засада). Кол-во этих точек не совпадает - на грубой геометрии может быть одна точка, на точной - 10-15. Но прикол даже не в этом. Плотность точек нелинейна, она сильно зависит от детализации исходного меша, взять тот же чаэс, в упрощённом виде у нас здание четвёртого энергоблока в виде кубика из 12-и трианглов, на котором гордо возвывшается сверх-детализированная труба. Апроксимация, очевидно будет выглядеть как кубик с усечённым конусом. И вот перед нами фактически неразрешимая задача - перенести лайтмапу с этого конуса на детализированную копию трубы. Не пытайтесь решить эту задачу, она не имеет решения. Потому что быстрый перенос даст даже не просто отвратительные, а неверные результаты, а перенос с интегрированием и любые другими ухищрениями по времени рассчётов опасно приблизится к честному и весь огород станет под сомнение.
Добавлено 09-06-2019 в 14:42:
И это я еще не упомянул что лайтмапа по честной геометрии сама по себе - приближение и интерполяция, потому что её разрешение заведомо ниже, чем например у динамического освещения. То есть мы делаем приближение приближения.
Добавлено 09-06-2019 в 14:50:
Наверное я пока это дело оставлю. То что у меня получится в конечном итоге всё равно меня не устраивает по уровню качества, а совместимость мешает всё это реализовать другими методами.
Дядя Миша
Может тогда в самом компиляторе моделей сделать подготовку? Посути для халфы никто не делал моделей с лайтмапами, так что в этом вопросе совместимость впринципе и не нужна.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!