0

私はOpenGLES1.1(IOS用)テクスチャリングの初心者ですが、モーションブラーの効果を作成するのに問題があります。グーグル中に、シーンをさまざまな時点でいくつかのテクスチャにレンダリングしてから、これらすべてのテクスチャをさまざまなアルファ値で画面に描画する必要があることがわかりました。しかし、問題は、これらすべてを実装する方法がわからないことです!つまり、私の質問は次のとおりです。

  1. 画面に2Dテクスチャを描画するにはどうすればよいですか?正方形を作ってその上にテクスチャを配置する必要がありますか?それとも、画面に直接テクスチャを描画する方法がありますか?
  2. 異なるアルファ値で画面上に複数のテクスチャを(次々に)描画するにはどうすればよいですか?

私はすでにいくつかのアイデアを思いついたが、それらが正しいかどうかはわからない。前もって感謝します!

4

1 に答える 1

2

もちろん、最初のアドバイスは、高度な作業を行う前に基本を理解することです。それ以外:

  1. はい、フルスクリーン テクスチャを描画するには、テクスチャ付きの画面サイズのクワッドを描画するだけです。この場合、正投影は良い考えであり、クワッドの画面配置とその適切なサイズ設定を容易にします。最初にテクスチャを取得する (それらにレンダリングすることによって) には、FBOが役立つかもしれませんが、それらが ES 1 デバイスでサポートされているかどうかはわかりませんglCopyTexSubImage2D

  2. そうですね、複数のテクスチャ化されたクワッド (1 を参照) を重ねて描画するだけです。テクスチャ環境を構成して、クワッドのベース カラー ( glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE)) でテクスチャの色をスケーリングし、クワッドに の色を与えることができます(1, 1, 1, alpha)(もちろん、照明は無効にする必要があります)。さらに、アルファ ブレンディングを有効にし( glEnable(GL_BLEND))、適切なブレンディング機能を使用する必要があります (glBlendFunc(GL_SRC_ALPHA, GL_ONE)すべきです)。

しかし、これらすべての用語で何もわからない場合は、より高度な効果を掘り下げる前に、まず優れた学習リソースを使用して基本を学習する必要があります.

于 2012-03-13T08:54:49.693 に答える