diff options
| author | Callum Prentice <callum@lindenlab.com> | 2023-05-02 09:39:03 -0700 |
|---|---|---|
| committer | Callum Prentice <callum@lindenlab.com> | 2023-05-02 09:39:03 -0700 |
| commit | bb96ac2621dd09dbc318d04f7e04ffbc50ec3174 (patch) | |
| tree | 9e692dbb89e46faaea656af979b6855502481772 /indra/newview/lldrawpoolmaterials.cpp | |
| parent | fbf5b199f3bd9775bc992609baf6c093177a70d8 (diff) | |
| parent | 7ed52090a67882cd0bc904f1e0a9ce07cf6768e9 (diff) | |
MErge with main after Viewer release
Diffstat (limited to 'indra/newview/lldrawpoolmaterials.cpp')
| -rw-r--r-- | indra/newview/lldrawpoolmaterials.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/indra/newview/lldrawpoolmaterials.cpp b/indra/newview/lldrawpoolmaterials.cpp index 2b05f4c453..f2408a3294 100644 --- a/indra/newview/lldrawpoolmaterials.cpp +++ b/indra/newview/lldrawpoolmaterials.cpp @@ -32,6 +32,7 @@ #include "pipeline.h" #include "llglcommonfunc.h" #include "llvoavatar.h" +#include "llperfstats.h" S32 diffuse_channel = -1; @@ -164,9 +165,20 @@ void LLDrawPoolMaterials::renderDeferred(S32 pass) LLCullResult::drawinfo_iterator begin = gPipeline.beginRenderMap(type); LLCullResult::drawinfo_iterator end = gPipeline.endRenderMap(type); - for (LLCullResult::drawinfo_iterator i = begin; i != end; ++i) + std::unique_ptr<LLPerfStats::RecordAttachmentTime> ratPtr{}; + for (LLCullResult::drawinfo_iterator i = begin; i != end; ++i) { LLDrawInfo& params = **i; + + if(params.mFace) + { + LLViewerObject* vobj = (LLViewerObject *)params.mFace->getViewerObject(); + + if( vobj && vobj->isAttachment() ) + { + trackAttachments( vobj, params.mFace->isState(LLFace::RIGGED), &ratPtr ); + } + } mShader->uniform4f(LLShaderMgr::SPECULAR_COLOR, params.mSpecColor.mV[0], params.mSpecColor.mV[1], params.mSpecColor.mV[2], params.mSpecColor.mV[3]); mShader->uniform1f(LLShaderMgr::ENVIRONMENT_INTENSITY, params.mEnvIntensity); |
