I actually was able to move some stuff around in our loading order that got all our animated meshes to load and animated before we needed to show them to the user so that worked around my issue - but if I have to revisit this I'll give the mesh.upload a try.
I'm still working on performance optimizations for low end iOS devices. I'm running scout and looking at where our most of our frame is going. Scout isn't the greatest profiler and sometimes gives bad data but two things I noticed:
1) About 20%-30% of our frame is going to Mesh3D.get inView. Is there any way to not compute this on a scene? In our game, we know what's on/off screen at all times with the way we have structured the game so it would be nice to just set a visibility flag and not spend any time computing it. Obviously that puts the onus on the user code to handle visibility correctly so we're not wasting rendering time on off-screen meshes, but if it's going to chew up so much frame time computing visibility then this seems like a reasonable place to gain some milliseconds back for us. Do you have any suggestions on how to accomplish that or to reduce this time?
2) About 50% of our frame is going to the SkinModifier.draw call so that is where I'd like to focus my optimization efforts but I'm not sure what all to do here without knowing how the skinning is implemented. In other engines I've worked with, reducing bones would have a near-linear reduction in the animation skinning time, but that doesn't seem to have much effect in our Flare. Also, we essentially animate between a set of poses. There seems to be a pretty high fixed cost for having a mesh animated even if it's not updated in a frame. Is there a way to indicate to the skinning shader to not re-compute every frame when there isn't an animation actually affecting the mesh - or once we start animating do we pay the cost of the animation shader regardless?
I've searched around and didn't find much in docs/google for optimizing flare3d animated meshes, but maybe you have a doc on this already I missed - please direct me to any docs you have too and sorry if I missed them
And if you could shed a little light on the top things to look at for optimizing animated meshes or any tricks I could try to speed up animations that would be really helpful.