NVIDIA Ansel — мощный интерфейс для снятия скриншотов, который благодаря интеграции с движком приложения позволяет не просто запечатлеть один кадр из игры, но манипулировать игровой средой в широких пределах, чтобы получить наиболее впечатляющий результат. Чтобы Ansel начал действовать в конкретной игре, разработчик должен включить в нее библиотеку от NVIDIA, и Mirror’s Edge Catalyst стала первой игрой, где это было реализовано. Следующие на очереди — The Witcher 3: Wild Hunt, Tom Clancy’s the Division, грядущее обновление Unreal Tournament и пр.
Если игра поддерживает Ansel и в системе установлен достаточно свежий драйвер для GPU NVIDIA, нажатие ALT + F2 замораживает все действия на экране и передает библиотеке Ansel контроль над камерой и информацию из всех буферов конвейера рендеринга. Теперь мы можем сделать очень и очень многое.
Камера в Ansel свободно позиционируется в пространстве (хотя в некоторых играх разработчик может ограничить перемещение, чтобы игрок не использовал это как «чит»).
Угол обзора регулируется в широких пределах, вплоть до возможности снимать панорамы на 360°. Доступна съемка в стереоскопическом формате, а стерео-панорамы можно изучать в виртуальной реальности посредством шлема (приложение Virtual Desktop на Steam) либо программы NVIDIA VR Viewer для Google Cardboard.
Разрешение скриншота увеличивается до колоссальных значений вне зависимости от разрешений, поддерживаемых в самой игре. В Mirror’s Edge Catalyst предел составляет 8 192 × 4 096 пикселов, но сам Ansel позволяет создавать кадры объемом вплоть до 4,5 гигапикселов. Для этого поле обзора разбивается на фрагменты, которые рендерятся последовательно, а затем сшиваются вместе (вплоть до 3600 фрагментов). При этом используется сглаживание по методу SSAA, а пост-обработка на базе CUDA выравнивает тональное отображение (tone mapping) фрагментов.
Поскольку библиотека Ansel интегрирована с движком, для съемки скриншота вся геометрия и текстуры в кадре получают максимальные значения LOD (Level of Detail), что в результате позволяет увеличить любой фрагмент скриншота и видеть объекты настолько детализированными, как если бы игровая камера была вблизи от них.
Благодаря доступу к буферам конвейера Ansel может сохранять скриншоты в формате EXR, несущие цвет пикселов с глубиной 16 бит на канал, дабы затем вручную выполнять тональное отображение в графическом редакторе. В противном случае Ansel берет на себя эту задачу, заменив алгоритм HDR, встроенный в игру.
Помимо HDR, в Ansel доступна масса других шейдеров пост-обработки, которые можно дополнить своими фильтрами с помощью открытого SDK от NVIDIA.