From 678795b7930b5944a87d6c9193d1842f7402356f Mon Sep 17 00:00:00 2001 From: Patedam Date: Sun, 16 Aug 2026 22:44:52 -0400 Subject: [PATCH] calloc to arena --- Juliet/include/Graphics/DebugDisplay.h | 2 +- Juliet/src/Engine/Engine.cpp | 3 +-- Juliet/src/Graphics/D3D12/D3D12GraphicsDevice.cpp | 2 +- Juliet/src/Graphics/DebugDisplayRenderer.cpp | 8 +++----- 4 files changed, 6 insertions(+), 9 deletions(-) diff --git a/Juliet/include/Graphics/DebugDisplay.h b/Juliet/include/Graphics/DebugDisplay.h index 216ae21..951745b 100644 --- a/Juliet/include/Graphics/DebugDisplay.h +++ b/Juliet/include/Graphics/DebugDisplay.h @@ -8,7 +8,7 @@ namespace Juliet { - extern JULIET_API void DebugDisplay_Initialize(GraphicsDevice* device); + extern JULIET_API void DebugDisplay_Initialize(NonNullPtr arena, GraphicsDevice* device); extern JULIET_API void DebugDisplay_Shutdown(GraphicsDevice* device); extern JULIET_API void DebugDisplay_DrawLine(const Vector3& start, const Vector3& end, const FColor& color, bool overlay); extern JULIET_API void DebugDisplay_DrawSphere(const Vector3& center, float radius, const FColor& color, bool overlay); diff --git a/Juliet/src/Engine/Engine.cpp b/Juliet/src/Engine/Engine.cpp index 370da57..a3ef1a8 100644 --- a/Juliet/src/Engine/Engine.cpp +++ b/Juliet/src/Engine/Engine.cpp @@ -37,10 +37,9 @@ namespace Juliet { GraphicsDevice* device = EngineInstance.Application->GetGraphicsDevice(); - // DebugDisplay system if (device) { - DebugDisplay_Initialize(device); + DebugDisplay_Initialize(EngineInstance.PlatformArena, device); if (Window* window = EngineInstance.Application->GetPlatformWindow()) { bool success = InitializeMeshRendererGraphics(device, window); diff --git a/Juliet/src/Graphics/D3D12/D3D12GraphicsDevice.cpp b/Juliet/src/Graphics/D3D12/D3D12GraphicsDevice.cpp index 0e3f07c..c77c1e6 100644 --- a/Juliet/src/Graphics/D3D12/D3D12GraphicsDevice.cpp +++ b/Juliet/src/Graphics/D3D12/D3D12GraphicsDevice.cpp @@ -4618,7 +4618,7 @@ namespace Juliet driver->Semantic = WrapString("TEXCOORD"); driver->FramesInFlight = 2; - auto device = static_cast(Calloc(1, sizeof(GraphicsDevice))); + GraphicsDevice* device = ArenaPushStruct(driverArena JULIET_DEBUG_PARAM("GraphicsDevice")); if (!device) { DestroyDriver_Internal(driver); diff --git a/Juliet/src/Graphics/DebugDisplayRenderer.cpp b/Juliet/src/Graphics/DebugDisplayRenderer.cpp index ecd9183..217c92d 100644 --- a/Juliet/src/Graphics/DebugDisplayRenderer.cpp +++ b/Juliet/src/Graphics/DebugDisplayRenderer.cpp @@ -3,7 +3,6 @@ #include #include #include -#include #include #include #include @@ -157,7 +156,7 @@ namespace Juliet } } // namespace - void DebugDisplay_Initialize(GraphicsDevice* device) + void DebugDisplay_Initialize(NonNullPtr arena, GraphicsDevice* device) { if (g_DebugState.Initialized) { @@ -167,7 +166,8 @@ namespace Juliet g_DebugState.Device = device; // Allocate single CPU vertex array (depth-tested in first half, overlay in second half) - g_DebugState.Vertices = static_cast(Malloc(kMaxDebugVertices * sizeof(DebugVertex))); + g_DebugState.Vertices = + ArenaPushArray(arena, kMaxDebugVertices JULIET_DEBUG_PARAM("Debug Display Renderer Vertices")); g_DebugState.DepthTestedVertexCount = 0; g_DebugState.OverlayVertexCount = 0; @@ -212,8 +212,6 @@ namespace Juliet DestroyGraphicsTransferBuffer(device, g_DebugState.TransferBuffer); } - SafeFree(g_DebugState.Vertices); - g_DebugState = {}; }