* add support for AHardwareBuffer to the java bindings Texture.setEXternalIamge() now can take a AHArdwreBuffer Java object as a parameter. * add an API to set the priority of the Skybox by default the skybox is always drawn last (priority 7) in order to reduce overdraw. however, when depth culling is not enabled, it needs to be drawn first. The new Builder::priority() allows to set an arbitrary priority for the skybox. * add rendertarget support for external textures This was in fact mostly already supported, we just were artificially preventing that usage. It is supported by the EGL_external_image extension. It's the responsibility of the caller/user to not attempt to use an incompatible format, which has undefined behavior. FIXES=[466395306] * add a new android sample to test the AHardwareBuffer as render target --------- Co-authored-by: Powei Feng <powei@google.com>
54 lines
1.3 KiB
Groovy
54 lines
1.3 KiB
Groovy
plugins {
|
|
id 'com.android.application'
|
|
id 'kotlin-android'
|
|
id 'filament-tools-plugin'
|
|
}
|
|
|
|
project.ext.isSample = true
|
|
|
|
kotlin {
|
|
jvmToolchain(versions.jdk)
|
|
}
|
|
|
|
filamentTools {
|
|
materialInputDir = project.layout.projectDirectory.dir("src/main/materials")
|
|
materialOutputDir = project.layout.projectDirectory.dir("src/main/assets/materials")
|
|
}
|
|
|
|
clean.doFirst {
|
|
delete "src/main/assets"
|
|
}
|
|
|
|
android {
|
|
namespace 'com.google.android.filament.texturetarget'
|
|
|
|
compileSdkVersion versions.compileSdk
|
|
defaultConfig {
|
|
applicationId "com.google.android.filament.texturetarget"
|
|
minSdkVersion 26
|
|
targetSdkVersion versions.targetSdk
|
|
}
|
|
|
|
// NOTE: This is a workaround required because the AGP task collectReleaseDependencies
|
|
// is not configuration-cache friendly yet; this is only useful for Play publication
|
|
dependenciesInfo {
|
|
includeInApk = false
|
|
}
|
|
|
|
// We use the .filamat extension for materials compiled with matc
|
|
// Telling aapt to not compress them allows to load them efficiently
|
|
aaptOptions {
|
|
noCompress 'filamat', 'ktx'
|
|
}
|
|
|
|
compileOptions {
|
|
sourceCompatibility versions.jdk
|
|
targetCompatibility versions.jdk
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation deps.kotlin
|
|
implementation project(':filament-android')
|
|
}
|