Vector4* MeshSkin::getMatrixPalette() const { GP_ASSERT(_matrixPalette); for (size_t i = 0, count = _joints.size(); i < count; i++) { GP_ASSERT(_joints[i]); _joints[i]->updateJointMatrix(getBindShape(), &_matrixPalette[i * PALETTE_ROWS]); } return _matrixPalette; }
C3DVector4* C3DMeshSkin::getMatrixPalette(unsigned int index) { BonePart* part = _parts[index]; std::vector<unsigned int>& indices = part->_indices; unsigned int count = indices.size(); for (unsigned int i = 0; i < count; i++) { unsigned int boneIndex = indices[i]; _joints[boneIndex]->updateJointMatrix(getBindShape(), &_matrixPalette[i * PALETTE_ROWS]); } return _matrixPalette; }