diff options
author | Andrey Lihatskiy <alihatskiy@productengine.com> | 2024-06-11 06:56:31 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-11 06:56:31 +0300 |
commit | e6a34dad9594f3ae88736ca55cfada3d5f8e1819 (patch) | |
tree | d5b498f2a73eb6709b5c24241549f854a14b7bb6 /indra/newview/llreflectionmap.cpp | |
parent | 8f6e50ed6a8b2a3f7b2a173bf7c535aac13f22b5 (diff) | |
parent | ee49b3b045e366aec466f46743214386d7fecb21 (diff) |
Merge pull request #1689 from secondlife/marchcat/c-merge
Release (Materials featurette) -> Maint C sync
Diffstat (limited to 'indra/newview/llreflectionmap.cpp')
-rw-r--r-- | indra/newview/llreflectionmap.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/indra/newview/llreflectionmap.cpp b/indra/newview/llreflectionmap.cpp index 90a2f30c92..2604c2ba53 100644 --- a/indra/newview/llreflectionmap.cpp +++ b/indra/newview/llreflectionmap.cpp @@ -49,7 +49,7 @@ LLReflectionMap::~LLReflectionMap() } } -void LLReflectionMap::update(U32 resolution, U32 face) +void LLReflectionMap::update(U32 resolution, U32 face, bool force_dynamic, F32 near_clip, bool useClipPlane, LLPlane clipPlane) { LL_PROFILE_ZONE_SCOPED_CATEGORY_DISPLAY; mLastUpdateTime = gFrameTimeSeconds; @@ -63,7 +63,10 @@ void LLReflectionMap::update(U32 resolution, U32 face) { resolution /= 2; } - gViewerWindow->cubeSnapshot(LLVector3(mOrigin), mCubeArray, mCubeIndex, face, getNearClip(), getIsDynamic()); + + F32 clip = (near_clip > 0) ? near_clip : getNearClip(); + + gViewerWindow->cubeSnapshot(LLVector3(mOrigin), mCubeArray, mCubeIndex, face, clip, getIsDynamic() || force_dynamic, useClipPlane, clipPlane); } void LLReflectionMap::autoAdjustOrigin() @@ -165,7 +168,7 @@ void LLReflectionMap::autoAdjustOrigin() } } - else if (mViewerObject) + else if (mViewerObject && !mViewerObject->isDead()) { mPriority = 1; mOrigin.load3(mViewerObject->getPositionAgent().mV); |