标题:关于QML、OPenGl混编问题
作者:hnsyzlc
日期:2016-01-13 18:26
内容:
参考了彩阳大神的《Qt移动应用开发(八):实现跨平台的QML和OpenGL混合渲染》一文,在Qt5.4的平台上实现的时候出现了一些问题。
Qt5.4的情况下,未继承QOpenGLFunctions不能使用对应的该类封装的opengl函数,而彩阳大神的代码里只是继承了QQuickItem,在进行渲染的时候直接使用的该类的函数。
不让用就不让用呗,那我自己定义一个QOpenGLFunctions对象,但是,问题又来了,定义QOpenGLFunctions需要制定一个QOpenglContext,但是这个context怎么获取呢,若只是在QML全屏调用我们的组件,直接通过QOpenGLFunctions::currentContext()获取当前的设备上下文,问题是暂时解决了,但是如果想把我们的组件作为其他QML组件一样,可以自己随意布局,随意指定大小,问题就来了,里面在设置视口等地方用的都是window(),这个window()就是整个应用程序的一个窗口,导致我将组件以100*100嵌入到800*600的窗口下时,显示的就是800*600的,虽然Item的size值是100*100。
请教各位大神,这个时候该怎么办!谢谢!
对于这些都处于萌芽起步阶段,希望各位指点迷津。谢谢!
#1 [彩阳 01-14 10:26]
可能问题比较复杂。
详细在qtdream.com回复我吧。
#2 [po_chan 03-08 09:19]
学习中
#3 [t1029901995 08-05 12:37]
回帖得金币了。。。。