Filamat public headers were including a private header. This PR fixes this problem. It also forces filamat to always be compiled to avoid breaking filamat without noticing. The flag `-l` is not available anymore in build.sh as a result.
89 lines
2.8 KiB
Markdown
89 lines
2.8 KiB
Markdown
# Filament sample Android apps
|
|
|
|
This directory contains several sample Android applications that demonstrate how to use the
|
|
Filament APIs:
|
|
|
|
### `hello-triangle`
|
|
|
|
Demonstrates how to setup a rendering surface for Filament:
|
|
|
|

|
|
|
|
### `lit-cube`
|
|
|
|
Demonstrates how to create a light and a mesh with the attributes required for lighting:
|
|
|
|

|
|
|
|
### `image-based-lighting`
|
|
|
|
Demonstrates how to create image-based lights and load complex meshes:
|
|
|
|

|
|
|
|
### `textured-object`
|
|
|
|
Demonstrates how to load and use textures for complex materials:
|
|
|
|

|
|
|
|
### `transparent-rendering`
|
|
|
|
Demonstrates how to render into a transparent `SurfaceView`:
|
|
|
|

|
|
|
|
### `texture-view`
|
|
|
|
Demonstrates how to render into a `TextureView` instead of a `SurfaceView`:
|
|
|
|

|
|
|
|
### `material-builder`
|
|
|
|
Demonstrates how to programatically generate Filament materials, as opposed to compiling them on the
|
|
host machine:
|
|
|
|

|
|
|
|
## Prerequisites
|
|
|
|
Before you start, make sure to read [Filament's README](../../README.md). You need to be able to
|
|
compile Filament's native library and Filament's AAR for this project. The easiest way to proceed
|
|
is to install all the required dependencies and to run the following commands at the root of the
|
|
source tree:
|
|
|
|
```
|
|
$ ./build.sh -p desktop -i release
|
|
$ ./build.sh -p android release
|
|
```
|
|
|
|
This will build all the native components and the AAR required by this sample application.
|
|
|
|
If you do not use the build script, you must set the `filament_tools_dir` property when invoking
|
|
Gradle, either from the command line or from `local.properties`. This property must point to the
|
|
distribution/install directory for desktop (produced by make/ninja install). This directory must
|
|
contain `bin/matc` and `bin/cmgen`.
|
|
|
|
Example:
|
|
```
|
|
$ ./gradlew -Pfilament_tools_dir=../../dist-release assembleDebug
|
|
```
|
|
|
|
## Important: SDK location
|
|
|
|
|
|
Either ensure your `ANDROID_HOME` environment variable is set or make sure each project contains a
|
|
`local.properties` file with the `sdk.dir` property pointing to your installation of the Android
|
|
SDK. This includes the project `filament-android` in the parent directory.
|
|
|
|
## Android Studio
|
|
|
|
You must use Android Studio 3.3 or higher to open these projects.
|
|
|
|
## Compiling
|
|
|
|
To compile and run each sample make sure you have selected the appropriate build variant
|
|
(arm7, arm8, x86 or x86_64). If you are not sure you can simply select the "universal"
|
|
variant which includes all the other ones.
|