Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon

Google open sources Filament - a physically based rendering engine for Android, Windows, Linux and macOS

Save for later
  • 2 min read
  • 06 Aug 2018

article-image

Google has just open-sourced Filament, their physically based rendering (PBR) engine for Android. It can also be used in Windows, Linux, and macOS. Filament provides a set of tools and APIs for Android developers to help them easily create high-quality 2D and 3D rendering.

Filament is currently being used in the Sceneform library both at runtime on Android devices and as the renderer inside the Android Studio plugin. Apart from Filament, Google has also open sourced Materials, the full reference documentation for their material system. They have also made available Material Properties which is a reference sheet for the standard material model.

Google’s Filament comes packed with the following features:

  • The rendering system is able to perform efficiently on mobile platforms. The primary target is OpenGL ES 3.x class GPUs.
  • The rendering system emphasizes overall picture quality.
  • Artists are able to iterate often and quickly on their assets and the rendering system allows them to do so instinctively.
  • The physically based approach of the system also allows developers to create visually believable materials even if they don’t understand the theory behind the implementation.
  • The system relies on as few parameters as possible to reduce trial and error and allows users to quickly master the material model.
  • The system uses physical units everywhere possible: distances in meters or centimeters, color temperatures in Kelvin, light units in lumens or candelas, etc.
  • The rendering library is as small as possible so any application can bundle it without increasing the binary to unwanted sizes.

Filament APIs


There are two major APIs used.

  • Native C++ API for Android, Linux, macOS, and Windows
  • Java/JNI API for Android, Linux, macOS, and Windows
  • Unlock access to the largest independent learning library in Tech for FREE!
    Get unlimited access to 7500+ expert-authored eBooks and video courses covering every tech area you can think of.
    Renews at €18.99/month. Cancel anytime

Backends

  • OpenGL 4.1+ for Linux, macOS, and Windows
  • OpenGL ES 3.0+ for Android
  • Vulkan 1.0 for Android, Linux, macOS (with MoltenVk) and Windows


google-open-sources-filament-rendering-engine-for-android-img-0

A sample material rendered with Filament.

Source: Github


You can check out the Filament Documentation, for an in-depth explanation of real-time PBR, the graphics capabilities and implementation of Filament.

Google open sources Seurat to bring high precision graphics to Mobile VR
Google releases Android Things library for Google Cloud IoT Core
Google updates biometric authentication for Android P, introduces BiometricPrompt API