standalone RenderList2D
This commit is contained in:
@@ -13,25 +13,26 @@ namespace hgl
|
||||
{
|
||||
namespace graph
|
||||
{
|
||||
using MaterialSets=SortedSets<Material *>;
|
||||
|
||||
/**
|
||||
* 渲染对象列表<br>
|
||||
* 已经展开的渲染对象列表,产生mvp用UBO/SSBO等数据,最终创建RenderCommandBuffer
|
||||
*/
|
||||
class RenderList
|
||||
{
|
||||
protected:
|
||||
protected:
|
||||
|
||||
GPUDevice * device;
|
||||
RenderCmdBuffer *cmd_buf;
|
||||
GPUDevice * device;
|
||||
RenderCmdBuffer * cmd_buf;
|
||||
|
||||
private:
|
||||
|
||||
RenderNodeList render_node_list; ///<场景节点列表
|
||||
MaterialSets material_sets; ///<材质合集
|
||||
GPUArrayBuffer * mvp_array;
|
||||
CameraInfo camera_info;
|
||||
|
||||
RenderNodeComparator *render_node_comparator;
|
||||
RenderNode3DList render_node_list; ///<场景节点列表
|
||||
MaterialSets material_sets; ///<材质合集
|
||||
|
||||
RenderNode3DComparator *render_node_comparator;
|
||||
|
||||
private:
|
||||
|
||||
@@ -61,49 +62,11 @@ namespace hgl
|
||||
|
||||
RenderList(GPUDevice *);
|
||||
virtual ~RenderList();
|
||||
|
||||
|
||||
virtual bool Expend(const CameraInfo &,SceneNode *);
|
||||
|
||||
virtual bool Render(RenderCmdBuffer *);
|
||||
};//class RenderList
|
||||
|
||||
class RenderList2D:public RenderList
|
||||
{
|
||||
|
||||
protected:
|
||||
|
||||
virtual bool Begin() override;
|
||||
virtual bool Expend(SceneNode *) override;
|
||||
virtual void End() override;
|
||||
|
||||
public:
|
||||
|
||||
RenderList2D();
|
||||
virtual ~RenderList2D() override;
|
||||
|
||||
virtual bool Expend(SceneNode *);
|
||||
};
|
||||
|
||||
class RenderList3D:public RenderList
|
||||
{
|
||||
protected:
|
||||
|
||||
CameraInfo camera_info;
|
||||
GPUArrayBuffer *mvp_array;
|
||||
|
||||
protected:
|
||||
|
||||
virtual bool Begin() override;
|
||||
virtual bool Expend(SceneNode *) override;
|
||||
virtual void End() override;
|
||||
|
||||
public:
|
||||
|
||||
RenderList3D();
|
||||
virtual ~RenderList3D() override;
|
||||
|
||||
bool Expend(const CameraInfo &,SceneNode *);
|
||||
};
|
||||
}//namespace graph
|
||||
}//namespace hgl
|
||||
#endif//HGL_GRAPH_RENDER_LIST_INCLUDE
|
||||
|
Reference in New Issue
Block a user