WebGL:HTML5でカラーバッファが勝手にクリアされるのを防ぐ方法
WebGLで前回の描画内容が消えてしまう問題
WebGLでは、コード上でカラーバッファをクリアしないよう意図していても、次の描画サイクルの開始時に画面が自動的にクリアされてしまうことがあります。そのため、前フレームの描画結果を残したい場合には困りものです。
mycanvas.clearColor(d[1], d[2], d[3], 2.0); mycanvas.clear(gl.COLOR_BUFFER_BIT);
上記のような明示的なクリア処理を書かなくても、デフォルト設定では毎フレームの描画前にドローバッファがリセットされる仕様になっているため、前回の描画内容は保持されません。
解決策:preserveDrawingBuffer オプションを有効にする
この問題を回避するには、WebGLコンテキスト(WebGLRenderingContext)を作成する際に preserveDrawingBuffer: true を指定します。こうすることで、以前の描画バッファの内容をそのまま保持できます。
gl = someCanvas.getContext("webgl", { preserveDrawingBuffer: true });
デフォルトの動作と注意点
preserveDrawingBuffer のデフォルト値は false です。このプロパティを true に変更するだけで、前回の描画結果を簡単に残すことができます。
ただし、このオプションを有効にするとブラウザ側でのバッファ管理コストが増え、パフォーマンスにわずかな影響が出る可能性があります。そのため、canvasのスクリーンショット取得や描画結果の保存など、本当に必要なケースに限定して使用するのがおすすめです。
-
ノートパソコンの過熱を防ぐ方法|原因・症状・具体的な対策を解説
ノートパソコンの過熱の多くは、本体の経年劣化が原因です。古くなったノートPCでは、ブルースクリーンやデータ消失などさまざまなトラブルが発生しやすくなります。原因を特定できないまま放置していると、気づいたときにはマザーボードが焼き切れていた、という事態にもなりかねません。この記事では、ノートパソコンの過熱を診断し、解決する方法を詳しく解説します。「予防は治療に勝る」という言葉どおり、早めの対策が大切です。ノートパソコンが過熱する主な原因過熱の原因はいくつかありますが、最も多いのは内部冷却機能の不足や、通気口・ファン・排気ポート・ラジエーターにホコリなどの異物が詰まっていることです。ノートパソコン
-
Webサイトの通知ポップアップをオフにする方法|Chrome・Firefox・Safari別の設定手順
多くのWebブラウザには、サイトが最新情報や更新をお知らせする「通知(プッシュ通知)」を表示できる機能が備わっています。サイト側は通知を表示するために、ユーザーへ「通知を表示しますか?」という確認ダイアログを表示し、「許可」か「ブロック」を選択してもらいます。うっかり「許可」を押してしまうと、その後さまざまなサイトから更新情報のポップアップが届くようになります。しかし、重要な作業中に通知が何度も表示されると集中力が削がれ、イライラやストレスの原因になります。頻繁に起こると、気が散って途方に暮れてしまうこともあるでしょう。そこで本記事では、主要なWebブラウザ(Google Chrome/Moz