|
| |||
|
| |||
| |
Здравствуйте. Вы находитесь на сайте Unreal Level. Данный ресурс посвящен редакторам карт игр серии Unreal, UT и Gears of War. Основная цель сайта , помочь всем желающим освоить любой из редакторов вышеперечисленных серий. Наибольшим приоритетом на этом сайте, обладает редактор UnrealED for Unreal Engine 3 и редактор движка Unreal Engine 3.5, входящий в комплект разработки UDK, поскольку это наиболее актуальная на сегодняшний день технология. |
|
Shadowing Reference
автор: FACH | 12 Июля 2011 | Просмотров: 2966
Перевод: FACH
Unreal Engine 3 использует несколько типов теней: Вся сцена с динамическими тенями- подвижные источники света (Movable lights) заполняют всю сцену динамическими тенями. Динамические тени для объекта – недвижные источники света (далее просто источники) освещают подвижные или динамические объекты, с использованием динамических теней на объекте. Предварительно вычисляемые тени – неподвижные источники, освещающие статические объекты, используют предварительно вычисленные карты теней (shadow maps). Предварительно вычисляемое освещение - статические источники освещающие, статические объекты, используют предварительно вычисляемые карты освещения (light maps). Классы Источников Каждый тип источника Вы можете поместить на сцену. Существуют различные классы, которые управляют поведением затенение света Классы ограничивают изменение света определенным образом во время выполнения (runtime), или назначают источник "доминирующим" источником (dominant light). Базовый класс для каждого источника света (например, PointLight) является статическая (неподвижная) версия этого света. Он использует на объекте динамические тени в сочетании с предварительно вычисленным освещением. Подвижный подкласс - источник может быть перемещен во время выполнения. Он использует на всей сцене динамические тени. Toggleable (переключаемый) подкласс - источник не подвижен, но он может менять цвет и яркость во время выполнения. Он использует на объекте динамические тени в сочетании с картой теней. Доминирующий (Dominant) подкласс, источник похож на Toggleable источник, но использует дистанционную карту теней (distance field shadow maps).
Рекомендуемое использование Для большинства источников, Вы должны использовать базовый класс источника: точечный (PointLight), прожектор (SpotLight) и Направленный источник (DirectionalLight) Эти классы меньше остальных влияют на производительность во время выполнения, так как все они используют предварительно вычисленное освещение. Для источников, которые не нужно двигать, но необходимо изменять их цвет, яркость или включатьвыключать во время выполнения, Вы должны использовать подкласс Toggleable: PointLightToggleable, SpotLightToggleable, DirectionalLightToggleable Эти классы используются предварительно вычисленные тени вместе с попиксельным освещением во время выполнения, и оказывают малое влияние на производительность. Для большинства сцен, Вам будет необходимо небольшое количество источников, которые используют предварительно вычисленные тени с более высоким качеством освещения, чем Вы можете получить после предварительного вычисленным освещения Для этого Вы должны использовать Доминирующий подкласс источника: DominantPointLight, DominantSpotLight и DominantDirectionalLight. Эти классы похожи на Toggleable подкласс, но ограничены, так что каждый объект может быть освещен только одним Доминирующим источником. Это позволяет Доминирующим источникам быть немного более эффективным во время выполнения, чем Toggleable источники. Для получения дополнительной информации см. Dominant Lights. В случаях, когда Вам нужен подвижный источник, Вы должны использовать Movable подклассы: PointLightMovable, SpotLightMovable и DirectionalLightMovable. Эти классы просчитывают тени и освещение в каждом кадре во время выполнения, поэтому они имеют наибольшее влияние на производительность. Типы теней Динамические тени на объекте Неподвижные источники будут использовать на динамическом объекте динамические тени, на которые они влияют. Динамические тени на объекте рендерят буфер глубины для объекта с точки зрения источника и проецируют его на сцену. Пиксели, которые находятся дальше от источника, чем глубина в спроектированном буфере глубины теней, затенены. Фильтр используется для создания мягкого края между тенью и освещенной местностью. На этом рисунке, летательный аппарат (Cicada) бросает мягкие динамические тени на мост.
Качество динамических теней на объекте и производительность, зависит от того, насколько большой прогнозируемый буфер глубины проекции на экране, зависящий от величины ограничивающего прямоугольника (bounding box) динамического объекта Это значит, что лучше всего работать с объектами со сложными ограничивающими прямоугольниками Скелетные меши, не имеющие физического актива (PhAT), будут иметь свободный ограничивающий прямоугольник, который не изменится с анимацией во время выполнения, так что тени будут низкого качества и сильно повлияют на производительность. Таким образом, скелетной мешь с физическим активом будут иметь сложное ограничивающее поле, которое будет вычисляться каждый кадр с совместной анимацией, так что тени будут иметь более высокое качество и меньше влиять на производительность. По этому, Вы должны создавать физический актив для каждого скелетного меша независимо от того, будет ли он иметь физику на его основе или нет. Вы можете использовать консольную команду "show shadowfrustums", чтобы показать область динамических теней объекта или показать в окне проекции через меню Show->Advanced->Shadow Frustums. На этом рисунке, скелетной мешь без физического актива. Таким образом, область тени, которая представлена синим контуром (черная обводка добавлена для наглядности), велика и неэффективна.
На этом рисунке, скелетный мешь с физическим активом. Таким образом, область тени, которая представлена синим контуром (черная обводка для наглядности), плотная и эффективная.
Для обработки тени от статических объектов, попадающие на динамические объекты, от неподвижных источников, для объекта будет создан второй проецируемый буфер глубины теней. Этот буфер глубины будет создан на основе статического объекта между светом и динамическим объектом. На рисунке на скелетный мешь падают предварительно просчитанные тени. Убедитесь, что у Вашего скелетного меша в DynamicLightEnvironments включена функция «Use Boolean Environment Shadowing», чтобы отключить предварительный просчет динамических теней (отключено по умолчанию для SkeletalMeshCinematicActor).
На этом рисунке, на interpolated static mesh падают предварительно просчитанные тени. Убедитесь, что у Вашего интерполированного меша в DynamicLightEnvironments включена функция «Use Boolean Environment Shadowing», чтобы отключить предварительный просчет динамических теней (по умолчанию для InterpActor).
Модулированные тени (Modulated shadows) Динамические тени для объекта могут быть модулированными (modulated) или нормальными (normal). Нормальные тени не пропускают свет на поверхность с тенью, а модулированные тени модулируют тень на поверхности с заданным цветом тени. Статическим источникам нужны модулированные тени, чтобы объединить динамические тени объекта с предварительно вычисленным освещением, которое они используют. На этом рисунке, применены нормальные тени
На этом рисунке, применены модулированные тени с измененным цветом тени (Mod Shadow Color) на 0.f, 0.f, 0.f, 1.f (Черный).
На этом рисунке, цвет тени установлен на 1.f, 0.f, 0.f, 1.f (красный).
Статические и toggleable источники, имеют по умолчанию модулированные тени, а доминирующие - нормальные тени. Динамические тени на всей сцене Подвижные источники используют динамические тени по все сцене. Тени всей сцены работают аналогично проецируемым теням буфера глубины для динамического объекта, но вместо того чтобы создавать теневой буфер для каждого объекта, они используют фиксированное количество буферов для всей сцены. Прожекторы используют один буфер, точечные - шесть буферов, соответствующие граням куба, а направленные источники света используют один или несколько каскадных буферов в зоне видимости. На этом рисунке, все тени от подвижного точечного источника.
На этом рисунке, тени от подвижного прожектора.
На этом рисунке, тени по всей сцене от подвижного доминирующего направленного источника.
В отличие от теней каждого объекта, динамические тени всей сцены не могут быть модулированными. Каскадные карты теней (Cascaded shadow maps) Доминирующие направленные источники могут использовать каскадные буферы глубины теней для всей сцены. Если источник неподвижный, каскадные буферы могут быть смешаны с предварительно вычисляемыми тенями. Буферы будут использоваться для близлежащих объектов, а предварительно вычисленные тени для удаленных объектов.
Предварительно вычисляемые тени Toggleable источники используют предварительно вычисленные тени. Предвычисленные тени хранятся в виде маски оттенков серого, которая применяется при рендере источников, или для удаленных объектов доминирующих источников.
Предварительно вычисленное освещение Статические источники используют предварительно вычисленное освещение на статических объектах. Вычисленное освещение сочетает в себе все статические источники, так что свет уже не может быть отделен во время выполнения. Из-за этого, статические источники могут отбрасывать только модулированные тени от динамических объектов.
Тени от прозрачных элементов Маска прозрачности в материале будет учитываться всеми видами теней.
Translucent прозрачность материала будет учитываться тенями только от статических объектов, от Toggleable или статических источников.
Чтобы translucent материалы отбрасывали динамические тени, как masked материалы, выберите свойство и установите текстуру Opacity Mask в параметр материала.
Разрешение карты освещенности и теней (Shadow and light-map resolution) Предварительно вычисляемые Тени и BSP Для изменения разрешения карт теней и света, используемых на поверхности BSP, выберите поверхности или поверхности, и нажмите F5. Это вызовет меню .
![]()
Под Pan/Rot/Scale Вы найдете значение Light map. Чем меньше значение, тем выше разрешение. Результат показан на рисунке ниже:
Предварительно вычисляемые тени и статические меши Предварительно вычисляемые тени хорошо отображаются на геометрии статического меша. По умолчанию, вычисляется вершинная тень (vertex, по сути вертексная раскраска). Для лучшей резолюции тени, должны быть созданы для каждого статического меша карты теней. Карта теней требует, чтобы все данные UV были уникальным. Чтобы не было зеркальных разверток или тайлинга Если Ваши UV статического меша имеют зеркальность, пересечение, или тайлинг, то Вам нужно будет создать второй канал уникальных UV. Для получения дополнительной информации о том, как создавать несколько наборов UV смотрите VertexBlendingTutorial и читайте форум Unreal-Level. Откройте статически мешь в Static Mesh Editor (дважды щелкните по нему в Generic браузере). Введите нужное значение в LightMapResolution. Значение по умолчанию 0 означает, что карта теней не будет создана. Имейте в виду, что независимые карты теней будет генерироваться для каждого экземпляра Вашего меша в файл уровня, которые потенциально могут драматически повлиять на память.
Если Ваш мешь имеет несколько UV, выберите набор, который будет использован для карты теней в LightMapCoordinateIndex. По умолчанию 0 - исходный набор UV (первый, текстурный). Обратите внимание, что количество UV каналов, перечислены в левой верхней части окна просмотра. Ниже приведены примеры вершинного затенения и карт теней.
Свойства теней
#1 написал: Sealrean 13 Июля 2011 03:47 | ICQ: Не Указано |
#2 написал: A-Lex 13 Июля 2011 08:37 | ICQ: Не Указано |
#3 написал: FACH 13 Июля 2011 13:43 | ICQ: 562039160 |
#4 написал: Casuss 13 Июля 2011 20:34 | ICQ: Не Указано |
#5 написал: netgoblin 14 Июля 2011 02:42 | ICQ: Не Указано |
#6 написал: Radiotehnik 15 Июля 2011 00:25 | ICQ: 622503184 |
#7 написал: Sylent 17 Июля 2011 14:55 | ICQ: Не Указано |
#8 написал: Pirog 27 Июля 2011 14:00 | ICQ: 490561676 |
#9 написал: FACH 27 Июля 2011 14:07 | ICQ: 562039160 |
#10 написал: Pirog 27 Июля 2011 14:10 | ICQ: 490561676 |
#11 написал: rambooze 9 Октября 2011 16:57 | ICQ: 222338854 |
#12 написал: FACH 9 Октября 2011 20:27 | ICQ: 562039160 |
#13 написал: rambooze 9 Октября 2011 23:19 | ICQ: 222338854 |
#14 написал: NewmanD 26 Ноября 2011 02:41 | ICQ: 454415963 |
Информация
Посетители, находящиеся в группе Гости, не могут оставлять Комментарии в данной новости...
|
|
|
При копировании материалов, активная ссылка на UNREAL-LEVEL.RU обязательна! © 2008—2012, UNREAL-LEVEL.RU. Все права защищены. |