Игровой движок Snowdrop готовился как побочный проект в Massive Entertainment еще в 2009 году, когда команде нужны были инструменты, которые могли бы обрабатывать сверх детализированные городские среды.
Они создали все на C++, разбив движок на небольшие части, чтобы разные отряды могли настраивать рендеринг, звук или физику, не наступая друг другу на пятки. Есть граф сцены, который отслеживает, где находятся объекты, но он отделен от цикла моделирования, поэтому вы получаете плавные обновления, даже если вы крутите камеру.
Под капотом низкоуровневый интерфейс скрывает, используете ли вы DirectX, Vulkan или консольный SDK, что упрощает добавление новых графических трюков в дальнейшем. Когда Ubisoft показала Snowdrop на E3 2013 вместе с The Division, он уже был заполнен отложенным затенением с отбраковкой плиточного света. Это означало десятки источников света в сцене без падений частоты кадров. Движок также транслировал ресурсы на лету, выбирал нужный уровень детализации, когда вы приближались или удалялись, и обрабатывал процедурное разрушение в реальном времени.
К The Division 2 добавили частицы, управляемые GPU, и более умную аудио окклюзию, чтобы звук отражался от стен более реалистично. Перенесемся в Avatar: Frontiers of Pandora, и у вас есть трассировка лучей в реальном времени, освещающая воду и листву, а также контролируемая ИИ дикая природа, которая реагирует на окружающую среду. Star Wars Outlaws пошла дальше с DLSS-масштабированием и RTX Direct Illumination, выжимая более плавную частоту кадров из карт NVIDIA.
А для предстоящего ремейка Splinter Cell они планируют аппаратно ускоренную физику и многопоточный отбор, чтобы разрастающиеся уровни загружались и работали быстрее, чем когда-либо. Одна вещь, которая действительно отличает Snowdrop, это то, как он обрабатывает цели.
Независимо от того, используете ли вы Windows PC, PlayStation 4 или 5, Xbox One или Series X/S, или даже Nintendo Switch, есть единый конвейер ресурсов. Вы загружаете текстуры высокого разрешения, модели, анимации, а инструменты сборки преобразуют все в удобные для платформы форматы. Таким образом, память остается под контролем, и вы не получаете блочные текстуры на консолях. Автоматизированные скрипты заботятся о вызове компилятора каждого SDK, исправляя двоичные файлы для специфичных для консоли настроек, таких как асинхронные вычисления, и переключая такие функции, как поддержка переменной частоты обновления. Это та же самая кодовая база, но адаптированная под сильные стороны каждого устройства.
После того, как Snowdrop показал себя в играх The Division в Massive Entertainment, он был запущен в других студиях Ubisoft. Торонто, Монреаль и еще около десятка других теперь полагаются на него как для фотореалистичных эпиков, так и для стилизованных приключений. Эта гибкость исходит из базовой конструкции — модульных подсистем, асинхронной обработки ресурсов и интерфейса рендеринга, готового к новым API. Если студии нужна динамическая погода или экосистемы ИИ, они подключаются к существующим модулям. Если им нужно создать прототип другого художественного стиля, они могут поменять шейдеры или настроить освещение, не переписывая весь движок.
Источник: www.playground.ru