From 913527eaa3a50923540b928e714dc51ecd7d2536 Mon Sep 17 00:00:00 2001 From: David Rowe Date: Mon, 16 Mar 2015 15:47:54 -0700 Subject: [PATCH] Calculate head height based on skeleton model mesh if no head model This fixes the problem of some skeleton models with heads having display names rendering through them. --- interface/src/avatar/Avatar.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/interface/src/avatar/Avatar.cpp b/interface/src/avatar/Avatar.cpp index ad5dda9f18..a340a4622c 100644 --- a/interface/src/avatar/Avatar.cpp +++ b/interface/src/avatar/Avatar.cpp @@ -1017,10 +1017,11 @@ float Avatar::getHeadHeight() const { if (!extents.isEmpty()) { return extents.maximum.y - extents.minimum.y; } + + extents = _skeletonModel.getMeshExtents(); glm::vec3 neckPosition; - glm::vec3 headPosition; - if (_skeletonModel.getNeckPosition(neckPosition) && _skeletonModel.getHeadPosition(headPosition)) { - return glm::distance(neckPosition, headPosition); + if (!extents.isEmpty() && _skeletonModel.getNeckPosition(neckPosition)) { + return extents.maximum.y / 2.0f - neckPosition.y + _position.y; } const float DEFAULT_HEAD_HEIGHT = 0.1f; return DEFAULT_HEAD_HEIGHT;