OpenGL SuperBibleの第5版を購入しました。彼らが廃止予定の機能の使用を避けたことは非常に嬉しいですが、彼らの例はGLTools
を利用しています。 GLTools
は、単純な3Dオブジェクトをレンダリングし、視錐台、カメラ、および変換行列を管理するための便利な関数を数多く提供します。
これはすべて素晴らしいですが、提供された抽象化は低レベルの詳細を隠し、GLTools
を使用できないコード(pyopengl
など)に移行するのが困難になっています。私がオンラインで見たチュートリアルの大部分は、回避しようとしている即時モードを使用しています。 glDrawArrays
を使用するものはglEnableClientState
を利用しますが、これも回避しようとしています。
私が探しているのは、OpenGL 3.xに完全に準拠した入門チュートリアルです。それが注文の高すぎる場合は、おそらくランドリーリストの優れた「開始点」機能が適切です。
NeHeに近づかないでください。チュートリアルは絶望的に時代遅れになり、多くの「問題のある」ものも含まれています。
3.xから始める場合は、これらを試してみてください。どちらも最新のものです。
Aurian (Joe Groff)
アーク合成 (Jason L. McKesson)
更新:
ほぼ2年後、自分の投稿をもう一度読んだところ、少しきついように聞こえるかもしれません。
もちろんこれは意図ではありません。私が伝えたかったコアメッセージ(有効なままです)は、NeHeがまだOpenGL 1.x/2.xを扱い、サポートされていない「アンティーク」ライブラリを使用しているというものでした。
一般的に、これはチュートリアル自体が必ずしも悪いことを意味するわけではありませんが、そこから始めることは、現在の最新技術より2世代遅れ、最小世代よりも1世代遅れることを意味します学ぶべきです。レガシーOpenGLを学習するには、後で、知っているほとんどすべてのことを忘れて、ゼロから再学習する必要があります。
とは言っても、NeHeのフロントページは、Damien Mabinによる OpenGL 3.3に焦点を当てたチュートリアル にリンクしています。 。
以下は、Windows向けのOpenGL 3.3チュートリアルのシリーズです。非推奨の機能は使用せず、新しいもののみを使用します。
https://bitbucket.org/rndblnch/opengl-programmable
openGLプログラマブルパイプライン(OpenGL/OpenGL | ES 2.x)の短いステップバイステップチュートリアル。依存関係:python 2.5 +、PyOpenGL 3.0.1+
ダイレクトモードから開始し、プログラム可能なパイプラインでのみ実行されるように段階的に変換される、小さいながらも完全なglut/openglプログラムの連続バージョン。連続するバージョン間の差分を見て、必要な変更のハイライトを確認します(例: https://bitbucket.org/rndblnch/opengl-programmable/changeset/b21131e37ed7 )。