#include "RenderBase.h" #include "EngineFrame/Actor/Actor.h" RenderBase::RenderBase() { } RenderBase::~RenderBase() { } void RenderBase::CalcRenderInfo() { this->CalcRenderInfoFlag = true; } void RenderBase::Init() { Component::Init(); // 标记该组件需要渲染和更新 addTag(Tag::RENDER); addTag(Tag::UPDATE); addTag(Tag::TRANSFORM); // 计算渲染信息 CalcRenderInfo(); } void RenderBase::Update(float deltaTime) { if (!Visible) return; Component::Update(deltaTime); } void RenderBase::Render() { if (!Visible) return; Component::Render(); } void RenderBase::SetIterationPos(Vec2 pos) { Component::SetIterationPos(pos); CalcRenderInfo(); // 更新渲染信息 } void RenderBase::SetIterationScale(Vec2 scale) { Component::SetIterationScale(scale); CalcRenderInfo(); // 更新渲染信息 } void RenderBase::SetIterationRotation(float angle) { if (!Visible) return; Component::SetIterationRotation(angle); CalcRenderInfo(); // 更新渲染信息 } void RenderBase::SetPos(Vec2 pos) { Component::SetPos(pos); CalcRenderInfo(); // 更新渲染信息 } void RenderBase::SetScale(Vec2 scale) { Component::SetScale(scale); CalcRenderInfo(); // 更新渲染信息 } void RenderBase::SetRotation(float angle) { Component::SetRotation(angle); CalcRenderInfo(); // 更新渲染信息 } void RenderBase::SetAnchor(Vec2 anchor) { Component::SetAnchor(anchor); CalcRenderInfo(); // 更新渲染信息 }