#include "Actor.h" #include "EngineFrame/Scene/Scene.h" #include "EngineCore/Game.h" #include "EngineFrame/Render/RenderManager.h" #include void Actor::Init() { } void Actor::OnAdded(Actor *node) { } void Actor::SetBlendMode(LE_BlEND_MODE mode) { this->_BlendMode = mode; } LE_BlEND_MODE Actor::GetBlendMode() { return this->_BlendMode; } void Actor::Render() { // 如果有裁切视口 if (this->_CropViewportFlag) { RenderManager *renderer = Game::GetInstance().GetRenderer(); renderer->SetClipRect(&this->_CropViewport); Node::Render(); renderer->CloseClipRect(); } else { Node::Render(); } } void Actor::SetCropViewport(SDL_Rect CropViewport) { if (CropViewport.x == 0 && CropViewport.y == 0 && CropViewport.w == 0 && CropViewport.h == 0) { this->_CropViewportFlag = false; } else { this->_CropViewportFlag = true; this->_CropViewport = CropViewport; } } SDL_Rect Actor::GetCropViewport() { return this->_CropViewport; }