renamed to Renderable from RenderableInstance, renamed to PrimitiveCreater from RenderableCreater
This commit is contained in:
@@ -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
|
@@ -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:
|
||||
|
||||
|
@@ -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:
|
||||
|
||||
|
@@ -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);
|
||||
|
||||
|
@@ -131,7 +131,7 @@ class VertexAttributeBinding;
|
||||
using VAB=VertexAttributeBinding;
|
||||
|
||||
class Primitive;
|
||||
class RenderableInstance;
|
||||
class Renderable;
|
||||
|
||||
class RenderResource;
|
||||
|
||||
|
@@ -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);}
|
||||
|
@@ -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
|
||||
|
@@ -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
|
@@ -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
|
||||
|
@@ -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
|
||||
|
Reference in New Issue
Block a user