|
|
|
|
@ -120,15 +120,17 @@ namespace AZ
|
|
|
|
|
m_scene->RemoveRenderPipeline(m_environmentCubeMapPipelineId);
|
|
|
|
|
m_environmentCubeMapPass = nullptr;
|
|
|
|
|
|
|
|
|
|
// restore exposure
|
|
|
|
|
sceneSrg->SetConstant(m_iblExposureConstantIndex, m_previousExposure);
|
|
|
|
|
// restore exposures
|
|
|
|
|
sceneSrg->SetConstant(m_globalIblExposureConstantIndex, m_previousGlobalIblExposure);
|
|
|
|
|
sceneSrg->SetConstant(m_skyBoxExposureConstantIndex, m_previousSkyBoxExposure);
|
|
|
|
|
|
|
|
|
|
m_buildingCubeMap = false;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
// set exposure to the user specified value while baking the cubemap
|
|
|
|
|
sceneSrg->SetConstant(m_iblExposureConstantIndex, m_bakeExposure);
|
|
|
|
|
// set exposures to the user specified value while baking the cubemap
|
|
|
|
|
sceneSrg->SetConstant(m_globalIblExposureConstantIndex, m_bakeExposure);
|
|
|
|
|
sceneSrg->SetConstant(m_skyBoxExposureConstantIndex, m_bakeExposure);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -305,9 +307,10 @@ namespace AZ
|
|
|
|
|
const RPI::Ptr<RPI::ParentPass>& rootPass = environmentCubeMapPipeline->GetRootPass();
|
|
|
|
|
rootPass->AddChild(m_environmentCubeMapPass);
|
|
|
|
|
|
|
|
|
|
// store the current IBL exposure value
|
|
|
|
|
// store the current IBL exposure values
|
|
|
|
|
Data::Instance<RPI::ShaderResourceGroup> sceneSrg = m_scene->GetShaderResourceGroup();
|
|
|
|
|
m_previousExposure = sceneSrg->GetConstant<float>(m_iblExposureConstantIndex);
|
|
|
|
|
m_previousGlobalIblExposure = sceneSrg->GetConstant<float>(m_globalIblExposureConstantIndex);
|
|
|
|
|
m_previousSkyBoxExposure = sceneSrg->GetConstant<float>(m_skyBoxExposureConstantIndex);
|
|
|
|
|
|
|
|
|
|
m_scene->AddRenderPipeline(environmentCubeMapPipeline);
|
|
|
|
|
}
|
|
|
|
|
|