| シャドウシェーダ (52KByte) | フォトンシェーダ (44KByte) | mi_sampleによるサンプリング (40KByte) |
| RCフォトン関数 (60KByte) | カスタムシェーダによるシーンの例1 (44KByte) | カスタムシェーダによるシーンの例2 (56KByte) |
|
- 目 次 - はじめに 本書を読む前に 本書の構成 メンタルレイについて WWWリソース 謝辞 第1章 機能 1.1 並列処理 1.2 フリーフォームサーフェイス 1.3 エッジの接続と接続部の検出 1.4 特殊点と特殊カーブ 1.5 アトモスフィアとボリューム 1.6 マテリアル 1.7 光源 1.8 エリア光源 1.9 シャドウマップ 1.10 テクスチャ、バンプ、変位(ディスプレイスメント)、反射マッピング 1.11 テクスチャ フィルタリング 1.11.1 ピラミッドフィルタリング 1.11.2 楕円投影フィルタルックアップ 1.12 ユーザー定義シェーダ 1.13 カメラ 1.14 レンズエフェクト 1.15 フィールドデプス 1.16 アニメーション 1.17 モーションブラー 1.18 サンプルアルゴリズム 1.19 OpenGLアクセラレーション 1.20 色の計算 1.21 出力シェーダ 1.22 輪郭線 1.23 メモリマップドテクスチャ 1.24 コースティクス 1.24.1 光源 1.24.2 オブジェクト 1.24.3 マテリアルシェーダとフォトンシェーダのコースティクス 1.24.3.1 物理的にもっともらしいマテリアルシェーダ 1.24.4 シェーダ関数 1.24.5 コースティクスの微調整 1.25 グローバルイルミネーション(2.1) 1.25.1 光源 1.25.2 オブジェクト 1.25.3 グローバルイルミネーションの微調整 1.26 ファイナルギャザリング(2.1) 1.27 ボリュームコースティクス 1.28 関与する媒体の中におけるグローバルイルミネーション(2.1) 1.29 診断モード(2.1) 第2章 シーン記述言語 2.1 シェーダの宣言 2.1.1 パラメータタイプ 2.1.2 シェーダのApplyフラグ 2.1.3 オプションの宣言 2.2 シェーダ定義 2.3 シェーダリスト 2.4 シェーダグラフ 2.5 フェノメナ 2.5.1 フェノメナのインターフェースパラメータ 2.5.2 フェノメナルート 2.6 コマンド 2.7 シーンのエンティティ 2.7.1 オプション 2.7.1.1 サンプリング品質 2.7.1.2 テッセレーション品質 2.7.1.3 モーションブラー 2.7.1.4 トレースデプス 2.7.1.5 シャドウ 2.7.1.6 レンダリングアルゴリズム 2.7.1.7 特徴の無効化 2.7.1.8 コースティクス 2.7.1.9 グローバルイルミネーション(2.1) 2.7.1.10 フレームバッファコントロール 2.7.1.11 シーンジオメトリ 2.7.1.12 輪郭線 2.7.1.13 診断モード(2.1) 2.7.1.14 その他 2.7.2 カメラ 2.7.3 テクスチャ 2.7.4 マテリアル 2.7.5 ライト 2.7.6 オブジェクト 2.7.7 ポリゴン形状 2.7.8 フリーフォームサーフェイス形状 2.7.8.1 基底 2.7.8.2 サーフェイス 2.7.8.3 サーフェイスデリバティブ 2.7.8.4 テクスチャサーフェイス 2.7.8.5 カーブ 2.7.8.6 トリミングカーブ、ホールカーブ、特殊カーブ、特殊点 2.7.8.7 空間カーブ 2.7.8.8 近似 2.7.8.9 接続 2.7.8.10 例 115 2.7.9 インスタンス 2.7.10 インスタンスグループ 2.8 輪郭線 2.8.1 輪郭線を描く場所 2.8.2 カラーと輪郭線の幅 2.8.3 輪郭線の出力 2.8.4 輪郭計算の高速化 2.9 シーン例 第3章 シェーダの使用法と書き方 3.1 シェーダのダイナミックリンク 3.2 座標系 3.3 シェーダタイプの概要 3.4 状態変数 3.4.1フレーム 3.4.2 イメージサンプル 3.4.3 レイ 3.4.4 交点 3.4.5 テクスチャ、モーション、デリバティブ 3.4.6 ユーザーフィールド 3.4.7 シェーダタイプによる状態変数 3.5 シェーダパラメータ宣言 3.6 パラメータ割り当てとmi_eval 3.7 シェーダのバージョン 3.8 マテリアルシェーダ 3.9 テクスチャシェーダ 3.10 ボリュームシェーダ 3.11 環境シェーダ 3.12 ライトシェーダ 3.13 シャドウシェーダ 3.14 フォトンシェーダ 3.15 フォトンエミッタシェーダ 3.16 レンズシェーダ 3.17 出力シェーダ 3.17.1 出力シェーダの並列処理 3.18 変位(ディスプレイスメント)シェーダ 3.19 ジオメトリシェーダ 3.20 輪郭 3.20.1 輪郭計算 3.20.2 輪郭ストア関数 3.20.3 輪郭コントラスト関数 3.20.4 輪郭シェーダ 3.20.5 輪郭出力シェーダ 3.21 シェーダの関数 3.21.1 DB関数 3.21.2 RC関数 3.21.3 mi_sampleによるサンプリング 3.21.4 RCフォトン関数 3.21.5 RC方向関数 3.21.6 IMG関数 3.21.7 数学関数 3.21.8 ノイズ関数 3.21.9 補助関数 3.21.10 旧補助関数 3.21.11 輪郭関数 3.21.12 メモリアロケーション 3.21.13 スレッド処理とロック 3.21.14 メッセージとエラー 3.21.15 シェーダタイプにより呼び出し可能な関数 3.22 初期化とクリーンナップ 3.23 mkmishaderによる自動ソース生成 3.24 シェーダとトレース関数 3.25 カスタムシェーダによるシーンの例 第4章 ジオメトリシェーダ 4.1 イントロダクション 4.2 例 4.3 ジオメトリシェーダAPI 4.3.1 シンボルテーブル 4.3.2 ダイナミックリスト 4.3.3 逐次変化 4.3.4 オプション、カメラ、アウトプット 4.3.5 ライト、マテリアル、テクスチャ 4.3.6 ユーザーデータ 4.3.7 インスタンスとインスタンスグループ 4.3.8 幾何オブジェクト 4.3.8.1 オブジェクト 4.3.8.2 基底 4.3.8.3 多角形ジオメトリ 4.3.8.4 フリーフォームサーフェイスジオメトリ 4.3.8.5 カーブ 4.3.8.6 空間カーブ(2.1) 4.3.8.7 サブディビジョンサーフェイス(2.1) 4.3.9 関数宣言 4.3.10 関数定義 4.3.11 フェノメノン定義 4.3.12 Verbatim Cソース 4.3.13 スコープ 4.3.14 その他 4.4 ジオメトリシェーダ構造体 4.4.1 インスタンス 4.4.2 グループ 4.4.3 カメラ 4.4.4 ライト 4.4.5 関数 4.4.6 ユーザーデータ 4.4.7 関数宣言 4.4.8 ボックス 4.4.9 オブジェクト 4.4.10 近似 4.4.11 ポリゴンリスト 4.4.12 ポリゴンインデックス 4.4.13 ポリゴン頂点 4.4.14 ポリゴンベクトル 4.4.15 サーフェイス:フェイスリスト 4.4.16 サーフェイス:サーフェイスリスト 4.4.17 サーフェイス:カーブセグメントリスト 4.4.18 サーフェイス:スカラリスト 4.4.19 サーフェイス:カーブポイントリスト 4.4.20 サーフェイス:基底リスト 4.4.21 サーフェイス:代数のリスト 4.4.22 空間カーブ( 2.1) 4.4.23 ブックとページ 4.4.24 サブディビジョンサーフェイス 4.4.25 マテリアル 4.4.26 レンダリングオプション 4.4.27 イメージ 4.4.28 ストリング 4.4.29 タグリスト 第5章 使用方法とコマンドラインオプション 5.1 コマンドラインオプション 5.2 起動ファイル 5.3 スタックサイズ 第6章 メンタルレイ1.9から2.xへのアップグレード 6.1 レンダリングアルゴリズム 6.2 シーン記述言語 6.3 シェーダの書き方 付録A シーンファイル文法 インデックス |