ShitEngine
基于 C++20 与 SDL3 的轻量级 2D 游戏引擎
载入中...
搜索中...
未找到
Component类 参考

组件基类 更多...

#include <Component.h>

类 Component 继承关系图:
Behavior BoxCollider2D CameraComponent CircleCollider2D RendererComponent RigidBody2D TransformComponent UICanvas UIRendererComponent UITransform

Public 成员函数

 Component ()
virtual ~Component ()=default
virtual void onCreate ()
virtual void onAttach ()
virtual void onDetach ()
virtual void onDestroy ()
virtual void onAfterDeserialize ()
 反序列化完成后回调(Prefab::apply 逐组件调用一次,字段已写入)。 用于重建"直写字段绕过了 setter、无法自动触发的引擎状态"(如精灵纹理加载)。
 Component (const Component &)=delete
Componentoperator= (const Component &)=delete
 Component (Component &&)=delete
Componentoperator= (Component &&)=delete
GameObjectgetOwner () const
bool isRegistered () const

Protected 成员函数

void setRegistered (bool registered)

Protected 属性

GameObjectm_owner = nullptr
bool m_isRegistered = false

友元

class GameObject
class System

详细描述

组件基类

所有组件必须继承此类。

生命周期(按调用顺序): onCreate — 组件刚被构造、已绑定 owner,尚未挂载到场景 onAttach — 组件所属 GameObject 进入活动场景时 onDetach — 组件即将从场景中移除时(在 onDestroy 前调用) onDestroy — 组件被销毁时

构造及析构函数说明

◆ Component() [1/3]

Component ( )

◆ ~Component()

virtual ~Component ( )
virtualdefault

◆ Component() [2/3]

Component ( const Component & )
delete

◆ Component() [3/3]

Component ( Component && )
delete

成员函数说明

◆ getOwner()

GameObject * getOwner ( ) const
inline

◆ isRegistered()

bool isRegistered ( ) const
inline

◆ onAfterDeserialize()

virtual void onAfterDeserialize ( )
inlinevirtual

反序列化完成后回调(Prefab::apply 逐组件调用一次,字段已写入)。 用于重建"直写字段绕过了 setter、无法自动触发的引擎状态"(如精灵纹理加载)。

SpriteRenderer 重载.

◆ onAttach()

◆ onCreate()

virtual void onCreate ( )
inlinevirtual

Behavior , 以及 RigidBody2D 重载.

◆ onDestroy()

virtual void onDestroy ( )
inlinevirtual

◆ onDetach()

virtual void onDetach ( )
inlinevirtual

◆ operator=() [1/2]

Component & operator= ( Component && )
delete

◆ operator=() [2/2]

Component & operator= ( const Component & )
delete

◆ setRegistered()

void setRegistered ( bool registered)
inlineprotected

◆ GameObject

friend class GameObject
friend

◆ System

friend class System
friend

类成员变量说明

◆ m_isRegistered

bool m_isRegistered = false
protected

◆ m_owner

GameObject* m_owner = nullptr
protected

该类的文档由以下文件生成: