This commit is contained in:
2026-02-08 16:20:50 +08:00
parent 0ae47e5d6a
commit 8b88904ef7
72 changed files with 5963 additions and 2038 deletions

View File

@@ -1,5 +1,5 @@
#pragma once
#include "EngineFrame/Base/BaseNode.h"
#include "EngineFrame/Base/Node.h"
#include "Tool/IntrusiveList.hpp"
class Scene;
/**
@@ -7,24 +7,31 @@ class Scene;
*
* Actor类是一个基础的游戏对象类可以添加到场景中
*/
class Actor : public BaseNode
class Actor : public Node
{
private:
//裁切视口Flag
protected:
/**裁切视口Flag */
bool _CropViewportFlag = false;
//裁切视口
/**裁切视口 */
SDL_Rect _CropViewport = {0, 0, 0, 0};
/**混合模式 */
LE_BlEND_MODE _BlendMode = NONE;
public:
Actor();
// 初始化
virtual void Init();
// 被添加时
virtual void OnAdded(Actor *node);
// 设置混合模式
void SetBlendMode(LE_BlEND_MODE mode);
// 获取混合模式
LE_BlEND_MODE GetBlendMode();
public:
void Init() override;
void Update(float deltaTime) override;
/**重载渲染函数 */
void Render() override;
// 设置裁切视口(放在Actor里 他与他的子对象都会被裁切)
/**设置裁切视口(放在Actor里 他与他的子对象都会被裁切) */
void SetCropViewport(SDL_Rect CropViewport);
// 获取裁切视口
/**获取裁切视口 */
SDL_Rect GetCropViewport();
};