投稿者 tel | 2013年10月13日

WebGLのバッファクリア

WebGLではバッファをクリアするときにglClearを使うが、デフォルトではglClearを使わないでもクリアされているみたいだった。

前のフレームの描画結果を残しておきたい場合にはコンテキストを取得するときにオプションを渡す必要がある。

var canvas = document.getElementById(id),
    params = {
        preserveDrawingBuffer: true,
    },
    gl = canvas.getContext('experimental-webgl', params);

上記のようにpreserveDrawingBufferをtrueにして渡すと勝手にクリアされなくなる。

コンテキストを取得するときのパラメータ
http://www.khronos.org/registry/webgl/specs/latest/1.0/#WEBGLCONTEXTATTRIBUTES

バッファをクリアしないで板ポリゴンで上書きすることでブラーのような表現をしてみた
http://jsdo.it/sapphire_al2o3/1XOS


コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

カテゴリー

%d人のブロガーが「いいね」をつけました。