diff --git a/android/filament-android/CMakeLists.txt b/android/filament-android/CMakeLists.txt index b64ec5c884..0461b677c0 100644 --- a/android/filament-android/CMakeLists.txt +++ b/android/filament-android/CMakeLists.txt @@ -13,6 +13,10 @@ add_library(filament STATIC IMPORTED) set_target_properties(filament PROPERTIES IMPORTED_LOCATION ${FILAMENT_DIR}/lib/${ANDROID_ABI}/libfilament.a) +add_library(filament-generatePrefilterMipmap STATIC IMPORTED) +set_target_properties(filament-generatePrefilterMipmap PROPERTIES IMPORTED_LOCATION + ${FILAMENT_DIR}/lib/${ANDROID_ABI}/libfilament-generatePrefilterMipmap.a) + add_library(backend STATIC IMPORTED) set_target_properties(backend PROPERTIES IMPORTED_LOCATION ${FILAMENT_DIR}/lib/${ANDROID_ABI}/libbackend.a) @@ -120,6 +124,7 @@ add_library(filament-jni SHARED # Ordering is significant in the following list. The PRIVATE qualifier prevents transitive deps. target_link_libraries(filament-jni + PRIVATE filament-generatePrefilterMipmap PRIVATE filament PRIVATE backend PRIVATE filaflat diff --git a/android/filament-android/src/main/cpp/Texture.cpp b/android/filament-android/src/main/cpp/Texture.cpp index ea12b66b67..159c5729e2 100644 --- a/android/filament-android/src/main/cpp/Texture.cpp +++ b/android/filament-android/src/main/cpp/Texture.cpp @@ -23,16 +23,20 @@ #include #endif -#include #include #include #include +#include + +#include + #include "common/CallbackUtils.h" #include "common/NioUtils.h" #include "private/backend/VirtualMachineEnv.h" + using namespace filament; using namespace backend; @@ -421,7 +425,7 @@ Java_com_google_android_filament_Texture_nGeneratePrefilterMipmap(JNIEnv *env, j Engine *engine = (Engine *) nativeEngine; jint *faceOffsetsInBytes = env->GetIntArrayElements(faceOffsetsInBytes_, nullptr); - Texture::FaceOffsets faceOffsets; + filament::FaceOffsets faceOffsets; std::copy_n(faceOffsetsInBytes, 6, faceOffsets.offsets); env->ReleaseIntArrayElements(faceOffsetsInBytes_, faceOffsetsInBytes, JNI_ABORT); @@ -444,10 +448,11 @@ Java_com_google_android_filament_Texture_nGeneratePrefilterMipmap(JNIEnv *env, j (uint32_t) left, (uint32_t) top, (uint32_t) stride, callback->getHandler(), &JniBufferCallback::postToJavaAndDestroy, callback); - Texture::PrefilterOptions options; + filament::PrefilterOptions options; options.sampleCount = sampleCount; options.mirror = mirror; - texture->generatePrefilterMipmap(*engine, std::move(desc), faceOffsets, &options); + + filament::generatePrefilterMipmap(texture, *engine, std::move(desc), faceOffsets, &options); return 0; }