2016-05-29 3 views
1

私はglossライブラリを調べています。そして、まともな人として、私はアンチエイリアスがないことにかなり苛立っています。アンチエイリアスを有効にするのに役立ついくつかのOpenGLウィンドウのヒント、特にGL.lineSmoothヒントを知っています。しかし、Gloss haddockドキュメントを見ても、OpenGLのヒントを設定する明確な方法はないようです。だから私はこれをどのように進めるだろうか?GlossでOpenGLウィンドウのヒントを設定する

+0

['gl'](https://hackage.haskell.org/package/gl)ライブラリを見ているかもしれません - おそらく、これはOpenGLのrawバインディングの_complete_セットです。 – ErikR

+0

はい、私はそれについて知っていますが、Gloss OpenGL初期化コードを変更する方法はありません。 – NatureShade

答えて

2

は、ここで私は... 型クラスを経由して

gloss抄録グラフィックスのバックエンドを把握することができます最善だ、と定義された2件のインスタンスがあります。

instance Backend GLFWState 
instance Backend GLUTState 

1が使用され、コンパイル時に制御されています時間はWITHGLUTWITHGLFW CPPマクロを介して。

これは、光沢がなぜGLの設定をカスタマイズする機能を提供しないのかを説明しています。なぜなら、バックエンドが抽象であるということです。

GLUTバックエンドの初期化コードは、グラフィックス/グロス/の内部/インターフェース/バックエンド/ GLUT.hs

initializeGLUT機能であるおそらくあなたは、彼らは道あなたが取得したいGLUTを設定するには、そのルーチンを変更することができます光沢のカスタム版。

+0

Heh。ここでは、他のいくつかのライブラリを抽象化することだけを目的とした2つのライブラリを抽象化したライブラリがあります。 – immibis

+0

はい、最も単純なオプションは、 'initialize'関数を修正し、光沢を手動でコンパイルするようです。私は家に帰るときに試してみます。 – NatureShade

関連する問題