Это ваш выбор, но мы советуем метод с пакетом (ссылаться на ассет в пакете), так как это позволяет минимизировать конфликты в системе контроля версий. Для максимальной гибкость, конечно, можно создавать blendable прямо в блупринте. Так как блупринты, по сути, форма программирования, передача параметров в UI равносильна их жесткому определению в коде. Хотя последний метод считается менее гибким для других разработчиков.
LightPropagationVolumeBlendable описывает свое отображение в редакторе. Неважно, был ли создан blendable в контент-браузере (слева) или в объекте (т.к. волюм постобработки): пользовательский интерфейс не меняется. Хорошим тоном считается давать каждому свойству свой чек-бокс (weight=0 или weight=1), а всей структуре – смешанный вес.
Примечание: Параметры LightPropagationVolumeBlendable до сих пор существуют в PostProcessSettings для обратной совместимости. Однако мы планируем удалить их и сделать blendables одним методом.
Блупринт
Блупринт AddOrUpdateBlendable обеспечивает удобный доступ к контейнеру blendables. Вы передаете объекту, содержащему контейнер blendables, вес и ссылку на blendable. При наличии этих параметров они просто обновляются. Элементы контейнера не удаляются, так как это может привести к нарушению работы другого кода и сборки мусора. Удаление элементов не является необходимостью, ввиду малых затрат ресурсов.
|
|
Здесь вы можете увидеть, как ссылаться на ассет blendable в контент-браузере:
Переменная ‘BlendableVar’ типа LightPropagationVolumeBlendable (Object Reference) используется в качестве ссылки на ассет под названием LightPropagationVolumeBlendable ‘LPV0′.
С блупринт-функцией ConstructObjectFromClass вы можете создавать новый blendable непосредственно в блупринте. Соединяя вход «Outer» нового объекта с объектом, имеющим контейнер blendable, вы добьетесь аналогичного поведения, если бы создавали объект в UI.
Здесь мы создаем объект типа LightpropagationVolumeBlendable, получаем настройки и определяем членов с функцией SetMembersIn.
Примечание: Вам понадобится вручную определить флаг как true (установленный чек-бокс), иначе свойство с тем же именем не будет выбрано.
В качестве эксперимента вы можете использовать showflag VisualizeLPV (в редакторе: Visualize/Light Propagation Volume) для отображения смешанных параметров. Это реализовано в коде на C++ и только для данного типа blendable, но позже мы реализуем подобную возможность для каждого свойства без необходимости привносить в код какие бы то ни было изменения.
Showflag Visualize отображается смешанные значения, что полезно при отладке.
Scene Fringe
Scene Fringe – эффект хроматической аберрации, симулирующий изменения цвета при использовании обычных линз. Наиболее заметен на краях изображения.
Свойства | Описание | |||||
Fringe Intensity | Определяет, как сильно будут проявляться изменения.
| |||||
Fringe Saturation | Определяет заметность изменений. Низкие значения ведут к более размытому результату, а высокие – более выраженному. |