Holiday Gift - Experimental Worker Animation!


Version 2.34.0 includes a new property for 3DObject - worker animation! Now the CPU work for animating complex models can be done on a separate thread/CPU from the main C3 runtime thread, allowing for more complex models to be animated while keeps a nice 60fps.

This is an experimental feature, so please give feedback on how it works in your case.

Current recommendations for animation worker mode:

  • Only enable for 3DObject models which are higher poly count (500+ polygons)
  • Only enable for animated models
  • Use a lower frame rate for the animation (e.g. 30fps, 20 fps)
    • Set animation rate after model is loaded, using the on loaded ACE

In one example on a desktop PC, I can get 2-3X more models animating at 60fps when using worker animation, compared to not using worker animation. 

Happy Holidays!

Files

3DObject-2-34-0.c3addon 98 kB
Dec 24, 2022

Get Construct 3 3DObject Plugin

Download NowName your own price

Comments

Log in with itch.io to leave a comment.

Awesome gift :D .
Regrettably though I can't get this to work, even with the GLBExample-2-14-1 file. When ticking worker animation, the model doesn't show up.

Errors appear in console (they don't show if the F12 debug starts open)
"Uncaught ReferenceError: target is not defined
    at updateAnimation
    at updateAnimationPolygons
    at MessagePort.OnMessage"

I can get it to show if I click the 'pause' button, but can't get it to start playing any animations. Is there more setup required? (Made sure project worker mode was turned on too)

(1 edit) (+1)

Thanks for the bug report, I appreciate it. Based on this report, I have found that for worker animation, there is a currently a bug with animation blending. For now set animation blending to 0 for worker animation. I will work on a fix for this.