SceneNode::VisiblityTest now use Camera instead of Frustum

Former-commit-id: 71199e3e80c5fbd6116d5fedb13276480f4e4731
This commit is contained in:
Lynix
2013-08-09 19:04:29 +02:00
parent d509fddc82
commit 13b505f91f
14 changed files with 27 additions and 27 deletions

View File

@@ -63,7 +63,7 @@ class NAZARA_API NzCamera : public NzSceneNode, NzRenderTarget::Listener
void UpdateViewMatrix() const;
void UpdateViewport() const;
bool VisibilityTest(const NzFrustumf& frustum) override;
bool VisibilityTest(const NzCamera* camera) override;
mutable NzFrustumf m_frustum;
mutable NzMatrix4f m_projectionMatrix;

View File

@@ -53,7 +53,7 @@ class NAZARA_API NzLight : public NzSceneNode
void Register();
void Unregister();
void UpdateBoundingVolume() const;
bool VisibilityTest(const NzFrustumf& frustum);
bool VisibilityTest(const NzCamera* camera) override;
nzLightType m_type;
mutable NzBoundingVolumef m_boundingVolume;

View File

@@ -93,7 +93,7 @@ class NAZARA_API NzModel : public NzSceneNode, public NzUpdatable
void Unregister() override;
void Update() override;
void UpdateBoundingVolume() const;
bool VisibilityTest(const NzFrustumf& frustum) override;
bool VisibilityTest(const NzCamera* camera) override;
std::vector<NzMaterialRef> m_materials;
NzAnimationRef m_animation;

View File

@@ -59,7 +59,7 @@ class NAZARA_API NzScene
operator const NzSceneNode&() const;
private:
void RecursiveFrustumCull(NzAbstractRenderQueue* renderQueue, const NzFrustumf& frustum, NzNode* node);
void RecursiveCameraCull(NzAbstractRenderQueue* renderQueue, const NzCamera* camera, NzNode* node);
void SetActiveCamera(NzCamera* camera);
NzSceneImpl* m_impl;

View File

@@ -40,13 +40,13 @@ class NAZARA_API NzSceneNode : public NzNode
void SetScene(NzScene* scene);
virtual void Unregister();
virtual void Update();
virtual bool VisibilityTest(const NzFrustumf& frustum) = 0;
virtual bool VisibilityTest(const NzCamera* camera) = 0;
NzScene* m_scene;
bool m_visible;
private:
void UpdateVisibility(const NzFrustumf& frustum);
void UpdateVisibility(const NzCamera* camera);
};
#endif // NAZARA_SCENENODE_HPP

View File

@@ -28,7 +28,7 @@ class NAZARA_API NzSceneRoot : public NzSceneNode
void Register();
void Unregister();
bool VisibilityTest(const NzFrustumf& frustum) override;
bool VisibilityTest(const NzCamera* camera) override;
};
#endif // NAZARA_SCENEROOT_HPP