MSA2
По скриншотам трудно понять, что там происходит, особенно учитывая, что 85% площади занято непроглядной тьмой :) В рендере слишком много переменных, чтобы починить по фотографии.
arte_de_mort
> По скриншотам трудно понять, что там происходит, особенно учитывая, что 85%
> площади занято непроглядной тьмой :) В рендере слишком много переменных, чтобы
> починить по фотографии.
Вот улучшил изображение:
Проблема с этими отодвинутыми от преграды тенями известна, описывается
как они высчитываются и почему такое происходит, даже название есть -
"peter panning", но конкретных решений я не нахожу. Читал документацию,
прочие разные материалы, но почему то методов борьбы с этим эффектом
не описывается. Можете посоветовать что-нибудь? Так или иначе любой
разработчик с этим сталкивается.
Я так понимаю речь про то, что тень начинается не сразу от меша, а с некоторым зазором? Просто сбивает с толку светлая полоса посреди картинки, и невозможно понять геометрию пространства :)
Но если так, я бы поигрался сначала с самим мешем, - cast shadow double sided, потом проверил UV меша и скорее всего разложил бы вручную UV2 под лайтмапу, затем сделал меш кубами (т.е. на картинке стены выглядят просто плоскостями - это стрёмный подход, я бы делал замкнутыми мешами), потом поставил бы кубик-шадоукастер, затем у источника света shadow bias, потом бы вообще попробовал изменить угол падения света, есть подозрение, что он слишком сильный, отчего тень может беситься. Ну и наконец lightmap parameters - это уже тяжёлая артиллерия, где надо закапываться.
arte_de_mort
Чтобы не засорять тему, продолжу вот здесь: https://gamedev.ru/code/forum/?id=240299
Итак, чистый тест показал - что все норм, тени есть ... а вот на моей реальной сцене реально глючит, не скидывает прошлые настройки, не реагирует на их изменение
если убрать, галочку "запекать" и запечь - то изменения появляются ... но эффект стабилен - просвечивает, при тех же настройках меша и источника свет ... интересно куда копать? (пересоздавать сцену как то не хочется :) )
Похоже надо включать Ambient occlusion
https://docs.unity3d.com/Manual/LightingBakedAmbientOcclusion.html
и еще регулировать на террайне ScaleInLightmap
upd. в итоге пришлось, создать проект по новой, и перенести ассеты - только тогда заработал реалтайм свет, а запеченный перестает глючить ... похоже это связано с переходом на новую версию
опс ... нашел - дело было в настройках качества, оказывается VeryLow, Low настроены так что тени не создаются, т.е. просвечиваются насквозь меши
В общем, инструкция для нубов должна быть такая:
1. Выставляем качество не ниже Medium
1.1. Если геймплейно играемся с тенями (бункер, пещеры, факелы/фонарик), то ShadowDistance надо бы выставить в 100+ (по умолчанию для Medium 20) - если не увеличить сможете увидеть в туннели свет через меш, через расстояние ShadowDistance - это просто не рассчиталась тень (если запекете, можно понизить)
1.2. Качество Hard тени режит глаза - буквально как тень с краем как пила, выставляем + Soft тень
2. Понижаем интенсивность "всепроникающего света" и отражения с 1 до 0.1 (получаем реальную ночь) (в Lightmapping Setting)
3. Источники света настраиваем в основном как Mixed, не забываем выставлять им "создающие тень" (по умолчанию не создают)
4. Террайн и статик геометрию надо бы запечь: помечаем как статик террайны и здания (там внимательно смотрим на ScaleInLightmap, если превышает регулируем размер атласа с умолчабельного 1024 до максимума 4096 ... по сути это ограничивает террайн размерами 2048x2048 - более крупные сцены будут охрененно долго считаться и будут не оптимальны) .. запекаем с Enlighten (на финале добавляем Ambient occlusion + финальный проход - порядка 4 часов спокойно ждем :) )
ну как то так - если грубо, но экономит пару дней руганины на юнити
Ну как то так с фонариком и в пещере :)
Зачотно!
Тема в архиве.