Texture animation (via uOffset, vOffset, etc.) is very slow since it causes the materials to be flagged as dirty. Setting scene.blockMaterialDirtyMechanism to true will make the speed much faster, but disabling this globally has potentially undesirable side effects for the rest of the scene. And assigning blockMaterialDirtyMechanism to true just before the updates and then reverting to false afterwards is not viable since this causes all materials to be flagged as dirty.
Is there some way to allow fast UV updates without having to force blockMaterialDirtyMechanism to be true globally for the entire duration of the scene? Technically I think the private field _blockMaterialDirtyMechanism could be manually updated, but this is not a stable solution.
Yeah I think that’s a decent solution for my case. Since it’s an immediately obvious solution, it might benefit from some discoverability in the docs somewhere.