Jump to content

Load animation to skinned mesh in async thread


photo

Recommended Posts

Posted

Hi,

in Unigine 2.6.1 i load animation to skinned mesh in asyn thread and in same time i modify boned in main thread. It works fine.

Now in Unigine 2.7.0 this approach cause assert error in:

 	Unigine_x64d.dll!MeshSkinned::getLayerBoneTransform(int layer, int bone, int instance) Line 2239	C++
 	Unigine_x64d.dll!ObjectMeshSkinned::getLayerBoneTransform(int layer, int bone) Line 649	C++
 	Unigine_x64d.dll!Unigine::ObjectMeshSkinnedInterface::getLayerBoneTransform(int layer, int bone) Line 464	C++

Expression: index < size_t(length) && "Vector::operator[]: bad index"

I loading around 100+ animations in async thread by calling this methods:

ObjectMeshSkinned body;
int layer = body.addLayer();
int animId = body.addAnimation("name");
body.setAnimation(layer, animId);

Did you change something in load animation?

Can you tell me, which index go wrong?

I will try to create test scene for it, but i cannot reproduce now.

Thanks

  • 3 weeks later...
Posted

This is very tricky.

I try separate code, that can cause it and every testing scene working fine.

So far it happen only in ours heavy code...

×
×
  • Create New...