我在 WINE 中运行 VB6 应用程序,但程序的 OpenGL 部分不起作用。它正在使用 PFD_DRAW_TO_BITMAP。PFD_DRAW_TO_WINDOW 格式似乎有效。
我列举了所有像素格式(大约有 256 种),其中一些符合我的要求。ChoosePixelFormat 似乎返回了正确的格式(在本例中为 pixelFormat 6),但是当我将此值传递给 SetPixelFormat 时,它返回 0。我查看了文档,它说要检查 GetLastError() 以获取更多信息,但是当我调用它时,它返回 0 格式为空白错误消息。
有谁知道无论如何要弄清楚为什么 SetPixelFormat 会失败?我做了一些阅读,听起来 DRAW_TO_BITMAP 自 2009 年 5 月以来已经实施。
我知道 DRAW_TO_BITMAP 不是硬件加速的。这是完全可以接受的。这个应用程序在 Windows 中运行良好——我只需要弄清楚为什么支持的像素格式似乎无法被识别。
我正在他们的软件包管理器中运行 Ubuntu,这是 WINE 的最新版本,如果这很重要,则在 Quadro 上运行(不确定 Wine 是否尝试使用底层显卡,或者它是否虚拟化所有像素格式以进行软件渲染)