Google открыл код Seuratо, системы для оптимизации 3D-сцен

Компания Google объявила об открытии исходных текстов проекта Seuratо, в рамках которого подготовлена реализация технологии упрощения 3D-сцен для снижения потребления ресурсов и ускорения процесса рендеринга. Код проекта написан на C++ и поставляется под лицензией Apache 2.0.

С практической стороны Seuratо может использоваться для упрощения очень сложных 3D-сцен для их эффективной обработки на мобильных системах виртуальной реальности, предоставляющий шесть степеней свободы (6DoF). Работа Seurat сводится к преобразованию больших 3D-сцен, включающих миллионы треугольников, сложное освещение и шейдерные эффекты, в представление, состоящее из сотен тысяч треугольников, которые по силам отобразить на мобильных устройствах, ценой незначительной потери качества рендеринга (менее гладкие поверхности и небольшое искажение освещения).

Оригинальная сцена:

Сцена, обработанная в Seuratо (исходные 46.6 млн треугольников сокращены до 307 тысяч треугольников, что позволило поднять производительность отрисовки более чем в 100 раз без видимой потери качества):

Seurat позволяет на лету обрабатывать статические 3D-окружения, формируя вывод для одного шлема виртуальной реальности на основании входных данных от любой системы рендеринга, в том числе от игровых движков и систем трассировки лучей. Динамический контент может быть совмещён поверх статического окружения, сгенерированного в Seurat. Плагины для интеграции с Seurat подготовлены для Unity, Unreal и Maya. На выходе выдаются мэши c текстурным атласом в цветовом пространстве RGBA, которые могут быть отрисованы в любом движке real-time рендеринга.

Источник: opennet.ru