mirror of
https://github.com/overte-org/overte.git
synced 2025-04-19 13:43:49 +02:00
AnimDebugDraw Removed unused drawing code.
This commit is contained in:
parent
fe683edb66
commit
e2f031e77f
2 changed files with 0 additions and 150 deletions
|
@ -153,30 +153,6 @@ void AnimDebugDraw::shutdown() {
|
|||
}
|
||||
}
|
||||
|
||||
void AnimDebugDraw::addSkeleton(const std::string& key, AnimSkeleton::ConstPointer skeleton, const AnimPose& rootPose, const glm::vec4& color) {
|
||||
_skeletons[key] = SkeletonInfo(skeleton, rootPose, color);
|
||||
}
|
||||
|
||||
void AnimDebugDraw::removeSkeleton(const std::string& key) {
|
||||
_skeletons.erase(key);
|
||||
}
|
||||
|
||||
void AnimDebugDraw::addAnimNode(const std::string& key, AnimNode::ConstPointer animNode, const AnimPose& rootPose, const glm::vec4& color) {
|
||||
_animNodes[key] = AnimNodeInfo(animNode, rootPose, color);
|
||||
}
|
||||
|
||||
void AnimDebugDraw::removeAnimNode(const std::string& key) {
|
||||
_animNodes.erase(key);
|
||||
}
|
||||
|
||||
void AnimDebugDraw::addRelativePoses(const std::string& key, AnimSkeleton::ConstPointer skeleton, const AnimPoseVec& poses, const AnimPose& rootPose, const glm::vec4& color) {
|
||||
_relativePoses[key] = PosesInfo(skeleton, poses, rootPose, color);
|
||||
}
|
||||
|
||||
void AnimDebugDraw::removeRelativePoses(const std::string& key) {
|
||||
_relativePoses.erase(key);
|
||||
}
|
||||
|
||||
void AnimDebugDraw::addAbsolutePoses(const std::string& key, AnimSkeleton::ConstPointer skeleton, const AnimPoseVec& poses, const AnimPose& rootPose, const glm::vec4& color) {
|
||||
_absolutePoses[key] = PosesInfo(skeleton, poses, rootPose, color);
|
||||
}
|
||||
|
@ -347,33 +323,6 @@ void AnimDebugDraw::update() {
|
|||
// figure out how many verts we will need.
|
||||
int numVerts = 0;
|
||||
|
||||
// AJT: FIX ME
|
||||
/*
|
||||
for (auto& iter : _animNodes) {
|
||||
AnimNode::ConstPointer& animNode = std::get<0>(iter.second);
|
||||
auto poses = animNode->getPosesInternal();
|
||||
numVerts += poses.size() * VERTICES_PER_BONE;
|
||||
auto skeleton = animNode->getSkeleton();
|
||||
for (size_t i = 0; i < poses.size(); i++) {
|
||||
auto parentIndex = skeleton->getParentIndex(i);
|
||||
if (parentIndex >= 0) {
|
||||
numVerts += VERTICES_PER_LINK;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (auto& iter : _relativePoses) {
|
||||
AnimSkeleton::ConstPointer& skeleton = std::get<0>(iter.second);
|
||||
numVerts += skeleton->getNumJoints() * VERTICES_PER_BONE;
|
||||
for (int i = 0; i < skeleton->getNumJoints(); i++) {
|
||||
auto parentIndex = skeleton->getParentIndex(i);
|
||||
if (parentIndex >= 0) {
|
||||
numVerts += VERTICES_PER_LINK;
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
for (auto& iter : _absolutePoses) {
|
||||
AnimSkeleton::ConstPointer& skeleton = std::get<0>(iter.second);
|
||||
numVerts += skeleton->getNumJoints() * VERTICES_PER_BONE;
|
||||
|
@ -396,88 +345,6 @@ void AnimDebugDraw::update() {
|
|||
Vertex* verts = (Vertex*)data._vertexBuffer->editData();
|
||||
Vertex* v = verts;
|
||||
|
||||
// AJT: FIXME
|
||||
/*
|
||||
// draw animNodes
|
||||
for (auto& iter : _animNodes) {
|
||||
AnimNode::ConstPointer& animNode = std::get<0>(iter.second);
|
||||
AnimPose rootPose = std::get<1>(iter.second);
|
||||
if (animNode->_skeleton) {
|
||||
int hipsIndex = animNode->_skeleton->nameToJointIndex("Hips");
|
||||
if (hipsIndex >= 0) {
|
||||
rootPose.trans -= animNode->_skeleton->getRelativeBindPose(hipsIndex).trans;
|
||||
}
|
||||
}
|
||||
glm::vec4 color = std::get<2>(iter.second);
|
||||
|
||||
auto poses = animNode->getPosesInternal();
|
||||
|
||||
auto skeleton = animNode->getSkeleton();
|
||||
|
||||
std::vector<AnimPose> absAnimPose;
|
||||
absAnimPose.resize(skeleton->getNumJoints());
|
||||
|
||||
for (size_t i = 0; i < poses.size(); i++) {
|
||||
|
||||
auto parentIndex = skeleton->getParentIndex(i);
|
||||
if (parentIndex >= 0) {
|
||||
absAnimPose[i] = absAnimPose[parentIndex] * poses[i];
|
||||
} else {
|
||||
absAnimPose[i] = poses[i];
|
||||
}
|
||||
|
||||
const float radius = BONE_RADIUS / (absAnimPose[i].scale.x * rootPose.scale.x);
|
||||
addBone(rootPose, absAnimPose[i], radius, v);
|
||||
|
||||
if (parentIndex >= 0) {
|
||||
assert((size_t)parentIndex < poses.size());
|
||||
// draw line to parent
|
||||
addLink(rootPose, absAnimPose[i], absAnimPose[parentIndex], radius, color, v);
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
// AJT: FIX ME
|
||||
/*
|
||||
// draw relative poses
|
||||
for (auto& iter : _relativePoses) {
|
||||
AnimSkeleton::ConstPointer& skeleton = std::get<0>(iter.second);
|
||||
AnimPoseVec& poses = std::get<1>(iter.second);
|
||||
AnimPose rootPose = std::get<2>(iter.second);
|
||||
int hipsIndex = skeleton->nameToJointIndex("Hips");
|
||||
if (hipsIndex >= 0) {
|
||||
rootPose.trans -= skeleton->getRelativeBindPose(hipsIndex).trans;
|
||||
}
|
||||
glm::vec4 color = std::get<3>(iter.second);
|
||||
|
||||
std::vector<AnimPose> absAnimPose;
|
||||
absAnimPose.resize(skeleton->getNumJoints());
|
||||
|
||||
for (int i = 0; i < skeleton->getNumJoints(); i++) {
|
||||
const AnimPose& pose = poses[i];
|
||||
|
||||
const float radius = BONE_RADIUS / (pose.scale.x * rootPose.scale.x);
|
||||
|
||||
auto parentIndex = skeleton->getParentIndex(i);
|
||||
if (parentIndex >= 0) {
|
||||
absAnimPose[i] = absAnimPose[parentIndex] * pose;
|
||||
} else {
|
||||
absAnimPose[i] = pose;
|
||||
}
|
||||
|
||||
// draw bone
|
||||
addBone(rootPose, absAnimPose[i], radius, v);
|
||||
|
||||
// draw link to parent
|
||||
if (parentIndex >= 0) {
|
||||
assert(parentIndex < skeleton->getNumJoints());
|
||||
addLink(rootPose, absAnimPose[i], absAnimPose[parentIndex], radius, color, v);
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
// draw absolute poses
|
||||
for (auto& iter : _absolutePoses) {
|
||||
AnimSkeleton::ConstPointer& skeleton = std::get<0>(iter.second);
|
||||
|
|
|
@ -29,18 +29,6 @@ public:
|
|||
|
||||
void shutdown();
|
||||
|
||||
// draw a skeleton bind pose
|
||||
void addSkeleton(const std::string& key, AnimSkeleton::ConstPointer skeleton, const AnimPose& rootPose, const glm::vec4& color);
|
||||
void removeSkeleton(const std::string& key);
|
||||
|
||||
// draw the interal poses for a specific animNode
|
||||
void addAnimNode(const std::string& key, AnimNode::ConstPointer animNode, const AnimPose& rootPose, const glm::vec4& color);
|
||||
void removeAnimNode(const std::string& key);
|
||||
|
||||
// draw a set of poses with a skeleton
|
||||
void addRelativePoses(const std::string& key, AnimSkeleton::ConstPointer skeleton, const AnimPoseVec& poses, const AnimPose& rootPose, const glm::vec4& color);
|
||||
void removeRelativePoses(const std::string& key);
|
||||
|
||||
void addAbsolutePoses(const std::string& key, AnimSkeleton::ConstPointer skeleton, const AnimPoseVec& poses, const AnimPose& rootPose, const glm::vec4& color);
|
||||
void removeAbsolutePoses(const std::string& key);
|
||||
|
||||
|
@ -53,13 +41,8 @@ protected:
|
|||
|
||||
static gpu::PipelinePointer _pipeline;
|
||||
|
||||
typedef std::tuple<AnimSkeleton::ConstPointer, AnimPose, glm::vec4> SkeletonInfo;
|
||||
typedef std::tuple<AnimNode::ConstPointer, AnimPose, glm::vec4> AnimNodeInfo;
|
||||
typedef std::tuple<AnimSkeleton::ConstPointer, AnimPoseVec, AnimPose, glm::vec4> PosesInfo;
|
||||
|
||||
std::unordered_map<std::string, SkeletonInfo> _skeletons;
|
||||
std::unordered_map<std::string, AnimNodeInfo> _animNodes;
|
||||
std::unordered_map<std::string, PosesInfo> _relativePoses;
|
||||
std::unordered_map<std::string, PosesInfo> _absolutePoses;
|
||||
|
||||
// no copies
|
||||
|
|
Loading…
Reference in a new issue