
Эта статья основана на выступлении Мартина Рейнмана под названием Как Odd Bug использовал 2D освещение для создания атмосферы. В ней рассматривается процесс разработки студии по созданию сцены и то, как они использовали 2D систему освещения Unity в сочетании с их собственными инструментами для создания мира Tails of Iron.

Tails of Iron была разработана Odd Bug Studio, компанией друзей и художников, базирующейся в Манчестере, Великобритания. Игра состоит из множества различных уровней, на которых игрок может свободно перемещаться от одной сцены к другой через двери или туннели.

Создание каждой сцены начинается с инструмента Collider, который является собственным инструментом, созданным дизайнером уровней студии. Он размещается в качестве основы уровня и придает сцене общую форму. Это также поверхность, по которой ходит игрок. Линия коллайдера используется в качестве ориентира для набросков композиций и идей для создания группы активов и их размещения в сцене.
Но прежде чем это сделать, сцену нужно настроить с помощью инструмента Light и Layer, собственного инструмента, созданного ведущим программистом студии Мэттом Тейлором. Этот инструмент позволяет команде управлять освещением и источниками активов спрайтов, когда они создают детализированные уровни, используя большое количество отдельных активов спрайтов для создания параллакса.
Как только команда определяет слои, такие как фон и средний план, инструмент Light и Layer собирает все Sprite Renderers в разделе сцены. Затем активы могут быть отсортированы от ближайших к самым дальним на основе z глубины каждого актива в разделе уровня. После генерации этого списка инструмент линейно назначает значения, обеспечивая правильный порядок рендеринга активов.
После завершения этого шага инструмент назначает слой на основе ранее определенных подразделений в сцене. Это определяет, какие Sprite Renderers подвержены воздействию конкретного 2D света. Сочетая эти два процесса, студия может создавать большие, детализированные параллаксные уровни с конкретными сценариями освещения для каждого слоя.
Команда также создала библиотеку активов, разделенных на несколько атласов для конкретного уровня, чтобы они могли легко выбирать активы для использования в сценах. Связывание активов с конкретными уровнями помогает в оптимизации. Их атласы разделены на категории, такие как камни, деревья и мелкие активы. Команда обычно начинает с размещения активов среднего плана, чтобы очертить коллайдеры и укрепить поверхности сцены.
Размещение нескольких активов на переднем и заднем планах помогает настроить освещение. Они продолжают с большими активами, такими как деревья, камни и холмы, чтобы создать хорошую композицию, добавляя детали позже. По мере позиционирования активов функция "Сортировка" инструмента освещения обеспечивает правильное назначение и рендеринг активов на правильной глубине.
Размещение активов иногда похоже на большую 3D головоломку. Может быть сложно найти правильные формы для создания эффективной сцены, которая также читаема для игрока. Odd Bug хотел, чтобы каждая сцена была уникальной. Это помогает игроку ориентироваться в мире, так как каждая сцена становится запоминающейся благодаря своим собственным ориентирам или активам.
Они размещают активы на разных глубинах, чтобы создать параллаксный эффект, когда игрок пробегает через сцену, и перспектива камеры может следовать за ним. Это можно преувеличить, разместив активы дальше друг от друга по оси z или ближе к камере. Вы можете сделать актив, ближайший к камере, темнее или полностью черным, так как это создает границу у краев экрана и усиливает глубину.
Еще одной отличной особенностью индивидуального инструмента освещения Odd Bug является то, что он мгновенно создает искусственную глубину, затухая цвет каждого слоя подразделения по мере его движения к горизонту. Это позволяет команде регулировать плотность и устанавливать глобальный цвет света и объем этого затухания. Это создает оптимизированную иллюзию с затухающим горизонтом и атмосферным туманом, и в сочетании с добавленными огнями и частицами, это может создать драматически разные настроения в сценах.

Как только сцена заполнена активами, пора добавить огни, чтобы задать настроение и выделить важные части сцены. Здесь в игру вступают 2D огни Unity с пользовательским рабочим процессом инструмента света.
Odd Bug адаптировала систему освещения 2D Unity для своего многослойного параллакса. Каждый 2D свет определяет свой собственный слой на основе своей z глубины в сцене, используя вручную определенные подслои. В качестве альтернативы команда может вручную установить, какой слой затрагивает 2D свет.
2D огни в каждом разделе автоматически освещают спрайты в каждом слое правильно. Это дает команде большую степень контроля над освещением в зависимости от того, где размещены огни. Например, вы можете настроить более сильный точечный свет, чтобы осветить средний план и персонажей там, с затухающими огнями на заднем плане, чтобы сосредоточить внимание на среднем плане.
Система многослойного света полезна для создания классных эффектов, таких как силуэтные сцены, с огнем, размещенным на заднем плане и назначенным для воздействия только на задние слои, что приводит к очень тусклым огням на среднем и переднем плане. Кроме того, вы можете создать другую атмосферу, добавив свет за окном или дверью.
В основном в сценах используются три разных типа света: Точечный, Свободной формы и Спрайт.

Точечный свет является наиболее часто используемым в игре, потому что это 2D круг, который вы можете быстро разместить, чтобы выделить важные активы или создать искусственные тени. Вы можете использовать его как туманный свет на заднем плане, увеличив непрозрачность объема, или использовать его как свет от лампы, изменив интенсивность падения света.

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

Свет спрайта позволяет вам установить конкретный актив для проекции в качестве самого света. Команда использовала это на световых лучах, которые имеют текстурированный источник света. Это можно разместить и повернуть в сцене, чтобы показать свет, исходящий из разных углов. Комбинируя разные типы света, вы можете создать сцены, где персонажи освещены атмосферным светом.

Как только сцена будет красиво освещена, вы можете начать ее полировку, разместив эффекты частиц, чтобы добавить движение и сгладить любые неаккуратные участки. Вы можете разместить частичное облако на выбранной глубине и установить его для рендеринга на правильном слое. Туман — отличный эффект для разделения отдельных слоев, чтобы создать больше глубины. В Сказаниях Железного размещение тумана на переднем плане средней глубины также привязывает персонажей к миру. Таким образом, туман немного движется в направлении, в котором игрок должен идти.
Следующий шаг — добавление атмосферных эффектов, таких как пылинки, дождь или падающие листья, в зависимости от сцены. Хорошо размещать их ближе к камере, чтобы создать более сильный эффект параллакса. Эффект дождя — это комбинация падающих капель воды и частиц анимированных водяных брызг, размещенных на земле. Эти частицы, как и почти все другие активы, назначены своим собственным слоям, чтобы это было согласовано с эффектом параллакса в игре.
Если в сцене есть высокая трава, цветы или деревья, убедитесь, что они немного движутся. Ведущий программист Мэтт Тейлор создал инструмент, который преобразует все выбранные шейдеры спрайтов листвы из сцены в один специальный шейдер, который анимирует их вместе на ветру. Команда может индивидуально настраивать значения каждого актива. Листья деревьев размещены в кусках разного размера вокруг верхушки дерева, чтобы сделать движение более естественным.
Сцена связывается вместе с помощью цветовой обработки и виньетки. Они используют специальный инструмент, чтобы нарисовать рамку над областью сцены, на которую они хотят, чтобы постобработка оказала влияние. Они могут перетащить его по всей сцене или по различным элементам, которые смешиваются, когда игрок проходит через сцену. Когда сцена имеет несколько различных состояний, таких как день и ночь, вы можете создать папку в этой сцене со всеми огнями, активами и фильтрами, которые включаются или выключаются в игре.
Наконец, команда делает финальный проход (или три) по активам, размещению и всему остальному, пока сцена не будет отполирована. Для получения дополнительной информации или вопросов о Tails of Iron и команде, стоящей за ним, следите за @OddBugStudio в Twitter.
Если вы хотите увидеть, на что способны 2D-инструменты Unity, обязательно скачайте Lost Crypt образец проекта. Проект включает в себя учебное окно, которое проводит вас через такие функции, как 2D-анимация, 2D-спрайт-формы, 2D-тайлмапы, 2D-освещение, Shader Graph для 2D, вторичные текстуры и постобработка объема.

Графика, анимация и освещение в 2D-играх для художников — это наше самое большое и комплексное руководство по разработке 2D-игр, созданное для разработчиков и художников Unity, которые хотят создать коммерческую 2D-игру.