Added visibility state to SceneNode

Former-commit-id: 5325e268a4276d6e2e3e72648641ca03225ab4da
This commit is contained in:
Lynix
2013-03-05 12:09:51 +01:00
parent e26728c424
commit 0e49132cd9
12 changed files with 99 additions and 73 deletions

View File

@@ -31,17 +31,22 @@ class NAZARA_API NzSceneNode : public NzNode
NzScene* GetScene() const;
virtual nzSceneNodeType GetSceneNodeType() const = 0;
virtual bool IsVisible(const NzFrustumf& frustum) const = 0;
bool IsVisible() const;
protected:
virtual void OnParenting(const NzNode* parent) override;
virtual void OnVisibilityChange(bool visibility);
virtual void Register();
void SetScene(NzScene* scene);
virtual bool ShouldUpdateWhenVisible();
virtual void Unregister();
virtual void Update();
virtual bool VisibilityTest(const NzFrustumf& frustum) = 0;
NzScene* m_scene;
bool m_visible;
private:
void UpdateVisibility(const NzFrustumf& frustum);
};
#endif // NAZARA_SCENENODE_HPP