From c867a7f1c09b3c5f07e0772fcddabce07bcd7fe7 Mon Sep 17 00:00:00 2001 From: Jesse Talavera Date: Fri, 15 Dec 2023 08:53:31 -0500 Subject: Make the initial 3D renderer configurable via `NDSArgs` (#1913) * Allow 3D renderers to be created without passing `GPU` to the constructor * Make the initial 3D renderer configurable via `NDSArgs` * Fix a compiler error --- src/NDS.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/NDS.h') diff --git a/src/NDS.h b/src/NDS.h index e178c4a..d485bd3 100644 --- a/src/NDS.h +++ b/src/NDS.h @@ -328,6 +328,14 @@ public: Firmware& GetFirmware() { return SPI.GetFirmwareMem()->GetFirmware(); } void SetFirmware(Firmware&& firmware) { SPI.GetFirmwareMem()->SetFirmware(std::move(firmware)); } + const Renderer3D& GetRenderer3D() const noexcept { return GPU.GetRenderer3D(); } + Renderer3D& GetRenderer3D() noexcept { return GPU.GetRenderer3D(); } + void SetRenderer3D(std::unique_ptr&& renderer) noexcept + { + if (renderer != nullptr) + GPU.SetRenderer3D(std::move(renderer)); + } + virtual bool NeedsDirectBoot() const; void SetupDirectBoot(const std::string& romname); virtual void SetupDirectBoot(); -- cgit v1.2.3