It's not 100% clear that this measurement actually corresponds to anything real. if there are 100 reasons to wait for vsync, and you remove one of them. You really do need to measure the complete stack here, especially if your theory is that issues like vsync are at stake, because the level at which vsync happens can vary, and because there are interactions here that may matter. So, this is measuring some rather artificial and fairly uninteresting time. Virtual keypresses were sent with WinAPIs SendInput and pixels copied off screen with BitBlt. Then it waits until the character appears on screen. > I used my own hacky measurement program written in C++ that sends a keypress to the application to be benchmarked. I will gladly believe this is a real problem, but this page does not demonstrate that (at least not convincingly) the metric used is simply too poor. So I think the answer is to move forward, embrace the compositor, and solve the engineering challenges, rather than move backwards, even though adding the compositor did regress latency metrics.Įdit: here's the talk I was referencing that mentions overlays: When that happens, you get your frame back. These already exist on mobile, where power is important, but making it work for the desktop is challenging. WAIT UNTIL RESPONSIVE RESIZE FINISHES REDRAWING THE PAGE WINDOWSIn my experiments so far (which are not quite ready to be made public but hopefully soon), this gets you window resizing that almost exactly tracks the mouse (as opposing to lagging at least one frame behind), low latency, and excellent power usage.įurther, Microsoft engineers have said that hardware overlays are coming, in which the graphics card pulls content from the windows as it's sending the video out the port, rather than taking an extra frame time to paint the windows onto a composited surface. Further, instead of sending a single frame, send a small (~100ms) slice of time and attach animations so the motion can be silky smooth. When updating the content or scrolling, just send a small delta to that tree. Instead of sending a frame to the system, send a tree of layers. It's absolutely true that the compositor adds a frame of latency, but I have a very different take than "turn it off."įirst, it's possible to design an app around the compositor. I've been experimenting with this too, in the context of the Windows front-end for xi editor.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |