Note the renderer's speed on real hardware

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
dhkatzandClaude Opus 5.5 committed 2026-10-28 07:39:30 -07:00
1 parent 3cdda4c7ed
commit 7d17cb0b1f
1 file changed
+5 -5
+5 -5
View File
@@ -57,11 +57,11 @@ For comparing while the client runs (development):
be taken, and gives up on a renderer process that stops taking them (the client's renderer carries on). be taken, and gives up on a renderer process that stops taking them (the client's renderer carries on).
- The renderer process reproduces IMVU's Direct3D 9 setup (`renderer/shaders/fixed_function.hlsl`), particles - The renderer process reproduces IMVU's Direct3D 9 setup (`renderer/shaders/fixed_function.hlsl`), particles
included (point sprites, drawn as instanced squares), with a pipeline per combination of states. included (point sprites, drawn as instanced squares), with a pipeline per combination of states.
- Speed: on the development VM (software rendering) a room frame takes 8 to 60 ms to draw; the time from the - Speed: on a PC with a graphics card, a room frame takes about 2 ms to draw (some 430 draws), and the time from
client finishing a frame to ours being presented averages about 60 ms. The renderer process draws only the the client finishing a frame to ours being presented is about 3 ms: the halves can't be told apart, even while
newest frame when it falls behind, and keeps at most one frame queued. Over Remote Desktop, the half drawn by the the camera moves. On the development VM (software rendering, over Remote Desktop) drawing takes 8 to 60 ms, and
renderer process (another process's window, composited by Windows) visibly trails the client's half by more the right half visibly trails, mostly from compositing another process's window over Remote Desktop. The
than that; that delay comes after presenting, and is to be checked on a real graphics card and display. renderer process draws only the newest frame when it falls behind, and keeps at most one frame queued.
Next: render targets (offscreen frames are skipped), the renderer process drawing the whole view in place of the Next: render targets (offscreen frames are skipped), the renderer process drawing the whole view in place of the
client's renderer, and one renderer process for all of a client's views. client's renderer, and one renderer process for all of a client's views.