0

に使用する頂点情報を含むバッファがありますglDrawArrays。バッファ内の三角形は、スプライトとして画面の周囲に配置されます。どういうわけか、バッファ全体を更新せずに、これらのアイテムの一部の描画を省略したいと思います。

頂点に遭遇したときに何も描画されないように頂点を変更できる方法はありますか?バッファ全体を再度更新する必要があるため、完全に削除したくありません。

OpenGLES2.0のみをサポートする一部のデバイスをターゲットにしています。

4

2 に答える 2

2

glDrawElementsを使用して、インデックスバッファを提供できます。

于 2012-08-27T15:20:48.353 に答える
1

glDrawArraysoffsetとパラメータがありcountます。これらのパラメーターを使用して、バッファー内の表示されている要素のみを描画できます。これによりglDrawArray、1 つのバッファに対して複数の呼び出しが発生します。

もう 1 つの方法はdiscard、フラグメント シェーダーのコマンドを使用して、シェーダー内の三角形をスキップすることです。この場合、どの三角形をシェーダーにレンダリングする必要があるかについての情報を提供する必要があります (例: ユニフォームによって)。

于 2012-08-27T13:12:36.100 に答える