「古典的ライティング・モデル」から「グローバル・イルミネーション」まで
3D-CGプログラマーのためのリアルタイムシェーダー入門【理論と実践】
|
|
金谷 一朗 著
2008年10月22日発売
A5判
208ページ
定価 \2,530(本体 \2,300)
|
ISBN978-4-7775-1401-4 C3004 \2300E
|
 |
「シェーディング」とは、3D画像で立体的に見せるための手法で、それを行なうプログラムが、「シェーダー」です。
「リアルタイム・シェーダー」は、リアルタイム・コンピュータグラフィックスにとって、もはや必要不可欠な存在と言っても過言でなくなっています。
本書では、「ANSI C」言語によるOpenGLプログラムと「Cg」言語(バージョン1.1以降)によるシェーダーを組み合わせ、リアルタイム・コンピュータグラフィックスを描く方法を解説しています。
前半を「理論」に割き、後半を「実践」にあて、サンプルもシェーダーだけでなく、シェーダーを呼び出すOpenGLプログラムもきちんと書いてあります。
本書を読めば、“オモチャ”ではない、本物のシェーダー・プログラムの入り口に立てるでしょう。
※本書は、2004年11月に発行した「3D-CGプログラマーのためのリアルタイムシェーダー【理論と実践】」に加筆・修正したものです。
|
|
■ 主な内容 ■ |
[1.1] ライティングの物理 |
[1.2] レンダリング方程式 |
[1.3] リアルタイム・シェーディング |
[1.4] 古典的ライティング・モデル |
[1.5] リアルタイム・シェーダーの基礎 |
|
[2.1] ディフューズ反射の基礎 |
[2.2] ベクトルの内積 |
[2.3] ランバート反射モデル |
[2.4] アンビエント光とアンビエント反射 |
[2.5] グローバル・イルミネーション |
|
[3.1] スペキュラー反射の基礎 |
[3.2] 正反射モデル |
[3.3] フォン反射モデルとブリンの近似 |
[3.4] 金属の反射モデル |
[3.5] カラー |
|
第4章 |
一般反射の基礎―双方向反射分布関数(BRDF) |
[4.1] 反射モデルのおさらい |
[4.2] イラジアンス |
[4.3] 双方向反射分布関数(BRDF) |
[4.4] ベクトル・立方体・フォーム |
[4.5] 双方向散乱面反射率分布関数(BSSRDF) |
|
[5.1] レンダリング・パイプライン |
[5.2] グラフィカル・プロセッシング・ユニット |
[5.3] シェーディング言語 |
[5.4] ハードウェアの準備 |
[5.5] ソフトウェアの準備 |
|
[6.1] OpenGLによるCG描写 |
[6.2] ランバート・シェーダーのデザイン |
[6.3] OpenGLとCgシェーダーのインターフェイス |
[6.4] ランバートシェーダーの実装 |
[6.5] クォータニオンを利用した視点移動とポリゴン・モデルの読み込み |
[7.1] 任意のシェーダーの読み込み |
[7.2] フォン・シェーダーのデザイン |
[7.3] フォン・シェーダーの実装 |
[7.4] トゥーン・シェーダー |
[7.5] アニメーション・シェーダー |
|
[8.1] フォン・シェーディング(≠フォン・シェーダー) |
[8.2] 「パー・ピクセル・フォン・シェーダー」のデザイン |
[8.3] 「パー・ピクセル・フォン・シェーダー」の実装 |
[8.4] パー・ピクセル・クック・トランス・シェーダー |
[8.5] キューブ・マッピング・シェーダー |
|
付録A |
開発環境の準備(Windows2000/XP) |
[A.1] ハードウェア |
[A.2] Cコンパイラの準備 |
[A.3] GLUTの準備 |
[A.4] Cg開発キットの準備 |
[A.5] プログラムのコンパイルと実行 |
|
[B.1] ハードウェア |
[B.2] Cコンパイラの準備 |
[B.3] GLUTの準備 |
[B.4] Cg開発キットの準備 |
[B.5] プログラムのコンパイルと実行 |
|
[C.1] C言語との違い |
[C.2] 構文 |
[C.3] 型 |
[C.4] 式 |
[C.5] 文 |
[C.6] 関数 |
[C.7] セマンティック指定変数 |
[C.8] ユニフォーム変数 |
[C.9] 静的変数 |
[C.10] 標準関数 |
|
|
[D.1] ヘッダ |
[D.2] コンテキスト生成 |
[D.3] 実行時コンパイル |
[D.4] シェーダーのロード |
[D.5] パラメータ設定 |
[D.6] テクスチャ・パラメータの設定 |
[D.7] シェーダーの実行 |
[D.8] シェーダーとコンテキストの解放 |
[C.9] エラーの確認 |
|
|
|
付録G |
Windowsビットマップ(BMP)型式画像読み込みライブラリ |
索引
※ 内容が一部異なる場合があります。発売日は、東京の発売日であり、地域によっては1〜2日程度遅れることがあります。あらかじめご了承ください。
|
|
 |

|