Repolode
google

google/filament

Движок физически корректного рендеринга в реальном времени для Android, iOS, Linux, macOS, Windows и WebGL2, рассчитанный на компактность и эффективность на Android.

Звёзды
20,637
Форки
2,283
Открытые issues
209
Последний коммит
3 часа назад

Что это?

Filament — движок физически корректного рендеринга (PBR) в реальном времени, написанный на C++. Он поддерживает Android, iOS, Linux, macOS, Windows и WebAssembly/WebGL2, а также предоставляет API для нативного C++, Java/JNI на Android и JavaScript. Среди поддерживаемых бэкендов — OpenGL, OpenGL ES, Metal, Vulkan и WebGPU, поэтому одна и та же сцена может работать на большинстве распространённых графических платформ.

Рендерер использует кластерную прямую схему и модель физически корректных материалов, поддерживающую металлический workflow, clear coat, анизотропию, материалы с эффектом ткани и приближённое моделирование подповерхностного рассеяния. В него входят освещение на основе изображений, физические единицы измерения для камер и источников света, различные методы расчёта теней, экранные отражения и преломление, а также конвейер постобработки с операторами тональной компрессии, цветокоррекцией и сглаживанием.

В проект также входят загрузчик glTF 2.0 (gltfio) с поддержкой множества расширений KHR и EXT и инструменты для хост-системы, например компилятор материалов matc и препроцессор окружения cmgen. Материалы заранее компилируются в бинарные пакеты, которые загружает среда выполнения.

Ключевые возможности

  • 01API для нативного C++, Java/JNI и JavaScript на основных платформах
  • 02Несколько бэкендов, включая Vulkan, Metal, OpenGL ES и WebGPU
  • 03Физически корректные материалы с clear coat, анизотропией и шейдингом ткани
  • 04Тени, экранные отражения и преломление, а также освещение на основе изображений
  • 05Встроенный загрузчик glTF 2.0 с поддержкой множества расширений

Сценарии использования

  • Добавление 3D-рендеринга в Android-приложение или игру с небольшим размером
  • Создание кроссплатформенных 3D-просмотрщиков моделей glTF, работающих в реальном времени
  • Рендеринг визуализаций продуктов или сцен в браузере с помощью WebGL2
  • Эксперименты с методами физически корректного шейдинга и рендеринга

Быстрый старт

  1. 1

    Добавьте библиотеку Filament Android как зависимость Gradle

    implementation 'com.google.android.filament:filament-android:1.78.1'
  2. 2

    Или добавьте pod для iOS через CocoaPods

    pod 'Filament', '~> 1.78.1'
  3. 3

    Скачайте стабильные сборки и инструменты для хост-системы со страницы релизов или соберите проект из исходного кода, следуя руководству по сборке

Что важно знать

  • Для нативных сборок C++ необходимо собрать проект из исходного кода, следуя отдельному руководству по сборке.
  • Версии инструментов из релизов, например matc, должны совпадать с версией библиотеки времени выполнения.

Темы

Частые вопросы

Что такое filament?
Движок физически корректного рендеринга в реальном времени для Android, iOS, Linux, macOS, Windows и WebGL2, рассчитанный на компактность и эффективность на Android. Filament — движок физически корректного рендеринга (PBR) в реальном времени, написанный на C++. Он поддерживает Android, iOS, Linux, macOS, Windows и WebAssembly/WebGL2, а также предоставляет API для нативного C++, Java/JNI на Android и JavaScript. Среди поддерживаемых бэкендов — OpenGL, OpenGL ES, Metal, Vulkan и WebGPU, поэтому одна и та же сцена может работать на большинстве распространённых графических платформ.
filament можно использовать бесплатно? Какая у него лицензия?
filament распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
filament всё ещё поддерживается?
Активно поддерживается. Последний коммит в filament — 22 окт. 2026 г..
Для чего можно использовать filament?
Добавление 3D-рендеринга в Android-приложение или игру с небольшим размером Создание кроссплатформенных 3D-просмотрщиков моделей glTF, работающих в реальном времени Рендеринг визуализаций продуктов или сцен в браузере с помощью WebGL2 Эксперименты с методами физически корректного шейдинга и рендеринга
Как установить filament?
Добавьте библиотеку Filament Android как зависимость Gradle: implementation 'com.google.android.filament:filament-android:1.78.1' Или добавьте pod для iOS через CocoaPods: pod 'Filament', '~> 1.78.1' Скачайте стабильные сборки и инструменты для хост-системы со страницы релизов или соберите проект из исходного кода, следуя руководству по сборке
Где скачать filament?
Исходный код и инструкции по установке — на GitHub: https://github.com/google/filament

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты