私のアプリでは、画面に10k〜200k行があります。そして、線は3D効果で2D空間に描画されます。Android(およびiOS)でQtを使用して2d行のOpenGLで3D効果を描画します
Qtを使って、iOSとAndroidで描画速度を上げたいと思います。 QtでopenGLを試してみたい。
私はかなり単純なコードしてみてください:それは私のAndroid上で緑色の画面を表示する必要がありますが、それは私のAndroidの上で白い画面を示し https://github.com/mkdh/Qt_QOpenGLWidget_screen_test.git
を。 Androidで白い画面が表示される理由をご存知ですか?このAndroidでopenGLを使用したい場合、どうすればいいですか?
クリエーターのアプリケーションの出力:ところで
InputMethodManagerService(536): Enabling: SessionState{uid 10287 pid 25474 method 224d6020 session 2250c900 channel ClientState{22861db8 uid 10287 pid 25474} (server)}
W/My First openGL Widget(25474): (null):0 ((null)): Cannot find EGLConfig, returning null config
W/My First openGL Widget(25474): (null):0 ((null)): QEGLPlatformContext: Failed to create context: 3005
W/My First openGL Widget(25474): (null):0 ((null)): Cannot find EGLConfig, returning null config
W/My First openGL Widget(25474): (null):0 ((null)): QEGLPlatformContext: Failed to create context: 3005
W/My First openGL Widget(25474): (null):0 ((null)): QOpenGLWidget: Failed to create context
W/My First openGL Widget(25474): (null):0 ((null)): Cannot find EGLConfig, returning null config
W/My First openGL Widget(25474): (null):0 ((null)): QEGLPlatformContext: Failed to create context: 3005
W/My First openGL Widget(25474): (null):0 ((null)): QOpenGLWidget: Failed to create context
W/My First openGL Widget(25474): (null):0 ((null)): Cannot find EGLConfig, returning null config
W/My First openGL Widget(25474): (null):0 ((null)): QEGLPlatformContext: Failed to create context: 3005
W/My First openGL Widget(25474): (null):0 ((null)): QOpenGLWidget: Failed to create context
W/My First openGL Widget(25474): (null):0 ((null)): composeAndFlush: makeCurrent() failed
W/My First openGL Widget(25474): (null):0 ((null)): composeAndFlush: makeCurrent() failed
、なぜ私は、ボイドMyGLWidgetにコメント:: initializeGL()としてglBegin(GL_LINES)で線を引くことができませんか?
。 QNanoPainterはQtの公式な機能ではないようです。私はこの問題を下記のコメントで修正できます。 // format.setVersion(3、2); // format.setProfile(QSurfaceFormat :: CoreProfile); – weilun