准备定义PrimitiveComponent用于取代原本SceneNode中的Renderable数据

This commit is contained in:
hyzboy 2025-03-25 02:19:32 +08:00
parent ab3f771455
commit f0512edb5a
4 changed files with 38 additions and 15 deletions

View File

@ -4,8 +4,12 @@
#include<hgl/type/SortedSet.h>
#include<hgl/type/List.h>
namespace hgl::graph
{
#define COMPONENT_NAMESPACE hgl::graph
#define COMPONENT_NAMESPACE_BEGIN namespace COMPONENT_NAMESPACE {
#define COMPONENT_NAMESPACE_END }
COMPONENT_NAMESPACE_BEGIN
class ComponentManager;
class SceneNode;
@ -81,4 +85,5 @@ namespace hgl::graph
virtual void OnFocusLost(){} ///<焦点丢失事件
virtual void OnFocusGained(){} ///<焦点获得事件
};//class ComponentManager
}//namespace hgl::graph
COMPONENT_NAMESPACE_END

View File

@ -0,0 +1,18 @@
#pragma once
#include<hgl/component/RenderComponent.h>
#include<hgl/graph/VKRenderable.h>
COMPONENT_NAMESPACE_BEGIN
class PrimitiveComponent:public RenderComponent
{
public:
PrimitiveComponent()=default;
virtual ~PrimitiveComponent()=default;
Renderable *GetRenderable();
};//class PrimitiveComponent
COMPONENT_NAMESPACE_END

View File

@ -2,18 +2,17 @@
#include<hgl/component/Component.h>
namespace hgl::graph
COMPONENT_NAMESPACE_BEGIN
/**
*
*/
class RenderComponent: public Component
{
/**
*
*/
class RenderComponent: public Component
{
public:
public:
RenderComponent()=default;
virtual ~RenderComponent()=default;
RenderComponent()=default;
virtual ~RenderComponent()=default;
};//class RenderComponent
virtual void Render()=0;
};//class RenderComponent
}//namespace hgl::graph
COMPONENT_NAMESPACE_END

View File

@ -63,6 +63,7 @@ public:
/**
* ()
* StaticMesh哦
*/
class Renderable ///可渲染对象实例
{