#include "MetaCoreRender/MetaCoreRenderDevice.h" #include "MetaCorePlatform/MetaCoreWindow.h" #include namespace MetaCore { class MetaCoreRenderDevice::MetaCoreRenderDeviceImpl { public: MetaCoreWindow* Window = nullptr; MetaCoreRenderDeviceConfig Config{}; bool Initialized = false; }; MetaCoreRenderDevice::MetaCoreRenderDevice() : Impl_(std::make_unique()) { } MetaCoreRenderDevice::~MetaCoreRenderDevice() { Shutdown(); } bool MetaCoreRenderDevice::Initialize(MetaCoreWindow& window, MetaCoreRenderDeviceConfig config) { if (Impl_->Initialized) { return true; } Impl_->Window = &window; Impl_->Config = config; Impl_->Initialized = true; return true; } void MetaCoreRenderDevice::Shutdown() { if (!Impl_->Initialized) { return; } Impl_->Window = nullptr; Impl_->Initialized = false; } void MetaCoreRenderDevice::RenderFrame() const { } void MetaCoreRenderDevice::PresentFrame() const { } void MetaCoreRenderDevice::SetSceneViewportRect(const MetaCoreViewportRect& viewportRect) { (void)viewportRect; } MetaCoreRenderBackend MetaCoreRenderDevice::GetBackend() const { return Impl_->Config.Backend; } } // namespace MetaCore