DirectX Programming Programming/DirectX/Basic Programming/DirectX/HLSL www.hanecci.com_FrontPageへ戻る. Copyright(C) 2005-2007 www.hanecci.com All rights reserved. No reproduction or republication without written permission.
DirectX Programming Programming/DirectX/Basic Programming/DirectX/HLSL www.hanecci.com_FrontPageへ戻る. Copyright(C) 2005-2007 www.hanecci.com All rights reserved. No reproduction or republication without written permission.
今回もまた画像処理ネタです。今回はSIG-GT2の講演のデモで紹介した背景差分シェーダです。 背景差分とはよくテレビ番組の制作(天気予報とか昔やってた電波少年)で使われるような人物と実際にそこには無い背景画像を合成する際に使われます。 一般的に知られている方法としては青いシートを背景にしたブルーバックでの撮影方法が有名ですね(言葉の説明がまどろっこしいので参考(デジタルコンテンツ協会の説明))。 そんなわけで今回はGPUでブルーバックではなくてもできる背景差分シェーダについて扱っていきます。 今回のサンプルはATIのGDC 2003の資料である『Video Image Processing Using Shaders-GDC 2003(PDF)』のp108-p109の背景差分を用いたクロマキーを参考にしたものです。 入力画像と背景画像の各ピクセルの距離を求めて、その距離が係
さて、今回は趣向を変えましてGPUで画像処理をやってみるという話の入り口です。GPUを画像処理に使おうというのは1.xのアセンブラシェーダの頃からありましたがHLSLの登場で容易になりました。何よりもプロファイル2.0でうれしいのは一般的な算術命令や三項演算子での入れ替えなんかですね。 画像処理がGPUで出来ることの利点は様々あります。まずは、高速化。続いてはリアルタイム性の高さから動画像への応用。さらにレンダリングしたシーンに適用して効果をつけるなどが利用例として考えられます。 今回はこうした話題の入り口ということで静止画像に用いられる手法を使ってみることにします。勘のよい人ならこれで静止画像に用いられるフィルタ(ラプラシアンやらガウシアン)などへの応用なんかも簡単でしょう。 今回は、下記の左の画像(Fig1)を平均化フィルタで処理します(処理後はFig2)。 今回は、Render
ホーム < ゲームつくろー! < プログラマブルシェーダ編 < HLSLの根っこ:最初の最初からやってみる その6 HLSLの根っこ:最初の最初からやってみる HLSL(High-Level Shader Language:上位レベルシェーダ言語)は頂点シェーダ及びピクセルシェーダを記述できる言語です。前章までのアセンブリによるプログラムは仕組みとしては単純なのですが、やはりアルゴリズムの構築がパズルのようで、可読性の点からも厳しいものがあります。一方でHLSLはC言語風の表記方法で、はるかに読みやすいシェーダプログラムを書くことができます。これはちょうどアセンブラとC言語の関係と同じです。そう考えると世の中がHLSLに移行するのは目に見えています。 HLSLについて書かれた本は沢山あります。ただ、私がアホなだけかもしれませんが、なぜだか本を見てもすっと理解できないんですよ(^-^;。それ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く