|
group2 0.1.0
CSE 125 Group 2
|
Source data for one mesh of a skinned character rig. More...
#include <RendererTypes.hpp>
Public Attributes | |
| std::vector< ModelVertex > | bindPoseVertices |
| Bind-pose vertices (never deformed CPU-side). | |
| std::vector< BoneInfluence > | boneInfluences |
| Parallel to bindPoseVertices. Must be same size. | |
| std::vector< uint32_t > | indices |
| Triangle list (3 indices per triangle). | |
Source data for one mesh of a skinned character rig.
Game.cpp constructs a std::vector<RigMeshSource> from CharacterRig::meshes() once (at startup, after the rig FBX loads) and passes it to setSkinnedRig(). The renderer copies everything it needs to GPU buffers in that one call and never touches the CPU-side data afterwards.
All three vectors describe the same triangle mesh in bind pose:
| std::vector<ModelVertex> RigMeshSource::bindPoseVertices |
Bind-pose vertices (never deformed CPU-side).
| std::vector<BoneInfluence> RigMeshSource::boneInfluences |
Parallel to bindPoseVertices. Must be same size.
| std::vector<uint32_t> RigMeshSource::indices |
Triangle list (3 indices per triangle).