0

私は OpenGL と GLSL にかなり精通していますが、現在 OpenGL / GLUT 用の C++、または GLSL 用の GLMan でしか書いていません。私はモバイル デバイス、特に Android で OpenGL を調べていて、それについていくつか質問がありました。

まず、ES 2.0 では「パイプライン全体をプログラムする」必要があることはわかっていますが、GLSL ではずっとそうしてきたと思いますよね? ファイルの作成.vertなど?.frag

第二に、私はこのチュートリアルを見てきましたが、役に立ちそうですが、最初に電話を切ったのは頂点/フラグメント シェーダー コードでした。それをファイルとして指定する方法はありますか?その恐ろしい文字列連結形式でシェーダーを書かなければならないなんて想像もできません。

次に、最初に、物事を調べたり学習したりするための最良のリファレンスは何ですかprecision mediump float。そのようなものは今まで見たことがありません。次に、前述の宣言と私が考えていることとの間に類似点を描くためのリソースは存在しますか?と のようuniform float xに、より慣れていvarying vec3 yます。

最後に、OpenGL ES 2.0 を学習するための良い本を誰か提案してもらえますか?

4

1 に答える 1

3

Re: パイプライン全体のプログラミング。これは、シェーダーと共にずっとやってきたことかもしれませんが、必ずしもそうであるとは限りません。デスクトップにシェーダーを導入したとき、ftransform. ES 2.0 では、そうではありません。他の違いの中でも特に、マトリックス スタックはまったくなく、定義済みの属性やユニフォームもありません。したがって、デスクトップ GL 2.0 で厳密に必要だったよりもさらに多くのパイプラインをプログラムする必要があります。

Re: シェーダーを別のファイルに保存します。それは間違いなく問題ではありません。Stringファイルから をロードするだけです。これなど、古い Java メソッドはどれでもかまいません。

Re: 参考文献; 絶対に最高のものは、OpenGL ES 2.0 API クイック リファレンス カード(PDF) です。わずか 4 ページで OpenGL ES 2.0 のすべてが説明されています。あなたが求めている具体的なことに関しては、3 ページ目 (GLSL セクションの最初のページ) の精度修飾子を参照してください。類似点を直接描画するためのリソースを認識していませんが、予期しない構文についてそのドキュメントを検索するだけで十分です。精度修飾子のような珍しいものはすべて、それ自体を調べることで簡単に理解できる小さな調整です。

Re: 本; 私は直接何も知りません。デフォルトの推奨は青本だと思います。

于 2012-04-04T18:24:15.837 に答える