2016-06-19 12 views
-1

私のゲームエンジンプロジェクトのシンプルなエディタを使っていますが、プロジェクトはメインワークステーション(OpenGL 3.3以降のGTX 650Ti)でうまく動作しているようですが、私のテストデスクトップ(OpenGL 2.1の最大サポートを備えたGMA4500)でテストしたときに壊れているようです。GtKGLAreaはOpenGL 2.1のコンテキストを作成できません

GtkGLAreaのgtk_gl_area_make_current()は、gtk_gl_area_set_required_version()のGLバージョンを2.1に指定しても、OpenGL 2.1コンテキストを作成できません。

gtk glareaデモ(https://git.gnome.org/browse/gtk+/tree/demos/gtk-demo/glarea.c)をテストして同じ結果を得てトラブルシューティングを試みました。

すでにウェブ上で検索していますが、解決策はありません。誰かがebassiのglareaの例と同じexatctの問題について言及していますが(https://github.com/ebassi/glarea-example/issues/2

これには解決策はありますか?

オペレーティングシステム:Fedoraの23 GTKバージョン3.18


EDIT: オペレーティングシステム(Fedoraの23)のOpenGL 2.1を使用している(glxinfoでチェック)、およびデモによって考慮するGTK +ソースに与えられました私はGL 3.0+をデフォルトとして使用しているGTKを想定しています。 これを乗り越える方法はありますか?(GTKから始まる以下の彼の答えにebassiによると、+ 3.20 GdkGLContext意志コアプロファイルが利用できない場合は、従来のプロファイルにフォールバックとしてすぐに私はGTK + 3.20にアップグレードして、それをテストします。)

EDIT 2: I GdkGLContextの代わりにSDLで作成されたコンテキストを使用して回避策を講じることができますが、OpenGL 2.1で動作させるためにGdkGLContextを作成するよう依頼しています。

+0

この質問はOSの問題のように聞こえるので、おそらくSOには属しませんが、 'glxinfo'を実行しようとしましたか?お使いのOSが実際に使用しているバージョンを教えてください。また、正確なエラー、動作、レスポンスなどについて具体的に説明できますか? – oldtechaa

+0

OSはOGL 2.1を使用しています。デフォルトのコンテキスト作成は他のlib(glfw、wxWidget、qt)上で正常に動作しています。だから私はそれがOSによって引き起こされた問題だとは思わない。 –

+0

OSに問題がなければ、正確な動作を知る必要があります。 – oldtechaa

答えて

1

GTK +はデフォルトでOpenGL 3.2以降のコアプロファイルコンテキストを作成しようとします。

コアプロファイルが利用できない場合、GTK + 3.20以降、GdkGLContextは従来のプロファイルにフォールバックしようとします。 gdk_gl_context_is_legacy()を使用してGdkGLContextがレガシーモードになっているかどうかを確認できます。

コアプロファイルを従来のものと共有することは不可能であり、GDKは描画のために内部的にGLコンテキストを作成するため、従来のコンテキストを自分で選択することはできません。

+0

参考にしていただきありがとうございます.GDK +を3.20にアップグレードして、まず 'GdkGLContext'でレガシーモードを使用できるかどうか確認します –

関連する問題