Light needs to be rebuilt ошибка

fiber_smart_record

Разработка

январь — 15/21

В данной статье я расскажу как избавиться от ошибки с освещением (lights need to be rebuilt).  И так мы создали уровень и сделали освещение, но по каким либо причинам мы какой либо объект передвинули и у нас появилась данная ошибка. Сейчас мы ее будем исправлять. 
Для этого нажмите на Build и выберите Lights quality, в в нем самом уже выберите Production.
Затем нам нужно применить все эти изменения. Нажимаем на Build Lightning only
Ждем перестроения освещения, мы так же заметим, что чем больше объектов у нас на уровне, тем дольше это самое перестроение у нас будет происходить.  Ничего страшного в этом нет, это нормально. 
Так мы победили эту ошибку и научились перестраивать освещение на нашем уровне. Для тех кто не чего так и не понял, попрошу удалить Unreal Engine либо посмотреть видео, которое я еще и снял. Ну может я сам пишу так что ни кто не понимает. В общем смотрим. Так же ставим лайк и оставляем комментарии. Всем спасибо. 

thumb_up+3thumb_down

Правила

question_answerДобавление комментария
+ question_answer

Epic Developer Community Forums

Loading

fiber_smart_record

Разработка

январь — 15/21

В данной статье я расскажу как избавиться от ошибки с освещением (lights need to be rebuilt).  И так мы создали уровень и сделали освещение, но по каким либо причинам мы какой либо объект передвинули и у нас появилась данная ошибка. Сейчас мы ее будем исправлять. 
Для этого нажмите на Build и выберите Lights quality, в в нем самом уже выберите Production.
Затем нам нужно применить все эти изменения. Нажимаем на Build Lightning only
Ждем перестроения освещения, мы так же заметим, что чем больше объектов у нас на уровне, тем дольше это самое перестроение у нас будет происходить.  Ничего страшного в этом нет, это нормально. 
Так мы победили эту ошибку и научились перестраивать освещение на нашем уровне. Для тех кто не чего так и не понял, попрошу удалить Unreal Engine либо посмотреть видео, которое я еще и снял. Ну может я сам пишу так что ни кто не понимает. В общем смотрим. Так же ставим лайк и оставляем комментарии. Всем спасибо. 

thumb_up+2thumb_down

Правила

question_answerДобавление комментария
+ question_answer

Originally posted by Jacky

View Post

Select your trees(or whatever your object is) then hit F4. Look for an option called Use Precomputed Lighting(or something like that, can’t remember the exact phrase) and disable it. It may require you to build lighting again afterwards but it wont take as long this time since it wont bake the light for your trees.

Hmm still not working. I actually removed everything previous to when my light stopped working and it still wont work. I keep getting the message «The light build failed! See the log for more information!» with the following errors. The last two errors ive had since i started building my map but now im getting the lighting one.

Error Test room WorldInfo_3 Maps need lighting rebuilt
Error <None> <None> Paths need to be rebuilt
Warning Test room WorldInfo_3 Map should have KillZ set — set this to something sensible so that the player doesn’t fall forever

Here is a copy of the log but this is a pretty much another language to me since im still new, sorry for the length.

Log: Log file open, 01/05/13 10:37:32
Init: WinSock: version 1.1 (2.2), MaxSocks=32767, MaxUdp=65467
DevConfig: GConfig::Find has loaded file: ….EngineConfigConsoleVariables.ini
Init: Version: 10499
Init: Epic Internal: 0
Init: Compiled (64-bit): Dec 5 2012 16:19:36
Init: Changelist: 1426632
Init: Command line: editor
Init: Base directory: C:UDKUDK-2012-10BinariesWin64
[0000.25] Init: Computer: USER-PC
[0000.25] Init: User: USER
[0000.25] Init: CPU Page size=4096, Processors=4
[0000.25] Init: High frequency timer resolution =2.474023 MHz
[0000.25] Init: Memory total: Physical=3.8GB (3GB approx) Pagefile=7.6GB Virtual=8192.0GB
[0000.25] Log: Steam Client API Disabled!
[0000.28] Init: WinSock: I am USER-PC (127.0.0.1:0)
[0000.28] Init: Presizing for 0 objects not considered by GC, pre-allocating 0 bytes.
[0000.28] Init: Object subsystem initialized
[0000.32] Log: SystemSettings based on: SystemSettings
[0000.33] Log: Shader platform (RHI): PC-D3D-SM3
[0000.48] Log: PhysX GPU Support: DISABLED
[0000.49] Init: Initializing FaceFX…
[0000.49] Init: FaceFX 1.7.4 initialized.
[0003.14] Init: Finished loading startup packages in 2.47 seconds
[0003.15] Log: 81833 objects as part of root set at end of initial load.
[0003.15] Log: 0 out of 0 bytes used by permanent object pool.
[0005.30] Log: Supported Consoles:
[0005.30] Log: IPhone
[0005.30] Log: Mac
[0005.30] Log: PC
[0005.30] Log: Initializing Engine…
[0005.42] Log: Encountered missing default brush — spawning new one
[0005.42] Init: UEngine initialized
[0005.42] Log: Primary PhysX scene will be in software.
[0005.42] Log: Creating Primary PhysX Scene.
[0005.44] Init: Transaction tracking system initialized
[0005.45] Log: Can’t find edit package ‘OnlineSubsystemGameSpy’
[0005.45] Log: Can’t find edit package ‘OnlineSubsystemLive’
[0006.13] Init: XAudio2 using ‘Speakers (Conexant CX20671 SmartAudio HD)’ : 2 channels at 44.1 kHz using 16 bits per sample (channel mask 0x3)
[0006.15] Init: XAudio2Device initialized.
[0006.16] Init: Client initialized
[0006.17] Init: Editor engine initialized
[0006.28] Log: Initializing Engine Completed
[0006.28] Log: >>>>>>>>>>>>>> Initial startup: 6.28s <<<<<<<<<<<<<<<
[0006.36] Cmd: MODE MAPEXT=udk
[0006.51] SourceControl: Source Control disabled in UDKEditorUserSettings.ini. [SourceControl] has Disabled=True
[0010.13] Cmd: MAP LOAD FILE=»….EngineContentMapsTemplatesTemplate _MidDay.umap» TEMPLATE=0
[0010.38] Log: Encountered missing default brush — spawning new one
[0010.62] Log: New File, Existing Package (Package Untitled_2, Package template_midday)
[0010.71] Log: — Checking Building LODs
[0010.72] Log: Primary PhysX scene will be in software.
[0010.72] Log: Creating Primary PhysX Scene.
[0010.72] Log: Finished looking for orphan Actors (0.006 secs)
[0010.73] Cmd: MAP CHECKDEP DONTCLEARMESSAGES DONTDOSLOWREFCHECK
[0010.73] Log: TIMER ALL OF INIT : [10.232741]
[0018.28] Cmd: MAP LOAD FILE=»C:UDKUDK-2012-10UDKGameContentMapsTest room.udk» TEMPLATE=0
[0018.33] Log: Encountered missing default brush — spawning new one
[0018.80] Log: — Checking Building LODs
[0018.82] Log: Primary PhysX scene will be in software.
[0018.82] Log: Creating Primary PhysX Scene.
[0018.82] Log: Finished looking for orphan Actors (0.004 secs)
[0018.85] Cmd: MAP CHECKDEP DONTCLEARMESSAGES DONTDOSLOWREFCHECK
[0039.49] Cmd: MODE WIDGETMODECYCLE
[0041.17] Cmd: MODE WIDGETMODECYCLE
[0058.62] Log: LIGHTMASS: Quality level is 0
[0058.66] Log: Deterministic lighting is ENABLED
[0058.66] Log: Lighting will be slower to complete…
[0061.58] Log: Running Lightmass w/ Deterministic Lighting ENABLED
[0061.58] Log: Running Lightmass w/ ImmediateImport mode ENABLED
[0061.58] Log: Running Lightmass w/ ImmediateProcess mode ENABLED
[0061.58] Log: Running Lightmass w/ Sorting mode ENABLED
[0061.58] Log: Running Lightmass w/ Mapping paddings ENABLED
[0061.58] Log: Running Lightmass w/ Mapping debug paddings DISABLED
[0061.60] Log: Swarm launching: ..Win64UnrealLightmass.exe A3FE33DD4E4A6917E21949B48A45C1EE
[0061.62] Log: LIGHTMASS: Writing scene settings: Quality level 0 (0 in INI)
[0061.62] Log: FLightmassExporter::WriteSceneSettings: No DominantDirectionalLight was found, EnvironmentLightTerminatorAngleFactor is set to a default one.
[0061.78] Log: Swarm will be allowed to distribute this job
[0062.64] Log: *** CRITICAL ERROR! Machine: USER-PC
[0062.64] Log: *** CRITICAL ERROR! Logfile: UnrealLightmass_USER-PC_50E8FCB847D07731A75A9C8E366BF273.log
[0062.64] Log: *** CRITICAL ERROR! Crash report:
[0062.69] Log: Job has failed! Job executable didn’t exit cleanly. Exit code: 1

I have rebuilt my lights several times but i keep getting this error. I can open a new map and i can build a light just fine but for some reason its this map. Its a very simple map that i just started building so its not like it to complex to handle. I was able to do lighting for a while but for some reason all my static meshes were solid black. Then my pc crashed (thankfully after i saved) and when i booted it back up my static meshes were ok but my light would no longer work. I can use a Dominant directional light and it build that but due to obvious reasons i get really bad shadows. I even tried adding lights after that to get rid of the shadows but it wont build it unless its a directional. I can however built light when i uncheck use lightmass but then i no longer have light coming into my building like it does when i build it with lighmass. I do have a lightmassimportant volume box and ive tried it without and they both yeild the same results. Before i deleted everything previous i tried unchecking that box and it didnt seem to work. i can win for losing. Im running windows 64 bit with the latest version of udk so if you (or andyone reading this) can figure out what going wrong here it would be very much appreciated.

Ошибки движка и компиляции

#

Аватара пользователя

Пользователь

Сообщения: 1297

Zhernovoy Sergey писал(а):

GeEXPone писал(а):

Как это решить ????? (unreal engine 4 запуск программы невозможен, так как на компьютере отсутствует api-ms-win-crt-runtime-l1-1-0.dll)

В этой теме есть ответ,причем всего двумя страницами ранее, не искал ответа значит, вообще никак, даже через гугл первым бы постом наткнулся на решение

Зачем, он же знает, что за него ты (или еще кто) поищешь. ) Сейчас вот это поможете ему решить, а потом он ММО 7го поколения накодит.

_________________
Мои работы.
Youtube Channel
Форум по геймдеву.

Аватара пользователя

Пользователь

Сообщения: 2

Когда я нажимаю на кнопку Build, у меня вылетает ошибка: UnrealLightmass.exe — Ошибка приложения. Ошибка при запуске приложения (0xc000007b). Для выхода из приложения нажмите кнопку «ОК».
Так же, появлялось окно Message Log, и там мне писало Ошибку WorldInfo_0 Maps need lighting rebuilt. {Docs}
Map check complete: 1 Error(s), 0 Warning(s), tool 153.19ms to commplete
Что делать? Может тут всё очевидно, но я к сожалению не знаю английский.

Аватара пользователя

Пользователь

Сообщения: 549

Аватара пользователя

Пользователь

Сообщения: 474

i_remake_game писал(а):

https://gyazo.com/613421e3356e88532b21ac683968a6e0

у меня такое, пытаюсь скопилировать движoк с трускаем

Ошибки компиляции с пометкой «OtherCompilation error(5)» говорят что студия не даст тебе внятного ответа в чем проблема , компилируй через эдитор , он внятнее указывает в чем проблема , это все из-за вяских макросов и тд.
PS: ставь английский язык в студии ,а то никогда не найдешь нужного тебе ответа с логом ошибки.

Аватара пользователя

Пользователь

Сообщения: 474

Linex писал(а):

Когда я нажимаю на кнопку Build, у меня вылетает ошибка: UnrealLightmass.exe — Ошибка приложения. Ошибка при запуске приложения (0xc000007b). Для выхода из приложения нажмите кнопку «ОК».
Так же, появлялось окно Message Log, и там мне писало Ошибку WorldInfo_0 Maps need lighting rebuilt. {Docs}
Map check complete: 1 Error(s), 0 Warning(s), tool 153.19ms to commplete
Что делать? Может тут всё очевидно, но я к сожалению не знаю английский.

Наверное появлению ошибки что то предществовало ,добавление какого то актора или материала ,или изменение конфигурации , вспоминай ,само по себе ничего «не ломается»

Аватара пользователя

Пользователь

Сообщения: 549

Zhernovoy Sergey писал(а):

i_remake_game писал(а):

https://gyazo.com/613421e3356e88532b21ac683968a6e0

у меня такое, пытаюсь скопилировать движoк с трускаем

Ошибки компиляции с пометкой «OtherCompilation error(5)» говорят что студия не даст тебе внятного ответа в чем проблема , компилируй через эдитор , он внятнее указывает в чем проблема , это все из-за вяских макросов и тд.
PS: ставь английский язык в студии ,а то никогда не найдешь нужного тебе ответа с логом ошибки.

установил англ пакет ещё вчера. визуал студио не видит его…

как компилить через едитор?

переустановил анг пашет. с тру скай не знакомы? я по инструкции пытаюсь скомпилить с новой 4.11. но там в 4.11 рендер переписали… без лога не узнаю

Аватара пользователя

Пользователь

Сообщения: 474

влом открывать эдитор , вот картинка из гугла ,студия должна быть открыта с проектом( что бы хот релоад был и линковка была эдитора со студией):
Изображение

Аватара пользователя

Пользователь

Сообщения: 549

Zhernovoy Sergey писал(а):

влом открывать эдитор , вот картинка из гугла ,студия должна быть открыта с проектом( что бы хот релоад был и линковка была эдитора со студией):
Изображение

окей, сегодня докомпилю чистую версию движка и завтра попробую. я просто не понял в каком едиторе

Аватара пользователя

Пользователь

Сообщения: 2

Zhernovoy Sergey писал(а):

Linex писал(а):

Когда я нажимаю на кнопку Build, у меня вылетает ошибка: UnrealLightmass.exe — Ошибка приложения. Ошибка при запуске приложения (0xc000007b). Для выхода из приложения нажмите кнопку «ОК».
Так же, появлялось окно Message Log, и там мне писало Ошибку WorldInfo_0 Maps need lighting rebuilt. {Docs}
Map check complete: 1 Error(s), 0 Warning(s), tool 153.19ms to commplete
Что делать? Может тут всё очевидно, но я к сожалению не знаю английский.

Наверное появлению ошибки что то предществовало ,добавление какого то актора или материала ,или изменение конфигурации , вспоминай ,само по себе ничего «не ломается»

Но у меня проект абсолютно пустой. Я даже пересоздавал пару раз. Я конечно устанавливал пару бесплатных паков с Marketplace, но у меня вроде всё работало. Просто на следующий день начала появляться эта ошибка. Я нечего не изменял в конфигурации, мне это не нужно пока. Есть еще какое нибудь решение?

Аватара пользователя

Пользователь

Сообщения: 6

При запуске проекта в редакторе, иногда комп зависает и вырубается комп.
Думал БСОД, но дамп не создается и комп не перегружается. Продолжает работать(ну кулеры крутятся), монитор черный и лампочка мигает.
Только ресет помогает.
Есть подозрение на драйвера видеокарты. В играх бывает вылетают дрова. Но в логах ничего толкового найти не могу.
Windows 10, ATI R9 290, Mem: 16GB CPU: AMD FX 8350


Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

Why is UE5 telling me to build my lighting when I’m using Lumen?

I’m very new to Unreal so forgive me if this is a stupid question. I was under the impression that using Lumen is an alternative to the standard lighting system which requires building the lights. But when I’m lighting my scene, it comes up with a message that says «LIGHTING NEEDS TO BE REBUILT.» And then when I build the lighting I get an error that my lightmap UV’s are overlapping. I can’t figure out how to fix the lightmap, which is why I switched to Lumen in the first place. I thought Lumen allowed me to bypass the lightmaps entirely, so I’m confused why this is still a factor.

Почему мои тени чёрные?

По правилам освещения, чёрные тени обычно используются, если у вас нет заполняющего света.Это часто происходит по тому, что окружающая среда имеет единично направленный поток света, представленный как солнце.UE4 построен на методе ,обеспечивающем эффективное заполнение светом окружающего мира, мы называем его SkyLight.Немного про Skylight.
Без Skylight

111

С Skylight

111

Когда вы сконвертируете свою BSP геометрию в static mesh , вы увидите данный результат:

111

Не беспокойтесь, это нормально. Так как мы только что сконвертировали наш BSP в Static mesh, мы должны убедится в правильности назначенного канала для lightmap.Для того чтобы это было делать проще, lightmap автоматически генерируется когда вы конвертируете BSP.Единственное что вам осталось сделать- это выбрать нужный канал и разрешение.

  • Для того что бы это сделать — откройте новосозданный Static Mesh. Взгляните на details panel, расположенную справа в Static Mesh Settings.
  • Тут вам надо установить Lightmap Resolution. Это может быть любое значение кратное двум (к примеру, 32, 64, 128, прочее). Это будет разрешением вашей lightmap текстуры.Высокое значение разрешения lightmap даст лучший результат, но в то же время займёт больше памяти и времени просчёта.
  • Далее, установите Lightmap Coordinate Index в 1 (это наиболее используемый канал для lightmap ).Это положение вашей lightmap UV где нет наложения поверхностей
  • Если вы хотите увидеть как ваша lightmap выглядит, вы можете кликнуть по кнопке для UV в тулбаре и выбрать UV Channel 1 из выпадающего списка.

111

Что если я не хочу иметь lightmaps или моя игра в них не нуждается
Бывают моменты когда игра не нуждается в lightmaps, т.к. оптимизирована для использования лишь динамического освещения.Опция которая отключает lightmaps , расположена в world settings и проверяется пунктиком “Force No Precomputed Lighting”. Когда освещение перестроится- все ранее запечённые lightmaps будут удалены.

Есть 2 метода для отключения статического освещения:

Проектная спецификация: отключение статического освещения

  • Menu > Edit > Project Settings
  • Перейдите в Rendering Tab > Lighting Tab
  • Снимите галочку с «Allow Static Lighting»
  • Для восстановления полной функциональности данной опции вам необходимо перезапустить редактор

Спецификация уровня: отключение статического освещения

  • Откройте World Settings
  • Перейдите в Lightmass Tab .
  • Снимите галочку с «Force No Precomputed Lighting»
  • Вам будет предупреждение, нажмите ОК
  • Заново просчитайте освещение для полного обнуления ранее запечённого освещения




На данном изображении вы можете наблюдать ассет ,который был сделан в 3ds max: плоскость и трубу.

Созданный ассет в 3ds max

В редакторе всё выглядит отлично, но когда я импортирую это в ue4, часть геометрии пропадает.
Так что же происходит, ведь данное явление не является нормой?
На самом деле- это нормальное явление.Если смотреть на плоскость, то она рендерится как и положено, но вот её задняя часть, как и ближние (к камере -прим.ред.)полигоны трубы- не рендерятся.

Созданный ранее ассет импортирован в UE4

Когда вы создаёте вашу геометрию в программе для моделирования, по умолчанию стоят настройки, позволяющие видеть геометрию с двух сторон.
В UE4 невидимые полигоны не рендерятся для сохранения производительности.Это не всегда необходимо для получения дополнительных полигонов или плоскостей для рендера, так как в противном случае будут дополнительные «draw calls», которые могут вызвать уменьшение производительности.С несколькими инстансами это возможно не будет иметь значительного различия, но когда вы разрабатываете под определённую платформу или имеете лимит на «draw calls»- это преобретает значительный смысл.

Для понимания почему мы можем видеть только одну сторону нашей геометрии, мы должны открыть нашу геометрию в редакторе геометрии и включить отображение нормалей.Мы увидим зелёные линии указывающие направление полигона(имеется ввиду, что зелёная линия (нормаль) направлена перпендикулярно плоскости полигона). На изображении снизу, мы видим, что линии идут в направлении центра геометрии. Это направление которое даёт возможность увидеть геометрию.

Совет:Вы можете проверить направление нормалей в редакторе ue4 дабы увидеть, где именно у вас проблема.

Итак, у нас некоторые объекты с невидимыми сторонами, всё то нам нужно сделать, дабы это исправить:

1.(ТОЛЬКО ДЛЯ СТАТИКИ) Двухстороннее освещение

  • Включить данную опцию в details panel для выделенного ассета в Level Viewport.
  • С включённой данной опцией когда свет построится ,lightmass будут считать что освещение для геометрии запечено.Это будет давать тень, даже если мы не можем видеть её с такого ракурса.Это не работает для подвижных/днамических источников света, т.к. Unreal Engine 4 использует отложенный рендер.

Details Panel ассета в Level Viewport

Финальный результат

2. Создание двухстороннего материала

  • Откройте редактор материалов и слева в details panel выберите опцию “Two-sided”.
  • Сохраните и скомпилируйте ваш материал, чтобы увидеть результат.
  • Данный метод может быть использован с Статическим/Стационарным/Подвижным освещением.Теперь материл рендерит плоскости, которые ранее не были видны.

Внимание! данный способ добавляет draw calls.
Как упоминалось ранее, это не актуально для небольших сцен, но если вы ограничены в ресурсах, то это может повлиять на производительность.

Атрибуты материала details панелька

Финальный результат

Почему это выглядит так, как будто я ничего не делал до этого или Масштабируемые настройки
Масштабируемые настройки располагаются в Settings > Engine Scalability опции на тулбаре.
Цель данного масштабирования заключается в том, что бы не шибко производительные компьютеры не умирали от ультра настроек.По умолчанию редактор занижает настройки если FPS падает слишком низко.
Опция “Shadows” непосредственно влияет на дальность прорисовки всех динамических теней.Это верно когда используется “Movable” освещение или когда освещение ещё не запекалось для статического освещения, так как те используют динамические тени до тех пор, пока освещение не будет запечено в lightmaps.

Engine Scalability Settings

Изображения снизу демонстрируют тени на дистанции при разных качествах теней указанных в настройках.

Epic

High

Medium

Low

Если у вас топовой ПеКа, но теней нет или с ними что-то не то, стоит сначала потыкать в этих настройках, прежде чем искать проблемы в других местах.Также редактор может занижать настройки если просадки фпс слишком велики.

Если вы не испытываете нужны в автоматическом подборе настроек, то вы можете выключить данную опцию, нажав на галочке внизу окошка.

Want to know more about Engine Scalability?

Почему на источниках света появился красный Х ?
Стационарные источники света ограничены 4 пересекающимися источниками. Когда добавляется ещё и 5й, появляется красный «Х», являясь индикатором того, что ИС с малым радиусом будут переведены в динамические ИС.Это может привести к проблемам производительности, так как динамические ИС потребляют больше ресурсов для запекания теней.

Пересекающиеся Стационарные источники света
Если освещение будет запечено с любым стационарным светом который имеет перекрытия, будет выдано предупреждение с описанием ИС который является источником проблемы и последующими из-за этого последствиями.
Чтобы это исправить, нужно уменьшить количество ИС до четырёх или уменьшить радиус ИС которые пересекаются.
Если же у вас 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: Количество каскадов на которое будет делится фрустум.Больше каскакодов- лучше качество, но и ресурсоёмкость возрастает.
Внимание! обязательно тыкните в ссылочку ниже, ибо наверняка не все знают что такое фрустум.

Количество каскадов = 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

Shadow Bias = 0.5 (Дефолтное значение)

Shadow Bias = 0, установлено слишком низкое значение и поэтому появляются артефакты

Решение данной проблемы- нахождение баланса между установкой не слишком низкого значения и подбором нужного значения в Cascaded Shadows

Shadow Filter Sharpen — делает края тени более резкими при высоких значениях.

Filter Sharpen = 0

Filter Sharpen = 1

Высокое значение параметра даёт резкий край тени, низкое- плавный край тени.

Почему мой подвижный источник света светится сквозь меш на дистанции?


Динамическое освещение , в частности точечные ИС,могут создавать проблемы такого рода.Unreal Engine 4 достаточно хорошо справляется с подобной оптимизацией, поэтому вам не стоит сильно об этом волноваться.Но иногда возникает подобная проблема и метод её решения не всегда очевиден.

Результат который мы хотим.Камера в близи.

Что получается в итоге.Камера в отдалении.

Что же делать?

Чтобы понять что происходит, нужно учитывать, что движок использует глубину сцены, дабы определить, что будет видимым и что будет невидимым при рендере.Тут же мы имеем точечный источник света который испускает свет по всему радиусу до тех пор пока не встретит преграду или пока не столкнётся с границей сферы.

На картинке ниже вы можете наблюдать, как при отдалении камеры появляется halo эффект вокруг внешних граней меша из-за того, что свет не встречает преград на своём пути и исходит во всех направлениях.

Проход света сквозь меш

Вы можете заметить, что если вы на дистанции выберете/выделите такой меш, то освещение вернётся в нормальное состояние.Это объясняется тем, что вы сфокусировались в данный момент на данном меше.

Дабы сохранить меш пропускания света, вам нужно выделить меш, и перейти в details panel.Тут вам нужно найти во вкладке Rendering , параметр Bounds Scale.

Местонахождение Bounds Scale

По умолчанию значение установлено в 1.0 . Увеличивайте данный параметр на небольшие значение (1.1, 1.2 и тд.). Используя значение = 2 ,удваивает дистанцию которая может стать излишней. Нет необходимости использовать значение больше необходимого, так как это может повлиять на производительность и качество теней.

Вы можете увидеть/визуализировать границы вашего меша перейдя во вьюпорте > 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 шела на развёртке лайтмапы.

Разрешение = 64

Разрешение = 128

Разрешение = 256

Разрешение = 512

Разница лайтмапы BSP от статического меша в том, что значение лайтмапы BSP уменьшается в пользу лучшего качества.

Resolution = 32

Resolution = 24

Resolution = 16

Resolution = 8

Как и везде, при настройке лайтмапы есть свои ухищрения.Использование маленького меша позволит вам добиться лучшего качества для пола с низким разрешением лайтмапы, в то время как для большего меша вам понадобится увеличить разрешение лайтмапы, что в свою очередь затребует больше ресурсов.

Что такое Overlapping UV
Когда используете статическое или стационарное освещение, необходимо использовать 2 развёртки , иначе вы получите такое сообщение:

Лог после запекания освещения

В данном случае вам надо установить 2й канал развёртки для вашей лайтмапы. В противном случае редактор будет использовать имеющуюся развёртку со всеми имеющимися ошибками.
Вы можете сделать это прямо в редакторе (картинка ниже) либо же с вашем 3d редакторе.

Оригинальные UV и результаты

Перекрывающиеся UVs

Результат в редакторе

Правильные UV и результаты

Правильные UVs

Результат в редакторе

Заметьте, что финальные UV не имеют перекрытий что даёт теням/свету правильно запечся в текстуру.

Как сгенерировать UV в редакторе

Откройте меш, лайтмапу которого ваш нужно отредактировать.
Найдите панельку похожую на эту:

Static Mesh Editor Details Panel

Данная панелька позволяет вам создать свой канал лайтмапы , но назначение разрешение лайтмапы и индекса координат происходит не здесь, а чуть ниже.
Настройки вкладки “Build Settings” на которых мы сфокусируемся:

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.

Здесь вы можете видеть множество настроек того, как освещение будет реагировать в вашей сцене.Для GI мы сфокусируемся лишь на “Num of Indirect Lighting Bounces”. Ползунок ограничен в пределах от 1 до 4.Но вы можете установить любое значение просто вписав его туда

Lightmass World Settings по умолчанию

Global Illumination пример сцены.Одинарный источник света в 250 единиц (15w примерно)

Почему тени пятнистые или как избавится от загрязнения лайтмап?
Пятна, загрязнения, ну или как вы там это называете, не суть;данная ошибка часто возникает при использовании статического освещения в ue4.Не стоит паниковать, ведь исправить это можно через настройки лайтмасс.
Первое что приходит на ум- это то, что это связанно с непрямым освещением от отскоков GI при построении лайтмасс.
Что бы показать как это наиболее эффективно исправить, будем использовать 2 комнаты в качестве примера.

Экстерьер

Интерьер

В данной сцене будет использоваться продакшн (PRODUCTION) качество освещения.В данной сцене используются ассеты из Starter Content pack .Все меши в этой сцене используют разрешение лайтмап = 256, в других случаях об этом будет написано.Пост процессы установлены в дефолтные значения , с адаптацией глаз для того, чтобы лучше видеть тёмные места комнаты.

После постройки освещения получаются такие вот результаты:

Первоначальное освещение, дефолтные настройки

Интерьер 1й комнаты ,освещается прямым светом с одним отскоком.

интерьер 2й комнаты , освещается полностью непрямым светом

Brute force может быть использовано для удаления некоторых артефактов путём увеличения разрешения лайтмапы , но это решение не всегда верно и не всегда помогает.
Как пример, во второй интерьерной комнате, разрешение лайтмапы увеличили до 1024:

Первоначальное освещение, дефолтные настройки

интерьер 2й комнаты , разрешение лайтмапы 256

интерьер 2й комнаты , разрешение лайтмапы 1024

В этом примере множество артефактов было исправлено за счёт повышения разрешения лайтмапы, но это также увеличивает потребление памяти.Это наиболее дружественное к производительности решение для непрямого освещения.

World Settings находится тут :

Настройки Lightmass изменяются тут :

Indirect Lighting Quality: увеличивает значение Global Illumination для получения требуемого качества.
Indirect Lighting Smoothness: фактор сглаживания применяемого в Indirect Lighting.
Осторожно! используя значение более чем 1 в Indirect Lighting Quality сильно увеличивает время билдинга

Настройки по умолчанию

Пример настроек #1

Вы также можете настроить количество отскоков непрямого освещения для получения требуемого результа:

количество отскоков непрямого освещения = 4

количество отскоков непрямого освещения= 5

На данный момент настройки освещения установлены в достаточных значениях для сокрытия любых артефактов с текстурами. Но если нет возможности производить данные манипуляции, то можно просто поднять значение разрешение лайтмапы. Тут это значение изменили с 256 до 512 и получили такой вот результат.

Изменённые косвенные параметры с разрешением лайтмапы = 512.

Не изменённые косвенные параметры с разрешением лайтмапы = 1024.

В начале этого урока было показано, как с помощию разрешения лайтмапы в 1024 исправить некоторые артефакты.Но подкрутив некоторые настройки лайтмасс можно добиться лучшего результата с меньшим значением разрешения лайтмапы.

Хотя этот метод и показывает методы решения проблем с «загрязнением» лайтмап без использования света, следует помнить,что добавление в нужное место небольшого источника света, пусть и с низкой интенсивность, без теней- может дать результат получше.Методы описанные выше являются лишь отправной точкой, и лишь методом проб и ошибок вы можете добиться требуемого результата.

Хочешь узнать больше про Lightmass Basics?

Хочешь узнать больше про Lightmass Global Illumination?

Что такое “Lighting needs to be rebuilt” в левом верхнем углу?
Если вы в режиме : игра в редакторе, симуляция, standalone, в левом верхнем углу видиту надпись Lighting needs to be rebuilt, это означает, что вы должны заново запечь/простроить освещение в вашей сцене.Данное явление происходит только при статическом и стационарном освещении.Динамическое освещение не требует билдить освещение.Данное сообщение появляется в случае если источник света был передвинут или модифицирован.


Сообщение об ошибке

Сравнение качества освещения


Когда вам требуется запечь освещение в необходимом качестве, вы можете выбрать качество перейдя во вкладку Build>Lighting Quality>выбрать нужное качество.
По умолчанию качество установлено в Preview.Данный уровень качества быстрее при просчёте нежели Production, но не столь аккуратное.

Превью

Среднее

Высокое

Продакшн

В данном примере легко заметить разницу между качеством превью и продакшн. По сравнению с другими настройками, в продакшине исчезают недочёты/баги, которые имеют место быть в предыдущих качествах.Именно поэтому, если вы наблюдаете при запекании света ошибки/баги/артефакты, рекомендуется забилдить освещение на продакшине, и в том случае, если баги/ошибки не исчезли, идти в лайтмапы и проверять уже их на правильность.

На примере этой статуи заметить разницу между качествами не так уж и легко.Но разница есть.

Качество освещения

Превью

Среднее

Высокое

Продакшн

Улучшение развёртки лайтмапы — залог качественных теней.


качество освещения статуи

Понравилась статья? Поделить с друзьями:
  • Liitokala lii 500 ошибка null
  • Life is strange системная ошибка
  • Life is strange русификатор ошибка 8
  • Lightroom ошибка при установке
  • Life is strange ошибка при запуске 0xc000007b