SH-2454 Fix for head attachments not casting shadows when in mouselook mode.
parent
967479f903
commit
2b51a7a609
|
|
@ -1613,6 +1613,8 @@ void LLSpatialGroup::checkOcclusion()
|
|||
static LLFastTimer::DeclareTimer FTM_PUSH_OCCLUSION_VERTS("Push Occlusion");
|
||||
static LLFastTimer::DeclareTimer FTM_SET_OCCLUSION_STATE("Occlusion State");
|
||||
static LLFastTimer::DeclareTimer FTM_OCCLUSION_EARLY_FAIL("Occlusion Early Fail");
|
||||
static LLFastTimer::DeclareTimer FTM_OCCLUSION_ALLOCATE("Allocate");
|
||||
static LLFastTimer::DeclareTimer FTM_OCCLUSION_BUILD("Build");
|
||||
|
||||
void LLSpatialGroup::doOcclusion(LLCamera* camera)
|
||||
{
|
||||
|
|
@ -1636,11 +1638,13 @@ void LLSpatialGroup::doOcclusion(LLCamera* camera)
|
|||
|
||||
if (!mOcclusionQuery[LLViewerCamera::sCurCameraID])
|
||||
{
|
||||
LLFastTimer t(FTM_OCCLUSION_ALLOCATE);
|
||||
mOcclusionQuery[LLViewerCamera::sCurCameraID] = sQueryPool.allocate();
|
||||
}
|
||||
|
||||
if (mOcclusionVerts.isNull() || isState(LLSpatialGroup::OCCLUSION_DIRTY))
|
||||
{
|
||||
LLFastTimer t(FTM_OCCLUSION_BUILD);
|
||||
buildOcclusion();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -8300,6 +8300,17 @@ void LLPipeline::generateSunShadow(LLCamera& camera)
|
|||
return;
|
||||
}
|
||||
|
||||
BOOL skip_avatar_update = FALSE;
|
||||
if (!isAgentAvatarValid() || gAgentCamera.getCameraAnimating() || gAgentCamera.getCameraMode() != CAMERA_MODE_MOUSELOOK)
|
||||
{
|
||||
skip_avatar_update = TRUE;
|
||||
}
|
||||
|
||||
if (!skip_avatar_update)
|
||||
{
|
||||
gAgentAvatarp->updateAttachmentVisibility(CAMERA_MODE_THIRD_PERSON);
|
||||
}
|
||||
|
||||
F64 last_modelview[16];
|
||||
F64 last_projection[16];
|
||||
for (U32 i = 0; i < 16; i++)
|
||||
|
|
@ -8413,6 +8424,12 @@ void LLPipeline::generateSunShadow(LLCamera& camera)
|
|||
mShadowFrustPoints[3].clear();
|
||||
}
|
||||
popRenderTypeMask();
|
||||
|
||||
if (!skip_avatar_update)
|
||||
{
|
||||
gAgentAvatarp->updateAttachmentVisibility(gAgentCamera.getCameraMode());
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -9001,6 +9018,11 @@ void LLPipeline::generateSunShadow(LLCamera& camera)
|
|||
}
|
||||
|
||||
popRenderTypeMask();
|
||||
|
||||
if (!skip_avatar_update)
|
||||
{
|
||||
gAgentAvatarp->updateAttachmentVisibility(gAgentCamera.getCameraMode());
|
||||
}
|
||||
}
|
||||
|
||||
void LLPipeline::renderGroups(LLRenderPass* pass, U32 type, U32 mask, BOOL texture)
|
||||
|
|
|
|||
Loading…
Reference in New Issue