Morph targets on Samsung S9 (Exynos 9810) is broken

Could you copy the full error message with the shader code provided ??? this would be awesome

My guess is your morph target can not run in a texture on this phone. A screenshot of the full webgl2report should help indentifying the limits.

It needs support for:

textureFloat
MAX_VERTEX_TEXTURE_IMAGE_UNITSs > 0

I wonder if the device supports float texture somehow

mix-ar.ru-1659620290765.zip (13.1 КБ)
Clean log
Errors on PC and Samsung S9
BABYLON.MorphTargetManager.EnableTextureStorage = false;

Unfortunately the only solution is to reduce the number of morphtargets in use to not go over the current limit of 15 attributes you have :frowning: as your device does not support them in textures

Same model works fine in THREE.js

It is then running in texture mode there.

Could you let me know what you see on this device with this playground? Babylon.js Playground

true|true|16|256

This is getting weirder… as it means this should be true Fixed formating with Prettier · BabylonJS/Babylon.js@f8b60a7 · GitHub and so it should work in texture mode without glitches…

Can you ensure this is set to true:

BABYLON.MorphTargetManager.EnableTextureStorage = true;

and all morphtargetmanagers in the scene are useTextureToStoreTargets = true as well as isUsingTextureForTargets = true ?

BABYLON.MorphTargetManager.EnableTextureStorage = true;
all morphtargetmanagers in the scene are useTextureToStoreTargets = true & isUsingTextureForTargets = true

Could you also check that all skeletons are isUsingTextureForMatrices = true in your scene ?

This is so strange I would have bet this could only happen if the device was not using texture for morph targets :frowning: can you confirm you check with the inspector on the broken device and not on your laptop or desktop ?

all skeletons are isUsingTextureForMatrices = true
Can’t find reflector bridge for remote inspector ((

ohhhhh :slight_smile: we would need the result from the device :frowning: maybe use an alert() to display it ?

and did you run this one on the broken device as well Babylon.js Playground ?

all checks from device by ADB + chrome DevTools

@sebavan

  '_vertexCount':2162
  '_textureVertexStride':2
  '_textureWidth':4324
  '_textureHeight':1

Returns to morphs. Find morph in mesh with this state. May be bug with over 4096 texture size?

yup it might totally be :frowning:

Split mesh to 2 by 1k vertexes - same problem
Bug visible only if mesh in camera frustrum

As it is specific to one device, could you check with the chromium folks as well through their bug tracker ?

Same model with blendshapes works correct in THREE.js. Are You sure that chromium bug?

we do not use the texture the same way.

The model actually works on all other browsers in Babylon as well :slight_smile:

@Evgeni_Popov @bghgary just in case, can you repro ?