Showing the changes to libraries/render-utils/src/AnimDebugDraw.cpp (1 of 3 files). Show all
Unified · Split
| @@ -187,30 +187,36 @@ void AnimDebugDraw::update() { · 186 unmodified lines | |||
| 187 | for (int i = 0; i < skeleton->getNumJoints(); i++) { | 187 | for (int i = 0; i < skeleton->getNumJoints(); i++) { |
| 188 | AnimPose pose = skeleton->getBindPose(i); | 188 | AnimPose pose = skeleton->getBindPose(i); |
| 189 | 189 | ||
| 190 | v->pos = xform.transform(pose.trans); | 190 | glm::vec3 base = xform.transform(pose.trans); |
| 191 | |||
| 192 | // x-axis | ||
| 193 | v->pos = base; | ||
| 191 | v->rgba = red; | 194 | v->rgba = red; |
| 192 | v++; | 195 | v++; |
| 193 | v->pos = xform.transform(pose.trans + pose.rot * glm::vec3(pose.scale.x, 0.0f, 0.0f)); | 196 | v->pos = base + pose.rot * glm::vec3(1.0f, 0.0f, 0.0f); |
| 194 | v->rgba = red; | 197 | v->rgba = red; |
| 195 | v++; | 198 | v++; |
| 196 | 199 | ||
| 200 | // y-axis | ||
| 197 | v->pos = xform.transform(pose.trans); | 201 | v->pos = xform.transform(pose.trans); |
| 198 | v->rgba = green; | 202 | v->rgba = green; |
| 199 | v++; | 203 | v++; |
| 200 | v->pos = xform.transform(pose.trans + pose.rot * glm::vec3(0.0f, pose.scale.y, 0.0f)); | 204 | v->pos = base + pose.rot * glm::vec3(0.0f, 1.0f, 0.0f); |
| 201 | v->rgba = green; | 205 | v->rgba = green; |
| 202 | v++; | 206 | v++; |
| 203 | 207 | ||
| 204 | v->pos = xform.transform(pose.trans); | 208 | // z-axis |
| 209 | v->pos = base; | ||
| 205 | v->rgba = blue; | 210 | v->rgba = blue; |
| 206 | v++; | 211 | v++; |
| 207 | v->pos = xform.transform(pose.trans + pose.rot * glm::vec3(0.0f, 0.0f, pose.scale.z)); | 212 | v->pos = base + pose.rot * glm::vec3(0.0f, 0.0f, 1.0f); |
| 208 | v->rgba = blue; | 213 | v->rgba = blue; |
| 209 | v++; | 214 | v++; |
| 210 | 215 | ||
| 216 | // line to parent. | ||
| 211 | if (skeleton->getParentIndex(i) >= 0) { | 217 | if (skeleton->getParentIndex(i) >= 0) { |
| 212 | AnimPose parentPose = skeleton->getBindPose(skeleton->getParentIndex(i)); | 218 | AnimPose parentPose = skeleton->getBindPose(skeleton->getParentIndex(i)); |
| 213 | v->pos = xform.transform(pose.trans); | 219 | v->pos = base; |
| 214 | v->rgba = gray; | 220 | v->rgba = gray; |
| 215 | v++; | 221 | v++; |
| 216 | v->pos = xform.transform(parentPose.trans); | 222 | v->pos = xform.transform(parentPose.trans); |