Resize a Window (On Windows OS) while Rendering

旧巷老猫 提交于 2019-12-25 00:03:04

问题


All I want is to make a simple application that you can resize while rendering. (IE resize while never once seeing the buffer out the edge of the screen)

Most commercial, professional, and major open source programs seem to be capable of this, while most all personal or hobbyist programs never seem to be capable of this. (I have no idea why)

I want to make a professional looking program like that.


A few examples of what I'm talking about:

  • https://gamedev.stackexchange.com/questions/127691/how-to-stop-sdl-from-freezing-the-rendering-while-resizing-the-window
  • https://www.gamedev.net/forums/topic/488074-win32-message-pump-and-opengl---rendering-pauses-while-draggingresizing/
  • https://en.sfml-dev.org/forums/index.php?topic=19388.5

What I have used in the past for windowing are:

  • SDL (Currently)
  • SFML
  • GLFW +OpenGL

And this problem applies to all 3 from what I can recall.


I would like to know the following:

  1. If this is a problem that is solvable, please tell me why or why not I've never once looked that low-level (OS APIs nor Graphics back-ends) so I just want to know why.

  2. What's the way to solve this? Is it within my means?

  3. Is the solution -really- a perfect solution? I've seen many people suggest solutions that have various problems (IE minimizing the buffer but not getting rid of it entirely OR you got rid of it but there's a ton of flickering (I forgot why but it doesn't matter))

My current understanding is that this a Win32 API/Windows API related bug related to blocking. I don't have any deeper understanding or knowledge on how to create my own solution easily, but if I must learn then I will.

来源:https://stackoverflow.com/questions/50828241/resize-a-window-on-windows-os-while-rendering

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!