gpt4 book ai didi

windows - Windows 内部的 OpenGL

转载 作者:可可西里 更新时间:2023-11-01 11:37:00 25 4
gpt4 key购买 nike

我正在 Windows 上创建一个 OpenGL 应用程序。我不能使用 GLUT,因为我想渲染到多个窗口。我知道如何使用 wgl 来做到这一点,但它非常困惑,我想知道引擎盖下发生了什么。

首先,我必须创建一个具有所需像素格式的窗口。然后我将此窗口连接到 OpenGL,一切正常。驱动程序如何知道在哪里渲染?窗口数据存储在哪里?我正在寻找某种解释,但找不到任何好的解释。

最佳答案

I know how to do it by using wgl, but it is very messy and I would like to know what is happening under the hood.

WGL 就像它得到的那样“在引擎盖下”。这是用于从 HWND 创建 OpenGL 上下文的 接口(interface)。你不能再低级了。

How does the driver know, where to render? Where are the window data stored?

设备上下文 HDC 是在 HWND 上完成渲染的方式。请注意,wglMakeCurrent 采用 HDC,它不必必须是创建上下文的 HDC(它必须使用相同的像素格式)。所以“在哪里渲染”来自那个函数。

这些东西都存储在 Windows 内部和 OpenGL 的 Windows 可安装客户端驱动程序模型中。你不能戳它、修改它,甚至看它。您可以简单地使用它。

关于windows - Windows 内部的 OpenGL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8913995/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com