繁体   English   中英

如何从CGLContextObj创建QGLWidget?

[英]How to create a QGLWidget from a CGLContextObj?

我在Mac OS 10.8上使用Qt 4.8.4。

我已经有一个CGLContextObj (在控件之外创建)。

我想从现有的CGLContextObj (或至少与之共享)创建QGLWidget ,以便渲染在CGLContextObj上创建的纹理。

如何创建一个QGLContext从现有CGLContextObj


已经尝试过

  • 我发现了QGLContext::fromPlatformGLContext() ,但是这种方法仅在以QPA模式构建Qt时才可用(...但是./configure -qpa cocoa无法构建,并且我找不到任何文档-qpa标志的作用)。

QPA(Qt平台抽象)仍在Qt 4中进行。它已完全集成到Qt 5中 如果您可以选择升级到Qt 5,事情可能会更容易。

在Qt 5,您可以构建一个QCocoaGLContext (派生类的QPlatformOpenGLContext ),并从获得QOpenGLContextQPlatformOpenGLContext::context()并从获得QGLContextQGLContext::fromOpenGLContext(QOpenGLContext *) 这使您非常接近,但是如何从CGLContextObjQCocoaGLContext

不幸的是,我看QCocoaGLContextCGLContextObj构造QCocoaGLContext的选项。 它确实有一个NSOpenGLContext私有数据成员,该成员在现有构造函数中初始化,因此也许您可以添加另一个构造函数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM