Thank you again @Evgeni_Popov for encouraging me to debug deeper!
Tracked this down to ParticleSystems “not being ready” aka not having mesh-emitters set
→ already answered in Screenshot and ParticleSystem
_checkReadiness() {
...
const particleSystems = this.particleSystemList || scene.particleSystems;
for (const particleSystem of particleSystems) {
if (!particleSystem.isReady()) {
returnValue = false;
// particlesystem
isReady() {
if (!this.emitter || ... ) {
return false;
}
→ happens when emitter is BABYLON.Vector3
Solution/Workaround
Setting dummy-mesh for all (in my case unused) ParticleSystems in scene, before calling BABYLON.ScreenshotTools.CreateScreenshotUsingRenderTargetAsync
scene.particleSystems.forEach((ps) => {
ps.emitter = dummy_mesh
})
Not quite clear to me, why this happened exactly since v7.32.2 …
Some graceful failing would have also been helpful, not launching infinite setTimeout() …
Thanks again for your help and great work with babylon.js!