Modified SceneNode::FrustumCull

Now provides an implementation which will test the bounding volume
against the frustum (Basic frustum culling)
Is now const
Disabled face culling on sprites


Former-commit-id: 5cb7a94b38ef8b0ffa5a78f16f5ef65a59ab375d
This commit is contained in:
Lynix
2014-06-05 21:28:17 +02:00
parent bc9c8c6bdb
commit a31ced1d76
10 changed files with 13 additions and 36 deletions

View File

@@ -53,7 +53,7 @@ class NAZARA_API NzLight : public NzSceneNode
static void Disable(const NzShader* program, const NzLightUniforms& uniforms, int offset = 0);
private:
bool FrustumCull(const NzFrustumf& frustum) override;
bool FrustumCull(const NzFrustumf& frustum) const override;
void InvalidateNode() override;
void Register() override;
void Unregister() override;

View File

@@ -86,7 +86,6 @@ class NAZARA_API NzModel : public NzSceneNode
NzModel& operator=(NzModel&& node);
protected:
bool FrustumCull(const NzFrustumf& frustum) override;
void InvalidateNode() override;
virtual void UpdateBoundingVolume() const;

View File

@@ -40,9 +40,9 @@ class NAZARA_API NzSceneNode : public NzNode
NzSceneNode& operator=(NzSceneNode&& sceneNode);
protected:
virtual bool FrustumCull(const NzFrustumf& frustum) const;
virtual void OnParenting(const NzNode* parent) override;
virtual void OnVisibilityChange(bool visibility);
virtual bool FrustumCull(const NzFrustumf& frustum) = 0;
void RecursiveSetScene(NzScene* scene, NzNode* node);
virtual void Register();
void SetScene(NzScene* scene);

View File

@@ -26,7 +26,6 @@ class NAZARA_API NzSceneRoot : public NzSceneNode
NzSceneRoot(NzScene* scene);
virtual ~NzSceneRoot();
bool FrustumCull(const NzFrustumf& frustum) override;
void Register();
void Unregister();
};

View File

@@ -37,7 +37,6 @@ class NAZARA_API NzSprite : public NzSceneNode
void SetTextureRect(const NzRectui& rect);
private:
bool FrustumCull(const NzFrustumf& frustum) override;
void InvalidateNode() override;
void Register() override;
void Unregister() override;