Graphics/RenderTechnique: Move viewer to SceneData

Former-commit-id: 6c8b5a00b65649c7a3877a186b51f7240361e801
This commit is contained in:
Lynix
2015-06-13 16:27:12 +02:00
parent 8f797737c6
commit d9c31636b9
25 changed files with 75 additions and 70 deletions

View File

@@ -25,7 +25,7 @@ class NAZARA_API NzAbstractRenderTechnique : NzNonCopyable
NzAbstractRenderTechnique();
virtual ~NzAbstractRenderTechnique();
virtual bool Draw(const NzAbstractViewer* viewer, const NzSceneData& sceneData) const = 0;
virtual bool Draw(const NzSceneData& sceneData) const = 0;
virtual void EnableInstancing(bool instancing);

View File

@@ -27,7 +27,7 @@ class NAZARA_API NzDeferredBloomPass : public NzDeferredRenderPass
float GetBrightThreshold() const;
NzTexture* GetTexture(unsigned int i) const;
bool Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Process(const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Resize(const NzVector2ui& dimensions);
void SetBlurPassCount(unsigned int passCount);

View File

@@ -21,7 +21,7 @@ class NAZARA_API NzDeferredDOFPass : public NzDeferredRenderPass
NzDeferredDOFPass();
virtual ~NzDeferredDOFPass();
bool Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Process(const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Resize(const NzVector2ui& dimensions);
protected:

View File

@@ -19,7 +19,7 @@ class NAZARA_API NzDeferredFXAAPass : public NzDeferredRenderPass
NzDeferredFXAAPass();
virtual ~NzDeferredFXAAPass();
bool Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Process(const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
protected:
NzRenderStates m_states;

View File

@@ -19,7 +19,7 @@ class NAZARA_API NzDeferredFinalPass : public NzDeferredRenderPass
NzDeferredFinalPass();
virtual ~NzDeferredFinalPass();
bool Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Process(const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
protected:
NzRenderStates m_states;

View File

@@ -19,7 +19,7 @@ class NAZARA_API NzDeferredFogPass : public NzDeferredRenderPass
NzDeferredFogPass();
virtual ~NzDeferredFogPass();
bool Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Process(const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
protected:
NzRenderStates m_states;

View File

@@ -19,7 +19,7 @@ class NAZARA_API NzDeferredForwardPass : public NzDeferredRenderPass
virtual ~NzDeferredForwardPass();
void Initialize(NzDeferredRenderTechnique* technique);
bool Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int workTexture, unsigned sceneTexture) const;
bool Process(const NzSceneData& sceneData, unsigned int workTexture, unsigned sceneTexture) const;
protected:
const NzForwardRenderTechnique* m_forwardTechnique;

View File

@@ -18,7 +18,7 @@ class NAZARA_API NzDeferredGeometryPass : public NzDeferredRenderPass
NzDeferredGeometryPass();
virtual ~NzDeferredGeometryPass();
bool Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Process(const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Resize(const NzVector2ui& dimensions);
protected:

View File

@@ -26,7 +26,7 @@ class NAZARA_API NzDeferredPhongLightingPass : public NzDeferredRenderPass
bool IsLightMeshesDrawingEnabled() const;
bool Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
bool Process(const NzSceneData& sceneData, unsigned int firstWorkTexture, unsigned secondWorkTexture) const;
protected:
NzLightUniforms m_directionalLightUniforms;

View File

@@ -34,7 +34,7 @@ class NAZARA_API NzDeferredRenderPass
bool IsEnabled() const;
virtual bool Process(const NzAbstractViewer* viewer, const NzSceneData& sceneData, unsigned int workTexture, unsigned sceneTexture) const = 0;
virtual bool Process(const NzSceneData& sceneData, unsigned int workTexture, unsigned sceneTexture) const = 0;
virtual bool Resize(const NzVector2ui& GBufferSize);
protected:

View File

@@ -30,7 +30,7 @@ class NAZARA_API NzDeferredRenderTechnique : public NzAbstractRenderTechnique
NzDeferredRenderTechnique();
~NzDeferredRenderTechnique();
bool Draw(const NzAbstractViewer* viewer, const NzSceneData& sceneData) const override;
bool Draw(const NzSceneData& sceneData) const override;
void EnablePass(nzRenderPassType renderPass, int position, bool enable);

View File

@@ -21,7 +21,7 @@ class NAZARA_API NzForwardRenderTechnique : public NzAbstractRenderTechnique
NzForwardRenderTechnique();
~NzForwardRenderTechnique() = default;
bool Draw(const NzAbstractViewer* viewer, const NzSceneData& sceneData) const override;
bool Draw(const NzSceneData& sceneData) const override;
unsigned int GetMaxLightPassPerObject() const;
NzAbstractRenderQueue* GetRenderQueue() override;
@@ -36,10 +36,10 @@ class NAZARA_API NzForwardRenderTechnique : public NzAbstractRenderTechnique
struct ShaderUniforms;
bool ChooseLights(const NzSpheref& object, bool includeDirectionalLights = true) const;
void DrawBasicSprites(const NzAbstractViewer* viewer, const NzSceneData& sceneData) const;
void DrawBillboards(const NzAbstractViewer* viewer, const NzSceneData& sceneData) const;
void DrawOpaqueModels(const NzAbstractViewer* viewer, const NzSceneData& sceneData) const;
void DrawTransparentModels(const NzAbstractViewer* viewer, const NzSceneData& sceneData) const;
void DrawBasicSprites(const NzSceneData& sceneData) const;
void DrawBillboards(const NzSceneData& sceneData) const;
void DrawOpaqueModels(const NzSceneData& sceneData) const;
void DrawTransparentModels(const NzSceneData& sceneData) const;
const ShaderUniforms* GetShaderUniforms(const NzShader* shader) const;
void OnShaderInvalidated(const NzShader* shader) const;
void SendLightUniforms(const NzShader* shader, const NzLightUniforms& uniforms, unsigned int index, unsigned int uniformOffset) const;

View File

@@ -10,11 +10,13 @@
#include <Nazara/Core/Color.hpp>
class NzAbstractBackground;
class NzAbstractViewer;
struct NzSceneData
{
NzColor ambientColor;
NzAbstractBackground* background;
const NzAbstractBackground* background;
const NzAbstractViewer* viewer;
};
#endif // NAZARA_SCENEDATA_HPP