ref: 56bcf3d22d5eda0971a9cdf81167dfebdd315b1e
parent: 05c5853e74989a9b8bb733f148097e6a3c18cf68
author: rodri <rgl@antares-labs.eu>
date: Wed Mar 5 17:38:39 EST 2025
wipe the back buffer after rendering. this avoids having to hold two full a-buffers after shooting the camera.
--- a/camera.c
+++ b/camera.c
@@ -252,7 +252,6 @@
job->shaders = s;
job->donec = chancreate(sizeof(void*), 0);
- fbctl->reset(fbctl);
t0 = nanosec();
sendp(c->rctl->jobq, job);
recvp(job->donec);
@@ -278,6 +277,7 @@
}
t1 = nanosec();
fbctl->swap(fbctl);
+ fbctl->reset(fbctl);
updatestats(c, t1-t0);
printtimings(job);
--- a/fb.c
+++ b/fb.c
@@ -590,6 +590,7 @@
fc->fetchraster = framebufctl_fetchraster;
fc->getfb = framebufctl_getfb;
fc->getbb = framebufctl_getbb;
+ fc->reset(fc);
return fc;
}