48 lines
1.4 KiB
Diff
48 lines
1.4 KiB
Diff
|
From 70c235938f0b64c4f08a478d3107e5254ad904c6 Mon Sep 17 00:00:00 2001
|
||
|
From: Bananymous <bananymousosq@gmail.com>
|
||
|
Date: Wed, 27 Nov 2024 13:28:42 +0200
|
||
|
Subject: [PATCH] Remove unnecessary copy from framebuffer
|
||
|
|
||
|
---
|
||
|
doomgeneric/doomgeneric.c | 2 --
|
||
|
doomgeneric/doomgeneric_banan_os.cpp | 6 +++---
|
||
|
2 files changed, 3 insertions(+), 5 deletions(-)
|
||
|
|
||
|
diff --git a/doomgeneric/doomgeneric.c b/doomgeneric/doomgeneric.c
|
||
|
index 782a7e7..f4eb63e 100644
|
||
|
--- a/doomgeneric/doomgeneric.c
|
||
|
+++ b/doomgeneric/doomgeneric.c
|
||
|
@@ -18,8 +18,6 @@ void doomgeneric_Create(int argc, char **argv)
|
||
|
|
||
|
M_FindResponseFile();
|
||
|
|
||
|
- DG_ScreenBuffer = malloc(DOOMGENERIC_RESX * DOOMGENERIC_RESY * 4);
|
||
|
-
|
||
|
DG_Init();
|
||
|
|
||
|
D_DoomMain ();
|
||
|
diff --git a/doomgeneric/doomgeneric_banan_os.cpp b/doomgeneric/doomgeneric_banan_os.cpp
|
||
|
index d00c30d..9d13b43 100644
|
||
|
--- a/doomgeneric/doomgeneric_banan_os.cpp
|
||
|
+++ b/doomgeneric/doomgeneric_banan_os.cpp
|
||
|
@@ -80,13 +80,13 @@ void DG_Init()
|
||
|
s_key_write_index = (s_key_write_index + 1) % s_key_queue_size;
|
||
|
}
|
||
|
);
|
||
|
+
|
||
|
+ ASSERT(DG_ScreenBuffer == nullptr);
|
||
|
+ DG_ScreenBuffer = s_window->pixels().data();
|
||
|
}
|
||
|
|
||
|
void DG_DrawFrame()
|
||
|
{
|
||
|
- for (size_t y = 0; y < DOOMGENERIC_RESY; y++)
|
||
|
- for (size_t x = 0; x < DOOMGENERIC_RESX; x++)
|
||
|
- s_window->set_pixel(x, y, 0xFF000000 | DG_ScreenBuffer[y * DOOMGENERIC_RESX + x]);
|
||
|
s_window->invalidate();
|
||
|
s_window->poll_events();
|
||
|
}
|
||
|
--
|
||
|
2.47.1
|
||
|
|