Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Game Engine Development
  3. Filament

Filament

Apache-2.0C++v1.71.1

A real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2.

Visit WebsiteGitHubGitHub
20.0k stars2.2k forks0 contributors

What is Filament?

Filament is a real-time physically based rendering engine developed by Google for creating high-fidelity 3D graphics across Android, iOS, desktop, and web platforms. It solves the problem of achieving realistic lighting and materials in performance-sensitive applications, such as mobile games and interactive 3D experiences, by providing an efficient, cross-platform solution.

Target Audience

Graphics programmers and developers building real-time 3D applications for mobile (Android/iOS), desktop, or the web who need a performant, physically based rendering pipeline.

Value Proposition

Developers choose Filament for its emphasis on efficiency and small binary size, especially on Android, its support for multiple rendering backends (Vulkan, Metal, OpenGL), and its comprehensive, production-ready feature set for PBR, all backed by extensive documentation.

Overview

Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2

Use Cases

Best For

  • Building high-performance 3D mobile games on Android or iOS
  • Developing cross-platform real-time visualization applications
  • Creating web-based 3D experiences with WebGL 2.0 or WebGPU
  • Implementing realistic material and lighting systems in game engines
  • Rendering glTF 2.0 assets with advanced PBR features
  • Prototyping or building tools that require a lightweight, embeddable renderer

Not Ideal For

  • Teams needing a full game engine with built-in physics, networking, or scripting systems
  • Projects requiring drag-and-drop visual editors or WYSIWYG material authoring without coding
  • Applications targeting legacy systems without support for modern graphics APIs like Vulkan or Metal
  • Developers prioritizing rapid prototyping with extensive pre-made asset libraries and scene templates

Pros & Cons

Pros

Cross-Platform Efficiency

Prioritizes small binary size and high performance, especially on Android, as emphasized in the philosophy, making it ideal for resource-constrained mobile applications.

Advanced PBR Rendering

Implements clustered forward rendering, Cook-Torrance BRDF, and supports complex materials like clear coat and subsurface scattering, enabling realistic lighting and materials out of the box.

Multiple Backend Support

Renders via OpenGL, Vulkan, Metal, WebGPU, and WebGL 2.0, ensuring broad compatibility across Android, iOS, desktop, and web platforms, as listed in the features.

Comprehensive Tooling

Includes tools like matc for runtime material compilation and cmgen for image-based lighting generation, facilitating a robust asset pipeline, though version matching is required.

Cons

Complex Build and Setup

Building from source requires following a detailed manual (BUILDING.md), and tools like matc must match runtime library versions, adding overhead and potential for errors.

Limited High-Level Tooling

Lacks integrated visual editors or scene builders; developers must handle asset preparation, material authoring, and integration manually via code, as seen in the native API examples.

Ecosystem and Community Size

Has a smaller community and fewer third-party resources compared to larger engines like Unity or Unreal, which can affect support, tutorials, and plugin availability.

Frequently Asked Questions

Quick Stats

Stars20,002
Forks2,162
Contributors0
Open Issues180
Last commit1 day ago
CreatedSince 2018

Tags

#vulkan#graphics#graphics-engine#opengl#opengl-es#metal#pbr#android#3d-graphics#real-time-rendering#physically-based-rendering#wasm#gltf#webgl#cross-platform#real-time

Built With

W
WebGL
V
Vulkan
J
JavaScript
O
OpenGL ES
W
WebGPU
J
Java
M
Metal
O
OpenGL
C
C++

Links & Resources

Website

Included in

Game Engine Development1.3k
Auto-fetched 1 day ago

Related Projects

ProtoBufProtoBuf

Protocol Buffers - Google's data interchange format

Stars71,131
Forks16,113
Last commit1 day ago
C/C++C/C++

A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.

Stars70,870
Forks8,263
Last commit2 days ago
JSON for Modern C++JSON for Modern C++

JSON for Modern C++

Stars49,451
Forks7,370
Last commit13 days ago
BlazorBlazor

ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.

Stars37,857
Forks10,624
Last commit1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub