diff options
author | rodri <rgl@antares-labs.eu> | 2024-07-20 12:10:32 +0000 |
---|---|---|
committer | rodri <rgl@antares-labs.eu> | 2024-07-20 12:10:32 +0000 |
commit | 8dca0cb97c2750ee2d2f57c01a5ece8dc5752c35 (patch) | |
tree | e6f44d4ac4b31d1803a35d26ff7b534bdbe94651 /solar.c | |
parent | 1e2596cb1497bd8e491a3b9cd05062a98256ab5d (diff) | |
download | 3dee-8dca0cb97c2750ee2d2f57c01a5ece8dc5752c35.tar.gz 3dee-8dca0cb97c2750ee2d2f57c01a5ece8dc5752c35.tar.bz2 3dee-8dca0cb97c2750ee2d2f57c01a5ece8dc5752c35.zip |
improve redraw responsiveness.
Diffstat (limited to 'solar.c')
-rw-r--r-- | solar.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -386,7 +386,6 @@ redraw(void) int i; lockdisplay(display); - camera->view->draw(camera->view, screenb); draw(screen, rectaddpt(viewr, screen->r.min), screenb, nil, ZP); draw(screen, rectaddpt(cmdbox.r, screen->r.min), display->white, nil, ZP); for(i = 0; i < cmdbox.ncmds; i++){ @@ -417,6 +416,9 @@ renderproc(void *) camera->times.Rn[camera->times.cur-1].t0, camera->times.Rn[camera->times.cur-1].t1); Δt = nsec() - t0; if(Δt > HZ2MS(60)*1000000ULL){ + lockdisplay(display); + camera->view->draw(camera->view, screenb); + unlockdisplay(display); nbsend(drawc, nil); t0 += Δt; } |