diff options
Diffstat (limited to 'indra/newview/llspatialpartition.cpp')
-rw-r--r-- | indra/newview/llspatialpartition.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/indra/newview/llspatialpartition.cpp b/indra/newview/llspatialpartition.cpp index 191cdac981..0f9f35dc57 100644 --- a/indra/newview/llspatialpartition.cpp +++ b/indra/newview/llspatialpartition.cpp @@ -3121,9 +3121,11 @@ void renderRaycast(LLDrawable* drawablep) LLVOVolume* vobj = drawablep->getVOVolume(); LLVolume* volume = vobj->getVolume(); + bool transform = true; if (drawablep->isState(LLDrawable::RIGGED)) { - volume = NULL; + volume = vobj->getRiggedVolume(); + transform = false; } if (volume) @@ -3140,8 +3142,16 @@ void renderRaycast(LLDrawable* drawablep) glMultMatrixf((F32*) vobj->getRelativeXform().mMatrix); LLVector3 start, end; - start = vobj->agentPositionToVolume(gDebugRaycastStart); - end = vobj->agentPositionToVolume(gDebugRaycastEnd); + if (transform) + { + start = vobj->agentPositionToVolume(gDebugRaycastStart); + end = vobj->agentPositionToVolume(gDebugRaycastEnd); + } + else + { + start = gDebugRaycastStart; + end = gDebugRaycastEnd; + } LLVector4a starta, enda; starta.load3(start.mV); |