prepare refactor SceneTreeToRenderList

This commit is contained in:
2021-05-31 19:10:17 +08:00
parent da15630ac9
commit 9e7698cf0c
5 changed files with 48 additions and 57 deletions

View File

@@ -28,20 +28,15 @@ namespace hgl
public:
ObjectList<SceneNode> SubNode; ///<子节点
RenderableInstance *renderable_instances; ///<可渲染实例
List<RenderableInstance *> RIList; ///<可渲染实例
public:
SceneNode()
{
renderable_instances=nullptr;
}
SceneNode(const Matrix4f &mat,RenderableInstance *ri=nullptr)
SceneNode()=default;
SceneNode(const Matrix4f &mat)
{
SetLocalMatrix(mat);
renderable_instances=ri;
}
virtual ~SceneNode()
@@ -68,15 +63,6 @@ namespace hgl
void AddSubNode(SceneNode *n){if(n)SubNode.Add(n);} ///<增加一个子节点
void ClearSubNode(){SubNode.ClearData();} ///<清除子节点
void Set(RenderableInstance *ri){renderable_instances=ri;} ///<增加渲染实例
void Set(const Matrix4f &mat,RenderableInstance *ri)
{
SetLocalMatrix(mat);
renderable_instances=ri;
}
public: //坐标相关方法
virtual void SetBoundingBox (const AABB &bb){BoundingBox=bb;} ///<设置绑定盒