Quote Originally Posted by worldofneil View Post
Possibly, but it's not that complicated to put a character together. They've got the basic engine already built for "assembling" characters so it's really just "character 1, head 5, skin 32, weapon 18,..." etc. And with the amount of gear changes in this game, how often are you likely to run into the same person with exactly the same gear?
Just a quick rundown of rendering. Assuming you have your fps capped at 60fps, that means there are 60 render iterations every second. Rendering a character without caching goes something like this:

1. Compile head mesh based on any mesh changes (chin, and nose are probably the only options)
2. Apply height transform.
3. Apply rotation + translation based on current animation
3. Render with appropriate textures for eyes, face paint, etc.
4. Load appropriate hair mesh.
5. Apply transforms
6. Render with appropriate color texture.
7. Load appropriate armor meshes.
6. Apply transforms based on size, stature, position, rotation, and animation offset.
7. Render with appropriate textures.

With caching you apply size and stature transforms once, and cache it in vram (graphics card memory.) And then just apply animation transforms to the cached mesh. It cuts out 2-3 operations per mesh (there's a mesh for the head, the hair, and every armor slot other than rings and soul crystal.) That's what, 10~ meshes to render? That saves any where from 20-30 operations per character rendered per render tick. Or roughly 1200 - 1800 operations per second per character. XD

Rendering pipelines are all about optimizations. That's why it would be surprising if they don't already cache these things.