One thing you will find is that it takes a while to do the caching.
I've just been looking at optimizing this step myself. I've got a
whole bunch of caching to make my stuff work and it pauses the system
for up to 4.5 seconds on my machine. It seems about 3.6 seconds of
this is the following code ...

In Away3DLite, in SkinVertex.hx, in the update() function you have:

        _position =
controllers[_i].transformMatrix3D.transformVector(_baseVertex);
        _position.scaleBy(weights[_i]);
        _output = _output.add(_position);

This is is run in a loop over all weights for that vertex. I tried to
make sure all vars are local but it doesn't make any difference so it
needs more than that to get any speed increase. Position and output
are both native Vertex3Ds by the way.

Do you know if the native Vertex3Ds are the best way to do things? Is
it faster doing your own inline code instead? Any other ideas? I am
looping over almost 3,000 verts with an average of 4 weights each, so
that's 12,000 of these called per frame cached, hence it is slow (got
something like 50 frames as well). So not looking for miracles, just
putting it out there in case someone has any insane / simple ideas.

You may also find that if you have items parented to bones instead of
actually skinned they won't update their positions correctly. You may
have to manually translate them to their concatenatedMatrix or scene
matrix.

Thanks!

On Feb 12, 8:39 am, gaga <[email protected]> wrote:
> How will bone animation and vertex animation and the difference
> between them both behave in molehill?
>
> I am no expert with the kind of animations. I simply use bone
> animator. Is the extra effort for vertex animation worth with look to
> molehill?
>
> Regards
>
> Volker

Reply via email to