2011-08-16 4 views
1

私のメインシーンは3D空間のGL_POINTSで構成されています。私がしたいのは、下にある3D GL_POINTS状態を維持しながら、ユーザーが画面上で指を動かすと、シーンの上に単一のGL_LINES線(2dオーバーレイ)を描くことができることです。これが可能であれば、私は理解するのが難しいです。 2つのフレームバッファが必要ですか? GL_POINTSの以前のフレームバッファデータを保存し、それを後続フレームで再レンダリングするにはどうすればよいですか?フレームバッファ(GL_LINEレイヤ用とGL_POINTSデータ用)を混在させる必要がありますか?古いバッファの質問を書き直します

setFramebufferを呼び出さずにpresentFramebufferを呼び出そうとしましたが、これは以前のフレームから描画された各GL_LINESを保持しています。フレームバッファの一部を保持し、他の部分を削除するにはどうすればよいですか?

答えて

0
  1. あなたの画面メモリ

  2. はちょうどあなたが
  3. 場合があり、そのいずれかですべてのものをレンダリングしているすべての

    • フレームバッファで2フレームバッファを必要としませんあなたはフレームバッファVBO(VertexBufferObject)を意味していますが、それらは全く同じではありません

      • あなたは同じデータ(頂点)
      • をレンダリングする場合は、あなただけの1倍VBO
      • を必要とGL_LINES/GL_LINE_LOOPまたは何

      • と一度GL_POINTSで1回二回

      • glDrawArrays/glDrawElementsを呼び出します

      • VBOX
      • が必要な場合や、数行しかない場合は、代わりにglBegin/glEndを使用することができます。あなただけのビューの別の領域を必要とするならば、あなたは、大腿四頭筋による国境を上書きし、

        • クリッピング、変更のビューポートを使用することができます
      • ...テクスチャへ

      • 引き分け、というように...多くのオプションがあり、よりそこ
関連する問題