Steps
1) Calculate animation & anim blending in CPU and generate bone palette matrices
2) In compute shader pre-transform all vertices for skinned meshes with bone matrices
=> Theorem is that this reduces needed calculations, especially since, every mesh need to be drawn from multiple different camera viewpoints for every frame, upto 45 times.
Trivia: When single scene is drawn, full scene is drawn basically 45 times
cube map 6 sides
water x2/mirror/normal per side
nested water x2 for mirror
thus 6 per side
=> 36 total
mirror
reflection
nested water x2 for mirror
=> 3 total
water
2x times (reflection/refraction)
=> 2 total
shadow map
3 casdades
=> 3 total
normal scene
=> 1 total
Thus approximately 45 times per frame. However, cheating, thus not drawing everything on every frame. But still 20+ times per frame averages
=> However, this means also that mesh vertices must be multiplied per for every animated mesh, to store pre-calculated verticies. Overhead of this is potentially eating away benefits for big meshes with thousands of vertices
Steps 1) Calculate animation & anim blending in CPU and generate bone palette matrices 2) In compute shader pre-transform all vertices for skinned meshes with bone matrices
=> Theorem is that this reduces needed calculations, especially since, every mesh need to be drawn from multiple different camera viewpoints for every frame, upto 45 times.
Trivia: When single scene is drawn, full scene is drawn basically 45 times
Thus approximately 45 times per frame. However, cheating, thus not drawing everything on every frame. But still 20+ times per frame averages
=> However, this means also that mesh vertices must be multiplied per for every animated mesh, to store pre-calculated verticies. Overhead of this is potentially eating away benefits for big meshes with thousands of vertices