In my case the problem is that some models have more than 4 skinned vertex in some joints. Until 4.21 the engine switched to CPU Skinning (I already noticed a heavy performance hit when using those conflicting models, but I didn’t know the cause) but with 4.21 they are invisible.
You can check the changes on USkinnedMeshComponent::CreateRenderState_Concurrent(), I compared it with 4.19 version and it’s different, and there is a new comment:
don’t silently enable CPU skinning for unsupported meshes, just do not render them, so their absence can be noticed and fixed.
I don’t remember exactly where but I saw in the code that it’s not applicable to ES3.1, that’s why if you switch from ES2 to ES3.1 those models will work, but I guess you will take a performance hit because the CPU skinning.
I tried to export one of my conflicting models from UE to Maya and changed the max influences to 4, then I reimported it to UE and it was visible on Android (but broken, because the influences from those vertex are lost).
So UE 4.21 is working as expected, the problem is with those models but we didn’t noticed until now because the silently switching to CPU skinning. The solution will be to contact the artist so they can fix them (in my case where assets from Synty Studio, if you have this problem too with their assets join us on their Discord ;D)