Я знаю, как это сделать с помощью wgl, но это очень грязно, и я хотел бы знать, что происходит под капотом.
WGL так же "под капотом", как и получает. Это интерфейс для создания контекста OpenGL из HWND. Вы не можете получить более низкий уровень.
Как водитель узнает, где рендерить? Где хранятся данные окна?
Контекст устройства, HDC, - это то, как выполняется рендеринг на HWND. Обратите внимание, что wglMakeCurrent
принимает HDC, который не должен быть HDC, из которого был создан контекст (он просто должен использовать тот же формат пикселей). Таким образом, «где визуализировать» происходит от этой функции.
Все это хранится внутри Windows и модели устанавливаемого драйвера клиента Windows для OpenGL. Вам не разрешено тыкать, изменять или даже смотреть на это. Вы можете просто использовать его.