Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Пару вопросов по lightmaps (2 стр)

Пару вопросов по lightmaps (2 стр)

Страницы: 1 2 3 4 5 Следующая »
boolУчастникwww8 июня 201817:10#15
zombihello
Создавать - нормально. Главное потом лайтмапины эти упаковывай в один атлас.
zombihelloПостоялецwww8 июня 201817:46#16
bool
Спасибо огромное, вроде как с этим разобрался и теперь знаю, что иду по верному пути :)
Только подскажите, пожалуйста, какие существуют простые алгоритмы для добавления теней в лайты?
Ибо трассировка лучей очень долгая. Например, у меня есть демо-уровень и на нем в сумме где-то 1500 треугольников
и сие чудо запекается приличное время.
Panzerschrek[CN]Участникwww8 июня 201817:47#17
zombihello
> Подскажите, пожалуйста, лёгкий и простой метод который бы заменил трассировку
> лучей, ибо ждать три часа пока просчитаються все лайты не айс.
Лёгкого и простого, да так, чтобы ждать три часа не приходилось, не существует, ну или существует, но с существенной потерей качества.
zombihelloПостоялецwww8 июня 201817:48#18
Я понял, а в наше время для этого какие алгоритмы применяют, подскажите, пожалуйста, чтобы я знал в какую сторону копать.
Kurono267Постоялецwww8 июня 201818:32#19
zombihello
Для ускорение трассировки разного рода вариации BVH. Также хорошо помогает разбивка на тайлы и многопоток, если реализуешь трассировку сам.
Все это касается как CPU, так и GPU реализаций.

Правка: 8 июня 2018 18:33

g-contПостоялецwww8 июня 201823:55#20
Корректные тени без трассировки получить нереально. По крайней мере от прямого освещения. Надо оптимизировать саму трассу. Конечно если на каждый вызов в цикле перебирать 100500 треугольников, это будет очень долго.
Mr FПостоялецwww9 июня 20180:00#21
ты можешь взять что-нибудь из этого:
https://developer.nvidia.com/optix
https://gpuopen.com/gaming-product/radeon-rays/
https://blogs.msdn.microsoft.com/directx/tag/dxr/
и проблема быстрой трассировки лучей будет решена, останется только развлекаться )
zombihelloПостоялецwww9 июня 20180:49#22
Спасибо за ссылки, завтра как-то посмотрю.

Ребят, подскажите, пожалуйста, в чем может быть проблема?

+ Показать

MikleМодераторwww9 июня 20188:54#23
zombihello
> в чем может быть проблема?
Похоже, что карту теней нужно сдвинуть на полпикселя.
zombihelloПостоялецwww9 июня 201813:27#24
Mikle
> Похоже, что карту теней нужно сдвинуть на полпикселя.
Это тени в лайтмапах, а не в shadow maps. Простите, забыл уточнить. Или я чего-то не понял?
MikleМодераторwww9 июня 201813:52#25
zombihello
> тени в лайтмапах, а не в shadow maps
Понятно. И в том, и в другом случае, нужно учитывать, что при записи в текстуру пикселя с индексом, скажем, x-y, мы закрашиваем прямоугольник с центром в x+h, y+h, где h - половина размера пикселя. И в случае Light Maps, и в случае Shadow Maps, это можно учитывать сразу при создании текстуры, а можно вносить поправку в текстурные координаты.
zombihelloПостоялецwww10 июня 201817:58#26
Mikle
Спасибо большое, ваш совет помог (ну, на этой карте уж точно), но я столкнулся с одной неприятной проблемой.
Дело вот в чем. Тень идеально ложиться с light maps размером 512х512, а с размером ниже, например, 32х32, то
опять вылазят такие бока. Как я понял не хватает точности. Каким образом можно эту точность увеличить, ибо
хранить лайты огромных размеров, например, 512х512 это какое-то кощунство. И да, подскажите, пожалуйста, в чем
может быть проблема на третьем скриншоте. Вроде как мне кажется проблема с наложением лайта, но
проверил вычисление UV координат, то они такие же как в том уроке (я учитывал центр пикселя при просчете
лайтов). 

Скриншоты:

+ Показать

g-contПостоялецwww11 июня 201810:03#27
zombihello
прибавляй по пикселю к размерам каждой лайтмапы, типа охранного бордюра. И потом сдвинешь на полпикселя.
zombihelloПостоялецwww11 июня 201811:33#28
g-cont
Спасибо за совет, домой приду попробую так сделать.
К слову, баг на третьем скриншоте уже исправил. Я криво UV координаты считал (брались не те треугольники)
g-contПостоялецwww12 июня 201811:14#29
Лайтмапы неудобно накладывать на треугольники, уже говорили вроде.
Страницы: 1 2 3 4 5 Следующая »

/ Форум / Программирование игр / Графика

2001—2018 © GameDev.ru — Разработка игр