Graphics: Make Background/RenderTechnique independent from Scene

Former-commit-id: d588a3bb74b08d79990a278ad2e399e9797755b4
This commit is contained in:
Lynix
2015-06-09 00:26:13 +02:00
parent e97cc666a1
commit 6f2f8d6390
32 changed files with 124 additions and 86 deletions

View File

@@ -29,12 +29,11 @@ NzDeferredGeometryPass::NzDeferredGeometryPass()
NzDeferredGeometryPass::~NzDeferredGeometryPass() = default;
bool NzDeferredGeometryPass::Process(const NzScene* scene, unsigned int firstWorkTexture, unsigned secondWorkTexture) const
bool NzDeferredGeometryPass::Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const
{
NazaraUnused(firstWorkTexture);
NazaraUnused(secondWorkTexture);
NzAbstractViewer* viewer = scene->GetViewer();
bool instancingEnabled = m_deferredTechnique->IsInstancingEnabled();
m_GBufferRTT->SetColorTargets({0, 1, 2}); // G-Buffer
@@ -80,7 +79,7 @@ bool NzDeferredGeometryPass::Process(const NzScene* scene, unsigned int firstWor
shaderUniforms = GetShaderUniforms(shader);
// Couleur ambiante de la scène
shader->SendColor(shaderUniforms->sceneAmbient, scene->GetAmbientColor());
shader->SendColor(shaderUniforms->sceneAmbient, sceneData.ambientColor);
// Position de la caméra
shader->SendVector(shaderUniforms->eyePosition, viewer->GetEyePosition());