Dolphin, the GameCube and Wii emulator - Forums

Full Version: Cache looped animations
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
For games like SMG 1 & 2, would it be possible to have dolphin cache looped animations? These would include spinning coins, star bits, walking animations, space fireballs (pretty much anything that runs in a cycle). I've noticed my computer only lags when there are may animated objects on screen, but runs perfectly when there aren't. The amount of polys on the screen have no affect on my framerate.
No.
I don't think animation can affect performance slowdown or anything. It was just polygons and fancy effects that caused slowdowns.
With any type of skeletal or bone based animation the vertex positions for the mesh are calculated inside the shader by multiplying the vertex bind position by a 4x4 transformation matrix representing the position and orientation of the bone (and possibly any skin weights).

This is done ontop of a scene graph traversal which takes into account object position and any other transformations and offsets required for the object.

Because of the way this works all you would be able to cache is a second copy of the matrix and there's no way of stopping it being recalculated without completely breaking the game.
So all you would get out of it is absolutely no gain in framerate and double memory usage.
My god....my hope in humanity has just been restored.
(08-12-2011, 07:58 AM)NaturalViolence Wrote: [ -> ]My god....my hope in humanity has just been restored.

Yea! Big Grin
(08-12-2011, 07:58 AM)NaturalViolence Wrote: [ -> ]My god....my hope in humanity has just been restored.

That's what I was thinking as well Big Grin
Me too. And then I realized I have absolutely no idea what he's talking about, but it sounds right.
Hm, it actually makes sense. But at first I thought it was neobrain or NV talking ^^
Sorry too much mathematical/gamedev jargon I guess?

Still you get the idea.

All you can cache is the final transformation, but the engine will still recalculate it per-frame regardless.
Therefore copying it nets you one redundant copy of the transformation and no improvement in speed.
Pages: 1 2