Skip to content

Commit 5fd022c

Browse files
Hydrogent: apply dome light color and intensity when rendering environment map
1 parent c83d634 commit 5fd022c

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

Hydrogent/src/Tasks/HnRenderEnvMapTask.cpp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
#include "HnRenderPassState.hpp"
3030
#include "HnFrameRenderTargets.hpp"
3131
#include "HnTokens.hpp"
32+
#include "HnLight.hpp"
3233

3334
#include "EnvMapRenderer.hpp"
3435
#include "USD_Renderer.hpp"
@@ -178,6 +179,18 @@ void HnRenderEnvMapTask::Prepare(pxr::HdTaskContext* TaskCtx,
178179
EnvMapAttribs.Alpha = 1;
179180
EnvMapAttribs.Options = EnvMapRenderer::OPTION_FLAG_COMPUTE_MOTION_VECTORS;
180181

182+
{
183+
const auto& Lights = pRenderDelegate->GetLights();
184+
const auto dome_light_it = Lights.find(pxr::HdPrimTypeTokens->domeLight);
185+
if (dome_light_it != Lights.end())
186+
{
187+
if (const HnLight* pDomeLight = dome_light_it->second)
188+
{
189+
EnvMapAttribs.Scale = pDomeLight->GetParams().Color * pDomeLight->GetParams().Intensity;
190+
}
191+
}
192+
}
193+
181194
bool UseReverseDepth = false;
182195
GetTaskContextData(TaskCtx, HnRenderResourceTokens->useReverseDepth, UseReverseDepth);
183196
if (UseReverseDepth)

0 commit comments

Comments
 (0)