renamed to Renderable from RenderableInstance, renamed to PrimitiveCreater from RenderableCreater

This commit is contained in:
2022-06-24 21:06:38 +08:00
parent 43c60c16e2
commit d8d8d97abd
46 changed files with 178 additions and 178 deletions

View File

@@ -1,5 +1,5 @@
#ifndef HGL_GRAPH_RENDERABLE_CREATER_INCLUDE
#define HGL_GRAPH_RENDERABLE_CREATER_INCLUDE
#ifndef HGL_GRAPH_PRIMITIVE_CREATER_INCLUDE
#define HGL_GRAPH_PRIMITIVE_CREATER_INCLUDE
#include<hgl/graph/VKRenderResource.h>
#include<hgl/graph/VertexAttribDataAccess.h>
@@ -26,9 +26,9 @@ namespace hgl
using ShaderStageBindMap=MapObject<AnsiString,ShaderStageBind>;
/**
*
*
*/
class RenderableCreater
class PrimitiveCreater
{
protected:
@@ -46,8 +46,8 @@ namespace hgl
public:
RenderableCreater(RenderResource *sdb,const VAB *);
virtual ~RenderableCreater()=default;
PrimitiveCreater(RenderResource *sdb,const VAB *);
virtual ~PrimitiveCreater()=default;
virtual bool Init(const uint32 vertices_count); ///<初始化,参数为顶点数量
@@ -79,7 +79,7 @@ namespace hgl
uint32 * CreateIBO32(uint count,const uint32 *data=nullptr); ///<创建32位的索引缓冲区
virtual Primitive * Finish(); ///<结束并创建可渲染对象
};//class RenderableCreater
};//class PrimitiveCreater
}//namespace graph
}//namespace hgl
#endif//HGL_GRAPH_RENDERABLE_CREATER_INCLUDE
#endif//HGL_GRAPH_PRIMITIVE_CREATER_INCLUDE

View File

@@ -37,7 +37,7 @@ namespace hgl
private:
MVPArrayBuffer *mvp_array;
List<RenderableInstance *> ri_list;
List<Renderable *> ri_list;
VkDescriptorSet ds_list[(size_t)DescriptorSetsType::RANGE_SIZE];
DescriptorSets *renderable_desc_sets;
@@ -57,7 +57,7 @@ namespace hgl
MaterialParameters *last_mp[(size_t)DescriptorSetsType::RANGE_SIZE];
uint32_t last_vbo;
void Render(RenderableInstance *);
void Render(Renderable *);
public:

View File

@@ -8,7 +8,7 @@ namespace hgl
{
namespace graph
{
class RenderableInstance;
class Renderable;
struct RenderNode
{
@@ -19,7 +19,7 @@ namespace hgl
float distance_to_camera_square;
// float distance_to_camera;
RenderableInstance *ri;
Renderable *ri;
public:

View File

@@ -26,7 +26,7 @@ namespace hgl
Vector4f LocalCenter; ///<本地坐标中心点
Vector4f WorldCenter; ///<世界坐标中心点
RenderableInstance *render_obj=nullptr; ///<可渲染实例
Renderable *render_obj=nullptr; ///<可渲染实例
public:
@@ -35,9 +35,9 @@ namespace hgl
public:
SceneNode()=default;
SceneNode( RenderableInstance *ri ) {render_obj=ri;}
SceneNode(const Matrix4f &mat ):SceneOrient(mat) {}
SceneNode(const Matrix4f &mat, RenderableInstance *ri ):SceneOrient(mat) {render_obj=ri;}
SceneNode( Renderable *ri ) {render_obj=ri;}
SceneNode(const Matrix4f &mat ):SceneOrient(mat) {}
SceneNode(const Matrix4f &mat, Renderable *ri ):SceneOrient(mat) {render_obj=ri;}
virtual ~SceneNode()=default;
@@ -47,8 +47,8 @@ namespace hgl
render_obj=nullptr;
}
RenderableInstance *GetRI(){return render_obj;}
void SetRI(RenderableInstance *);
Renderable *GetRenderable(){return render_obj;}
void SetRenderable(Renderable *);
SceneNode *CreateSubNode()
{
@@ -58,7 +58,7 @@ namespace hgl
return sn;
}
SceneNode *CreateSubNode(RenderableInstance *ri)
SceneNode *CreateSubNode(Renderable *ri)
{
SceneNode *sn=new SceneNode(ri);
@@ -74,7 +74,7 @@ namespace hgl
return sn;
}
SceneNode *CreateSubNode(const Matrix4f &mat,RenderableInstance *ri)
SceneNode *CreateSubNode(const Matrix4f &mat,Renderable *ri)
{
SceneNode *sn=new SceneNode(mat,ri);

View File

@@ -131,7 +131,7 @@ class VertexAttributeBinding;
using VAB=VertexAttributeBinding;
class Primitive;
class RenderableInstance;
class Renderable;
class RenderResource;

View File

@@ -126,7 +126,7 @@ public:
return(true);
}
bool BindDescriptorSets(RenderableInstance *ri);
bool BindDescriptorSets(Renderable *ri);
bool PushDescriptorSet(VkPipelineLayout pipeline_layout,uint32_t set,uint32_t count,const VkWriteDescriptorSet *write_desc_set)
{
@@ -141,7 +141,7 @@ public:
void PushConstants(const void *data,const uint32_t size) {vkCmdPushConstants(cmd_buf,pipeline_layout,VK_SHADER_STAGE_VERTEX_BIT,0, size,data);}
void PushConstants(const void *data,const uint32_t offset,const uint32_t size) {vkCmdPushConstants(cmd_buf,pipeline_layout,VK_SHADER_STAGE_VERTEX_BIT,offset, size,data);}
bool BindVBO(RenderableInstance *);
bool BindVBO(Renderable *);
void SetViewport (uint32_t first,uint32_t count,const VkViewport *vp) {vkCmdSetViewport(cmd_buf,first,count,vp);}
void SetScissor (uint32_t first,uint32_t count,const VkRect2D *sci) {vkCmdSetScissor(cmd_buf,first,count,sci);}

View File

@@ -11,7 +11,7 @@
#include<hgl/graph/VKMaterialParameters.h>
#include<hgl/graph/VKMaterialInstance.h>
#include<hgl/graph/VertexAttribData.h>
#include<hgl/graph/VKRenderableInstance.h>
#include<hgl/graph/VKRenderable.h>
#include<hgl/graph/font/TextPrimitive.h>
#include<hgl/type/ResManage.h>
VK_NAMESPACE_BEGIN
@@ -20,7 +20,7 @@ using MaterialInstanceID =int;
using BufferID =int;
using DescriptorSetsID =int;
using PrimitiveID =int;
using RenderableInstanceID =int;
using RenderableID =int;
using SamplerID =int;
using TextureID =int;
@@ -44,7 +44,7 @@ class RenderResource
IDResManage<BufferID, GPUBuffer> rm_buffers; ///<顶点缓冲区合集
IDResManage<SamplerID, Sampler> rm_samplers; ///<采样器合集
IDResManage<TextureID, Texture> rm_textures; ///<纹理合集
IDResManage<RenderableInstanceID, RenderableInstance> rm_renderable_instances; ///<渲染实例集合集
IDResManage<RenderableID, Renderable> rm_renderables; ///<渲染实例集合集
public:
@@ -60,7 +60,7 @@ public: //Add
BufferID Add(GPUBuffer * buf ){return rm_buffers.Add(buf);}
SamplerID Add(Sampler * s ){return rm_samplers.Add(s);}
TextureID Add(Texture * t ){return rm_textures.Add(t);}
RenderableInstanceID Add(RenderableInstance *ri ){return rm_renderable_instances.Add(ri);}
RenderableID Add(Renderable * r ){return rm_renderables.Add(r);}
public: // VBO/VAO
@@ -95,7 +95,7 @@ public: //Material
Primitive * CreatePrimitive(const uint32_t vertex_count=0);
RenderableInstance *CreateRenderableInstance(Primitive *r,MaterialInstance *mi,Pipeline *p);
Renderable * CreateRenderable(Primitive *r,MaterialInstance *mi,Pipeline *p);
Sampler * CreateSampler(VkSamplerCreateInfo *sci=nullptr);
Sampler * CreateSampler(Texture *);
@@ -110,11 +110,11 @@ public: //Get
Material * GetMaterial (const MaterialID &id){return rm_material.Get(id);}
MaterialInstance * GetMaterialInstance (const MaterialInstanceID &id){return rm_material_instance.Get(id);}
DescriptorSets * GetDescSets (const DescriptorSetsID &id){return rm_desc_sets.Get(id);}
Primitive * GetPrimitive (const PrimitiveID &id){return rm_primitives.Get(id);}
Primitive * GetPrimitive (const PrimitiveID &id){return rm_primitives.Get(id);}
GPUBuffer * GetBuffer (const BufferID &id){return rm_buffers.Get(id);}
Sampler * GetSampler (const SamplerID &id){return rm_samplers.Get(id);}
Texture * GetTexture (const TextureID &id){return rm_textures.Get(id);}
RenderableInstance *GetRenderableInstance (const RenderableInstanceID &id){return rm_renderable_instances.Get(id);}
Renderable * GetRenderable (const RenderableID &id){return rm_renderables.Get(id);}
};//class RenderResource
VK_NAMESPACE_END
#endif//HGL_GRAPH_VULKAN_DATABASE_INCLUDE

View File

@@ -1,5 +1,5 @@
#ifndef HGL_GRAPH_RENDERABLE_INSTANCE_INCLUDE
#define HGL_GRAPH_RENDERABLE_INSTANCE_INCLUDE
#ifndef HGL_GRAPH_RENDERABLE_INCLUDE
#define HGL_GRAPH_RENDERABLE_INCLUDE
#include<hgl/graph/VKPrimitive.h>
#include<hgl/graph/VKPipeline.h>
@@ -9,10 +9,10 @@
#include<hgl/graph/VKMaterialInstance.h>
VK_NAMESPACE_BEGIN
/**
* <br>
* <br>
* RenderList会统一管理Shader中的LocalToWorld数据使DynamicUBO/DynamicSSBO实现
*/
class RenderableInstance ///可渲染对象实例
class Renderable ///可渲染对象实例
{
Pipeline * pipeline;
MaterialInstance * mat_inst;
@@ -26,13 +26,13 @@ class RenderableInstance
private:
friend RenderableInstance *CreateRenderableInstance(Primitive *,MaterialInstance *,Pipeline *);
friend Renderable *CreateRenderable(Primitive *,MaterialInstance *,Pipeline *);
RenderableInstance(Primitive *,MaterialInstance *,Pipeline *,const uint32_t,VkBuffer *,VkDeviceSize *);
Renderable(Primitive *,MaterialInstance *,Pipeline *,const uint32_t,VkBuffer *,VkDeviceSize *);
public:
virtual ~RenderableInstance();
virtual ~Renderable();
void UpdatePipeline (Pipeline *p){pipeline=p;}
@@ -57,8 +57,8 @@ public:
public: //instance support
virtual const uint32_t GetInstanceCount ()const{return 1;}
};//class RenderableInstance
};//class Renderable
RenderableInstance *CreateRenderableInstance(Primitive *,MaterialInstance *,Pipeline *);
Renderable *CreateRenderable(Primitive *,MaterialInstance *,Pipeline *);
VK_NAMESPACE_END
#endif//HGL_GRAPH_RENDERABLE_INSTANCE_INCLUDE
#endif//HGL_GRAPH_RENDERABLE_INCLUDE

View File

@@ -3,7 +3,7 @@
#include<hgl/type/StringList.h>
#include<hgl/graph/font/FontSource.h>
#include<hgl/graph/RenderableCreater.h>
#include<hgl/graph/PrimitiveCreater.h>
#include<hgl/graph/TileData.h>
#include<hgl/type/MemBlock.h>
namespace hgl

View File

@@ -58,7 +58,7 @@ namespace hgl
bool Layout(TextPrimitive *tr,const UTF16String &str);
RenderableInstance *CreateRenderableInstance(TextPrimitive *text_render_obj);
Renderable *CreateRenderable(TextPrimitive *text_render_obj);
void Release(TextPrimitive *);
};//class TextRender