我的select到底是什么? 我有我需要在OpenGL和DirectX中编写的 程序 ,我想使用Qt for OpenGL,而不必为我的任务的DirectX组件重新实现一半的程序。
我已经看过谷歌,我发现人们抱怨Direct3D是Qt的依赖,人们讨论如何实现QD3DWidget子类QWidget类似的方式QGLWidget,但没有人谈到如何实现它或任何地方例子是。
我需要帮助。 我想知道是否有可能? 我需要做些什么才能使它工作? 之前已经完成了吗?
它比我想象的简单,
-> Create a QWidget -> Override paintEngine() method, does nothing, just returns NULL -> Assign HWND to widget->winId() #ifdef USE_QTGUI QApplication a(argc, argv); CD3DWidget wndw; wndw.show(); wndw.resize(1280,960); hWnd = wndw.winId(); #else hWnd = CreateAppWindow(name,300,300); #endif //CD3DWidget class contains only the following definitions CD3DWidget::CD3DWidget(QWidget * parent):QWidget(parent){ } QPaintEngine *CD3DWidget::paintEngine (){ return NULL; }
谢谢,
简历
更改列表:
Qt 4.6在4.5.x系列中引入了许多新功能和改进以及错误修正。
………………….
………………….
对于所有的价值, 这里是如何获得Ogre3D的输出到Qt 4.5窗口 。 基本上,你抓住一个渲染表面,你用它来渲染输出。 这是“D3D / OpenGL应用程序方法中的Qt”。
这里是使用OpenGL窗口Qt 4.5的 OpenGL示例。
如果我理解正确,Direct3D支持是实验性的, 只用于绘制窗口 。