google / filament

Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2
https://google.github.io/filament/
Apache License 2.0
17.63k stars 1.86k forks source link

reason: uniform named "normalUvMatrix" not found #3363

Closed zplh closed 3 years ago

zplh commented 3 years ago

12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "baseColorIndex" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "normalIndex" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "metallicRoughnessIndex" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "aoIndex" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "emissiveIndex" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 W Filament: Parent material does not have double-sided capability. 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "clearCoatIndex" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "clearCoatRoughnessIndex" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "clearCoatNormalIndex" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "baseColorUvMatrix" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "metallicRoughnessUvMatrix" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "normalUvMatrix" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "occlusionUvMatrix" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "emissiveUvMatrix" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "clearCoatUvMatrix" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "clearCoatRoughnessUvMatrix" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in ssize_t filament::UniformInterfaceBlock::getUniformOffset(const char , size_t) const:120 12-14 14:00:27.876 29560 29560 E Filament: reason: uniform named "clearCoatNormalUvMatrix" not found 12-14 14:00:27.876 29560 29560 E Filament: 12-14 14:00:27.876 29560 29560 E Filament: in const SamplerInterfaceBlock::SamplerInfo filament::SamplerInterfaceBlock::getSamplerInfo(const char ) const:110 12-14 14:00:27.876 29560 29560 E Filament: reason: sampler named "normalMap" not found 12-14 14:00:27.876 29560 29560 E Filament:

backtrace: 12-14 14:18:18.884 7393 7393 F DEBUG : #00 pc 0000000000045684 /system/priv-app/MiuiCamera/MiuiCamera.apk!libfilament-jni.so (offset 0x733f000) (filament::MaterialInstance::setParameter(char const, filament::Texture const, filament::TextureSampler const&)+36) (BuildId: 51b0336f96aec8d77e7ebb48fe169b91ef5c2cf0)

romainguy commented 3 years ago

When does this happen and with which version of Filament please?

romainguy commented 3 years ago

And is there more to the logs?

zplh commented 3 years ago

When does this happen and with which version of Filament please?

filament-android-1.7.0.aar sceneform use SceneView.destroyAllResources() appear necessarily crash

zplh commented 3 years ago

And is there more to the logs?

12-14 14:18:18.883 7393 7393 F DEBUG : uid: 10095 12-14 14:18:18.883 7393 7393 F DEBUG : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x8 12-14 14:18:18.883 7393 7393 F DEBUG : Cause: null pointer dereference 12-14 14:18:18.883 7393 7393 F DEBUG : x0 0000000000000000 x1 0000007dc5797850 x2 0000000000000002 x3 0000000000000003 12-14 14:18:18.883 7393 7393 F DEBUG : x4 0000000000000018 x5 000000000000002c x6 fefefefefefefeff x7 7f7f7f7f7f7f7f7f 12-14 14:18:18.883 7393 7393 F DEBUG : x8 0ff884c761f2d387 x9 0ff884c761f2d387 x10 000000009468c7d8 x11 0000007dc0000000 12-14 14:18:18.883 7393 7393 F DEBUG : x12 000000009468c7a8 x13 0000000000000000 x14 0000007ed42fbbe2 x15 0000000100000000 12-14 14:18:18.883 7393 7393 F DEBUG : x16 0000007ed42f79b8 x17 0000007ed42ebffc x18 0000007ffbd93800 x19 0000007d9b2ffb80 12-14 14:18:18.883 7393 7393 F DEBUG : x20 0000000000000000 x21 0000000000000000 x22 0000007ffbd94018 x23 0000007dc5740180 12-14 14:18:18.883 7393 7393 F DEBUG : x24 0000007dc48f34d0 x25 0000000000000000 x26 0000000000000000 x27 0000007ffbd94128 12-14 14:18:18.883 7393 7393 F DEBUG : x28 0000000000000000 x29 0000000000000000 12-14 14:18:18.883 7393 7393 F DEBUG : lr 0000007dc0b65684 sp 0000007ffbd93b70 pc 0000007dc0b65684 pst 0000000060001000 12-14 14:18:18.884 7393 7393 F DEBUG : backtrace: 12-14 14:18:18.884 7393 7393 F DEBUG : #00 pc 0000000000045684 /system/priv-app/MiuiCamera/MiuiCamera.apk!libfilament-jni.so (offset 0x733f000) (filament::MaterialInstance::setParameter(char const, filament::Texture const, filament::TextureSampler const&)+36) (BuildId: 51b0336f96aec8d77e7ebb48fe169b91ef5c2cf0)

romainguy commented 3 years ago

This is a very old version of Filament, not much we can do about it but it looks like something is trying to use the wrong material. Could be a sceneform or app bug.

zplh commented 3 years ago

This is a very old version of Filament, not much we can do about it but it looks like something is trying to use the wrong material. Could be a sceneform or app bug.

I want to know emissiveUvMatrix/clearCoatUvMatrix/clearCoatNormalUvMatrix... where are they? in Filament or sceneform ?

romainguy commented 3 years ago

There are defined in the materials of Filament's glTF loader. Something is trying to render a glTF asset without the proper material.