Reflection captures need to be rebuilt ue4 что это
Reflection captures need to be rebuilt ue4 что это
Самый топовый вопрос надпись в левом верхнем углу «Light Need to Rebuild» а также же надпись Preview на объектах. Как это убрать?
Примечание: это также относится к полосам на ландшафте.
2 способ. Найти все источники света на сцене и переключить параметр Mobility на Movable.
+ данного метода. Полностью избавляет от необходимости билдить освещение.
— данного метода. Не подходит для мобильных платформ. Гораздо больше требует ресурсов на расчёт освещения в реальном времени.
Примечание: при использовании 2 способа. Один раз всё равно нужно сбилдить освещение чтобы избавиться от статических теней оставшихся например от передвинутого в сторону стула.
Также на размытие влияет тип сглаживания TAA, можно включить FXAA и размытие сглаживания исчезнет, однако может появиться угловатость, которую маскировала TAA. Также ухудшаться отражения.
Имеется два меша, персонаж и его одежда, оба завязаны на общий скелет. Проблема в том что когда пытаюсь анимировать оба меша, то анимация работает не синхронно. Как можно правильно синхронизировать анимации для персонажа и его одежды?
Ответ: Для этого используется нода Set Master Pose. Вот несколько пунктов, которые нужно знать чтобы выполнить правильную синхронизацию анимаций:
1. Анимация должна быть только на основном меше (т.е на персонаже должна быть анимация, а на одежде нет).
2. Подключать ноду Set Master Pose на Тик не нужно. Она должна сработать один раз и этого будет достаточно. Применяйте её на Begin Play.
3. На ноду нужно подключать сначала меш (одежда) на который нужно передать анимацию, а на второй вход подключить основной меш (персонаж).
4. Иногда у второго меша (одежда) могут возникнуть проблемы с физикой. В таком случае рекомендуется выключать коллизию у этого меша или настроить коллизию так чтобы она игнорировала коллизию персонажа.
При спавне ИИ стоят на месте или висят в воздухе и не двигаются, что это может быть?
Ответ. По умолчанию во всех Character или Pawn установлена опция «Auto Possess AI» в режим «Placed in World».
Поменяйте режим на «Spawned» или лучше на универсальный режим «Placed in World or Spawned» и тода с ИИ будет всё в порядке.
Reflection captures need to be rebuilt ue4 что это
Есть 2 метода для отключения статического освещения:
Проектная спецификация: отключение статического освещения
Спецификация уровня: отключение статического освещения
Созданный ранее ассет импортирован в UE4
Когда вы создаёте вашу геометрию в программе для моделирования, по умолчанию стоят настройки, позволяющие видеть геометрию с двух сторон.
В UE4 невидимые полигоны не рендерятся для сохранения производительности.Это не всегда необходимо для получения дополнительных полигонов или плоскостей для рендера, так как в противном случае будут дополнительные «draw calls», которые могут вызвать уменьшение производительности.С несколькими инстансами это возможно не будет иметь значительного различия, но когда вы разрабатываете под определённую платформу или имеете лимит на «draw calls»- это преобретает значительный смысл.
Для понимания почему мы можем видеть только одну сторону нашей геометрии, мы должны открыть нашу геометрию в редакторе геометрии и включить отображение нормалей.Мы увидим зелёные линии указывающие направление полигона(имеется ввиду, что зелёная линия (нормаль) направлена перпендикулярно плоскости полигона). На изображении снизу, мы видим, что линии идут в направлении центра геометрии. Это направление которое даёт возможность увидеть геометрию.
Совет:Вы можете проверить направление нормалей в редакторе ue4 дабы увидеть, где именно у вас проблема.
Итак, у нас некоторые объекты с невидимыми сторонами, всё то нам нужно сделать, дабы это исправить:
Финальный результат
2. Создание двухстороннего материала
Engine Scalability Settings
Изображения снизу демонстрируют тени на дистанции при разных качествах теней указанных в настройках.
Low
Если у вас топовой ПеКа, но теней нет или с ними что-то не то, стоит сначала потыкать в этих настройках, прежде чем искать проблемы в других местах.Также редактор может занижать настройки если просадки фпс слишком велики.
Если вы не испытываете нужны в автоматическом подборе настроек, то вы можете выключить данную опцию, нажав на галочке внизу окошка.
Пересекающиеся Стационарные источники света
Если освещение будет запечено с любым стационарным светом который имеет перекрытия, будет выдано предупреждение с описанием ИС который является источником проблемы и последующими из-за этого последствиями.
Чтобы это исправить, нужно уменьшить количество ИС до четырёх или уменьшить радиус ИС которые пересекаются.
Если же у вас 3 ИС в сцене и появляется красный «Х»,то убедитесь, что у вас на сцене нет других ИС с огромным радиусом.Часто это происходит по тому, что Directional light переключён в режим Stationary, измените этот параметр на Статический или Динамический, дабы исправить проблему.
Динамическое (Подвижное) Освещение
Некорректное качество теней
Пример некорректного затенения геометрии.
Только! для Directional Light : Настройки Cascaded Shadow Maps:
Cascaded Shadow Maps настройки, в Directional Light Details
Dynamic Shadow Distance Movable: Расстояние от камеры, на котором тени будут исчезать.Значение 0 отключает их.
Dynamic Shadow Distance Stationary: Расстояние от камеры, на котором тени будут исчезать.По умолчанию стоит 0 для Directional Stationary Lights.
Num Dynamic Shadow Cascades: Количество каскадов на которое будет делится фрустум.Больше каскакодов- лучше качество, но и ресурсоёмкость возрастает.
Внимание! обязательно тыкните в ссылочку ниже, ибо наверняка не все знают что такое фрустум.
Num Dynamic Shadow Cascades Примеры:
Количество каскадов = 0
Количество каскадов = 1
Количество каскадов = 2
Количество каскадов = 3
Количество каскадов = 4
Cascade Distribution Exponent: Параметр регулирующий, на каком расстоянии от камеры распределение ближе (выше значение) или дальше (меньше значение) от камеры.Значение 1 означает, что переход будет пропорционален разрешению экрана.
Cascade Distribution Exponent Примеры:
Распределение = 1
Распределение = 2
Распределение = 3
Распределение = 4
Cascade Transition Exponent: Параметр регулирующий затухающий регион между каскадами. Низкое значение даст жёсткие грани, высокое- мягкие.
Cascade Transition Exponent Пример:
Эффект перехода
Cascade Transition Exponent
Жёсткая грань (низкое значение)
Смешивание граней (высокое значение)
Shadow Distance Fadeout Fraction: Параметр регулирующий на каком расстоянии тени будут затухать. Высокое значение ослабляет тени, в то время как низкое значение оставляет тени тёмными.
Shadow Distance Fadeout Fraction Пример:
Затухание = 0
Затухание = 1
Far Shadow Cascade Count: Coming in 4.8. More information to follow soon.
Far Shadow Distance: Coming in 4.8. More information to follow soon.
Регулирование Cascades для лучшего качества:
Просачивание теней и их точность, можно настроить с регулированием параметров указанных выше.Данный раздел покажет как лучше настроить параметры, чтобы получить наилучший результат в момент приближённой камеры и когда она отдаляется.Нахождение баланса для каждой отдельной игры- путь проб и ошибок без которого нельзя обойтись.
Это базовая сцена с одними лишь настройками по умолчанию:
Проблемные зоны, вид поближе
Сфокусируем внимание на минимизации просветов теней, в пределах разумного. По умолчанию, дистанция динамических теней установлена в 20000 юнитов.Данное значение не всегда обязательно и может быть изменено в большую или меньшую сторону.
В этой сцене настройки распределения, дистанции теней и количество каскадов просветов и их точность — на приемлемом уровне.
Также имеются ещё 2 настройки которые могут улучшить точность освещения.
Местонахождение этих настроек:
Те самые 2 настройки — Shadow Bias и Filter Sharpness
Shadow Bias — контролирует точность теней в сцене, но может выдать артефакты, если значение будет слишком низким.По умолчанию стоит значение 0.5 которое даёт хороший результат между точностью и эффективность.
Shadow Filter Sharpness — помогает скрыть некоторые артефакты при низких значениях и помогает создавать более резкие тени на краях.
Принимая во внимание то, что предыдущие настройки не были применены для текущих примеров, то ниже идут 2 примера с демонстрацией этих параметров ( Shadow Bias и Shadow Filter Sharpen):
Shadow Bias = 0, установлено слишком низкое значение и поэтому появляются артефакты
Решение данной проблемы- нахождение баланса между установкой не слишком низкого значения и подбором нужного значения в Cascaded Shadows
Shadow Filter Sharpen — делает края тени более резкими при высоких значениях.
Filter Sharpen = 1
Высокое значение параметра даёт резкий край тени, низкое- плавный край тени.
Почему мой подвижный источник света светится сквозь меш на дистанции?
Что получается в итоге.Камера в отдалении.
Чтобы понять что происходит, нужно учитывать, что движок использует глубину сцены, дабы определить, что будет видимым и что будет невидимым при рендере.Тут же мы имеем точечный источник света который испускает свет по всему радиусу до тех пор пока не встретит преграду или пока не столкнётся с границей сферы.
На картинке ниже вы можете наблюдать, как при отдалении камеры появляется halo эффект вокруг внешних граней меша из-за того, что свет не встречает преград на своём пути и исходит во всех направлениях.
Проход света сквозь меш
Вы можете заметить, что если вы на дистанции выберете/выделите такой меш, то освещение вернётся в нормальное состояние.Это объясняется тем, что вы сфокусировались в данный момент на данном меше.
Местонахождение Bounds Scale
Вы можете увидеть/визуализировать границы вашего меша перейдя во вьюпорте > Show > Advanced > Bounds
Увидите нечто такое:
Визуализированные границы объекта.
Если у вас есть вышеописанная проблема, но вы не хотите увеличивать размеры границ вашего меша из-за проблем с производительностью — попробуйте использовать Spotlight. Данный ИС пускает свет лишь в одном направлении, в отличии от point light который пускает свет по всем направлениям когда меш пропускает свет.Пусть это и возымеет некоторый положительный/требуемый эффект, но лишь методом проб и ошибок вы сможете добиться идеального решения.
Alternatively, you could forego a fully movable/dynamic light and use a stationary light that bakes a lightmap texture, which can also save on performance by having zero overhead during runtime for rendering shadow information.
Простенькая сцена с 3 статическими мешами.
В данной сцене 3 объекта : 2 стены и пол.Каждый объект имеет собственную тень, которая запечена в текстуру именуемую — лайтмапой (lightmap).Данная лайтмапа хранит в себе информацию о тенях/освещении, которые проецируются на эту текстуру.Она, как правило, создаётся художником в процессе создания ассета.
Что нужно знать про лайтмапы и как их эффективно создавать?
Другими словами, если я хочу увеличить разрешение тени отбрасываемой стеной с дверным проёмом,я буду настраивать не стену с дверным проёмом, а увеличу разрешение лайтмапы пола.Там куда проецируется тень и запекается в лайтмапу.
Теперь нам надо увеличить разрешение лайтмапы для некоторых мешей.Каждый меш имеет свою собственную лайтмапу, разрешение которой можно установить в details panel, когда наш меш выбран в mesh editor.
В данном примере рассматриваем разрешение лайпмапы пола, и только его.
Когда изменяете разрешение лайтмапы, используйте значения только кратные двум (32(по умолчанию),64,128,и т.д.) за исключением BSP представленных ниже.
Качество разрешения лайтмапы зависит от двух факторов : размер меша и размер UV шела на развёртке лайтмапы.
Разница лайтмапы BSP от статического меша в том, что значение лайтмапы BSP уменьшается в пользу лучшего качества.
Как и везде, при настройке лайтмапы есть свои ухищрения.Использование маленького меша позволит вам добиться лучшего качества для пола с низким разрешением лайтмапы, в то время как для большего меша вам понадобится увеличить разрешение лайтмапы, что в свою очередь затребует больше ресурсов.
Лог после запекания освещения
В данном случае вам надо установить 2й канал развёртки для вашей лайтмапы. В противном случае редактор будет использовать имеющуюся развёртку со всеми имеющимися ошибками.
Вы можете сделать это прямо в редакторе (картинка ниже) либо же с вашем 3d редакторе.
Оригинальные UV и результаты
Перекрывающиеся UVs
Результат в редакторе
Правильные UV и результаты
Заметьте, что финальные UV не имеют перекрытий что даёт теням/свету правильно запечся в текстуру.
Как сгенерировать UV в редакторе
Откройте меш, лайтмапу которого ваш нужно отредактировать.
Найдите панельку похожую на эту:
Static Mesh Editor Details Panel
Generate Lightmap UVs = удостоверьтесь в том, что данная галочка стоит.
Min Lightmap Resolution =Минимальный размер разрешения лайтмапы которое вы хотите.
Source Lightmap Index = Источник с которого генерируем лайтмапу
Destination Lightmap Index = Индекс развёртки которую мы хотим использовать в качестве лайтмапы.
Для большинства ассетов это достаточно хорошие настройки.Ключевой момент тут- выбор нужного индекса источника лайтмапы.Это UV который обычной используют для текстур.UV шелы в этой UV будут перепакованы, и не будут образовывать перекрытия поверхностей.Разрешение лайтмапы не влияет на качество развёртки, этот параметр влияет лишь на качество теней которые будут запекаться на эту развёртку.Если вы хотите проверить, какая у вас получилась развёртка после генерации, выберите UV channel 1 (показано на картинке):
Редактор статик мешей, выбор UV Channel
Теперь, после генерации лайтмап UV, осталось выбрать нужный id в настройках самого меша.
В редакторе меша перейдите в details panel, во вкладку “Static Mesh Settings”
В этой вкладке нужно установить разрешение лайтмапы которое нам нужно.
32 — дефолтное разрешение.для маленьких объектов оно вполне подходит, но чем больше объект, тем больше разрешение нужно указывать.
Удостоверьтесь, что значение кратно 2 (пример: 32, 64, 128, 256, и тд.)
В следующем параметре, удостоверьтесь, что индекс координат лайтмапы установлен на правильный канал.
Обычно для лайтмапы стоит значение 1.
Static Mesh Editor Details, Настройки лайтмапы
После использования данных настроек у вас есть правильное разрешение лайтмапы.
А вообще, лайтмапы лучше создавать прямо в 3d редакторе который вы используете, там вы сможете сделать идеальную развёртку для лайтмапы.Какой бы автогенерация не была, но ошибки будут всегда.
Если вы используете в своём пайплайне 3ds max или maya, посмотрите видео ниже, на них человек доступным языком объясняет как сделать отличную развёртку для лайтмапы.
Сказать автору видео «Спасибо» можете в виде like’ов и подписки на канал (там ещё много полезного видео на РУССКОМ языке (всё как вы любите)).
Когда вы используете статическое освещение, вам необходимо забилдить освещение чтобы увидеть результаты.Лайтмасс (Lightmass) используют для генерации и компиляции текстур, которые будут хранить информацию об освещении и тенях запечённую в лайтмапы.
По умолчанию, значение лайтмасс = 3 световых отскока, дабы получить GI (глобальная иллюминация/освещение) используя статическое освещение.Если необходимо изменить данное значение, то его можно найти во вкладке World Settings.
Lightmass World Settings по умолчанию
Global Illumination пример сцены.Одинарный источник света в 250 единиц (15w примерно)
Первый отскок занимает наибольшее время просчёта.Последующие отскоки будут меньше влиять на время просчёта, но и их влияние будет меньше заметно.
Хотите узнать больше про лайтмасс и глобальное освещение?
После постройки освещения получаются такие вот результаты:
Первоначальное освещение, дефолтные настройки
Первоначальное освещение, дефолтные настройки
В этом примере множество артефактов было исправлено за счёт повышения разрешения лайтмапы, но это также увеличивает потребление памяти.Это наиболее дружественное к производительности решение для непрямого освещения.
Настройки Lightmass изменяются тут :
Indirect Lighting Quality: увеличивает значение Global Illumination для получения требуемого качества.
Indirect Lighting Smoothness: фактор сглаживания применяемого в Indirect Lighting.
Осторожно! используя значение более чем 1 в Indirect Lighting Quality сильно увеличивает время билдинга
Вы также можете настроить количество отскоков непрямого освещения для получения требуемого результа:
количество отскоков непрямого освещения= 5
На данный момент настройки освещения установлены в достаточных значениях для сокрытия любых артефактов с текстурами. Но если нет возможности производить данные манипуляции, то можно просто поднять значение разрешение лайтмапы. Тут это значение изменили с 256 до 512 и получили такой вот результат.
Не изменённые косвенные параметры с разрешением лайтмапы = 1024.
В начале этого урока было показано, как с помощию разрешения лайтмапы в 1024 исправить некоторые артефакты.Но подкрутив некоторые настройки лайтмасс можно добиться лучшего результата с меньшим значением разрешения лайтмапы.
Хотя этот метод и показывает методы решения проблем с «загрязнением» лайтмап без использования света, следует помнить,что добавление в нужное место небольшого источника света, пусть и с низкой интенсивность, без теней- может дать результат получше.Методы описанные выше являются лишь отправной точкой, и лишь методом проб и ошибок вы можете добиться требуемого результата.
Что такое “Lighting needs to be rebuilt” в левом верхнем углу?
Если вы в режиме : игра в редакторе, симуляция, standalone, в левом верхнем углу видиту надпись Lighting needs to be rebuilt, это означает, что вы должны заново запечь/простроить освещение в вашей сцене.Данное явление происходит только при статическом и стационарном освещении.Динамическое освещение не требует билдить освещение.Данное сообщение появляется в случае если источник света был передвинут или модифицирован.
Сообщение об ошибке
Сравнение качества освещения
Настройки качества освещения.
Для данной демонстрации будет использоваться закрытая комната как и в предыдущем параграфе.Как исправить дырки в стенах и грязность лайтмап
Продакшн
В данном примере легко заметить разницу между качеством превью и продакшн. По сравнению с другими настройками, в продакшине исчезают недочёты/баги, которые имеют место быть в предыдущих качествах.Именно поэтому, если вы наблюдаете при запекании света ошибки/баги/артефакты, рекомендуется забилдить освещение на продакшине, и в том случае, если баги/ошибки не исчезли, идти в лайтмапы и проверять уже их на правильность.
На примере этой статуи заметить разницу между качествами не так уж и легко.Но разница есть.
Улучшение развёртки лайтмапы — залог качественных теней.
качество освещения статуи