このプロジェクトについて

FilamentはGoogleが開発したリアルタイム物理ベースレンダリング(PBR)エンジンで、Android、iOS、Linux、macOS、Windows、およびWebGL 2.0/WASM経由のWebを対象としています。特にAndroid上で小さく効率的になるよう設計されており、ランタイムライブラリとホスト側のアセットツールの両方を含む安定版リリースアーカイブとして配布されています。 言語バインディングとAPI: - Android、iOS、Linux、macOS、Windows向けのネイティブC++ API - Android向けのJava/JNI API - Web向けのJavaScript API グラフィックスバックエンドには、OpenGL 4.1+(デスクトップ)、OpenGL ES 3.0+(モバイル)、Metal(macOS/iOS)、Vulkan 1.0、WebGPU、WebGL 2.0が含まれます。 レンダリング機能は、クラスタ化フォワードレンダラ、Cook-TorranceスペキュラおよびLambertianディフューズBRDF、カスタムライティング/サーフェスシェーディング、HDR/リニアライティング、メタリックワークフロー、クリアコート、異方性ライティング、近似サブサーフェス/半透明マテリアル、クロス/シーンシェーディング、法線およびアンビエントオクルージョンマッピング、イメージベースライティング、物理ベースカメラ、物理ライト単位、ポイント/スポット/ディレクショナルライト、スペキュラアンチエイリアシング、各種シャドウ技術(PCF、DPCF、PCSS、EVSM、カスケード、コンタクト、トランスペアレント)、スクリーンスペースアンビエントオクルージョン、反射と屈折、グローバルフォグ、AMD FidelityFX FSRサポート付きの動的解像度をカバーします。 ポストプロセス機能には、HDRブルーム、被写界深度ボケ、複数のトーンマッパー(GT7、PBR Neutral、AgX、ACES、フィルミック、ジェネリック)、カラー/トーン管理とグレーディング、TAA/FXAA/MSAAアンチエイリアシング、スクリーンスペースレンズフレアが含まれます。 エンジンにはglTF 2.0ローダーが含まれており、埋め込みおよびバイナリエンコーディング、ポイント/ライン/トライアングルプリミティブ、トランスフォーム/モーフ/スキン/ジョイントアニメーション、およびKHR_draco_mesh_compression、KHR_lights_punctual、KHR_materials_clearcoat、KHR_materials_transmission、KHR_materials_volume、KHR_texture_basisu、KHR_texture_transform、EXT_meshopt_compressionなどの多くの拡張をサポートします。 マテリアルは、`matc`マテリアルコンパイラによってコンパイルされるマテリアルシステムを通じて作成され、マテリアルモデルとカスタムマテリアル作成に関するドキュメントが用意されています。リポジトリには、イメージベースライティング生成用の`cmgen`、メッシュ変換用の`filamesh`、`mipgen`、`matinfo`、`matedit`、`glslminifier`、`resgen`、`libiblprefilter`などのサポートライブラリとツールも同梱されています。デスクトップ、Android、iOS向けのサンプルアプリケーションは、エンジンの初期化、スワップチェーンの作成、シーン/ビュー/カメラの設定、レンダリングループを示しています。CC0テクスチャや環境マップなどのアセットは、開始するために提供されています。