Lock and unlock children currently being animated by jointcontroller

i have a really big dungeon by now, and it's really starting to really slow the game down. i can't lock the whole dungeon as there are moving parts (doors, spikes), and because of the performance, i can't lock nothing.

my plan is now to lock everything, unlock it while it's moving, then lock it again. but how to determine which parts are moving and which are not? a joint is assigned to vertices, not to the meshes that are created by the milkshape importer. any ideas?


Are you using some form of culling?

have you considered splitting up your scenegraph a bit more so that you can lock a branch and forget it?  Also, are you using just lock() or have you looked at the other individual lockXXX methods? 

Are you suggesting to attach the door to the dungeon, then lock the dungeon and not the door

Check first if the trees are the major performance eaters, if they are, then make use of shared nodes to create copies of them, then lock the original model used to create them.

Check first if the trees are the major performance eaters

i did. they aren't.

i've now locked all static parts of the dungeon and am going to unlock/lock all moving parts before/after their animations. it helped, but there is still something else lowering the fps.
i'll sherlock a bit...

Wonder if renanse actually means to create a locked branch and an unlocked branch.

Seems like the problem might be laying somewhere else…

If I'm not mistaken, if you unlock and lock your meshes all of the time (using lockMeshes() which is called my lock()), you will regenerate your display lists all of the time. That will probably be a major bottleneck. Try not using lockMeshes() and just lock bounds, transforms and stuff like that.

i'm locking/unlock the groups only when animations start or end