最新クロスプラットフォーム...
Transcript of 最新クロスプラットフォーム...
![Page 1: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/1.jpg)
CEDEC 2006
新クロスプラットフォームシェーダの開発
フィリップ・ロリン(Philippe Rollin)
![Page 2: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/2.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
アジェンダ
FX Composer 2.0の概要
クロスプラットフォームのシェーダオーサリング
プロダクションパイプラインの統合
結論
Q&A
![Page 3: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/3.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
FX Composer 2.0対象作業と対象ユーザ
対象作業
シェーダオーサリングIDEデバッギングおよびプロファイリング
シーンの統合
アセット管理
対象ユーザ
グラフィックスプログラマ
テクニカルディレクタ
テクニカルアーティスト
アーティスト
![Page 4: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/4.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
ユーザからの要求事項
複雑なレンダリングを処理
高度なカスタマイズが可能なレイアウト管理
強力なユーザインタフェース
シェーダパフォーマンスのプロファイリング
プラグインベースのアーキテクチャ
スクリプト記述が可能
![Page 5: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/5.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
柔軟なレンダリング
APIとシェーディング言語の多数の組み合わせ
サーフェスシェーダおよびフルスクリーンシェーダ
![Page 6: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/6.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
向上したユーザインタフェース
カスタマイズされたユーザレイアウト
パネルを表示または非表示
VC2005ドッキングスタイル
レイアウトの保存/読み込み
![Page 7: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/7.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
向上したユーザインタフェース
![Page 8: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/8.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
FX Composerの代表的なレイアウト
プロパティ
プレビュー情報、スクリプト記述、エラーテクスチャ
コーディング管理
![Page 9: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/9.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
デモ:シェーダオーサリング
プロジェクトの読み込み
コンパイル
エラーおよびタスク
![Page 10: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/10.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
プロジェクトエクスプローラ
複数のドキュメントを管理
ドキュメントは1つまたは複数のアセットを格納
アセットは、エフェクト 、マテリアル、メッシュ、およびその他のシーンエレメント
アセットの整理移動、コピー、削除、名前の変更ドラッグアンドドロップ1つまたは複数のドキュメント
エフェクトライブラリ
COLLADA
![Page 11: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/11.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
オープンアセットエクスチェンジフォーマット(.dae)
クロノスグループが管理多数のISVおよびIHV を含む
成熟したDCCプラグインで広範なサポート
FX Composer 2がサポートインポートおよびエクスポート
エフェクトおよびマテリアルをサポート
DCCアプリケーションとのアセット交換を円滑化
その他のファイル形式にも対応
![Page 12: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/12.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
ライブラリの表示
複数のドキュメントを整理
アセットをタイプ別に並べ替え
アセットの視覚化シーン
エフェクト
オーサリング
![Page 13: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/13.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
エフェクトのオーサリング
エフェクト構造の表示テクニック
パス
パラメータ
ツールバーとコンテキストメニューを使用したオーサリング
子の追加
子の削除
詳細オプション
![Page 14: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/14.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
CgFX & COLLADA FX Cg
CgFX手作業によるコーディング
少ないユーザインタフェースのアシスタント
Cgオーサリング用COLLADA FX高のユーザフレンドリ体験
ユーザインタフェースにより完全編集可能
CgFXアセットの移動が可能
手作業によるコーディング を減少ゼロXMLCg、GLSL (GPUシェーダコードを記述するときのみ)
![Page 15: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/15.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
デモ:マテリアルのオーサリング
マテリアルの作成
エフェクトの割り当て
マテリアルパラメータの微調整
![Page 16: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/16.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
デモ:シーンの統合
ライトの作成
シーンのトラバース
ライトとマテリアルのバインド
リアルタイム操作
![Page 17: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/17.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
シェーダパフォーマンスのシミュレーション
![Page 18: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/18.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
プロダクションパイプラインの統合
シーンをバインドする演算式
スクリプト記述による自動化
プラグインベースのアーキテクチャ
ソースコントロールの統合
プロダクションパイプラインのサンプル
![Page 19: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/19.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
シーンをバインドする演算式
float4 LightPos : Position<
string Object = "PointLight";string Space = "Object";
> = {-10.0f, 10.0f, -10.0f, 0.0f};
セマンティック
アノテーション
![Page 20: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/20.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
カスタムセマンティックスおよびアノテーション
1 :<RemappedSemantic name="myWorldView">2 : <MatrixMultiply description="World * View">3 : <input type="internalsemantic" value="world"/>4 : <input type="internalsemantic" value="view"/>5 : </MatrixMultiply>6 :</RemappedSemantic>
シーンおよびシステムデータへのフックパラメータ
xml設定ファイルによる式
演算子の豊富なライブラリドットおよび外積、mux、demux、matrix ops ...
カスタム演算子演算子を使用してXMLから構築
プラグイン経由
![Page 21: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/21.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
スクリプト記述による自動化
自動割り当てマテリアルをジオメトリに
シェーダパラメータをシーンオブジェクトに
(直近のライト、カメラ、など)
モデルのアクセサリをアタッチポイント に
共通タスクツールバー(Maya/MELライク)
![Page 22: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/22.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
スクリプト記述による自動化
#Python scripting
# Convert any Possible Profile to COLLADA FXdef ConvertToCOLLADA():
effects = FXRuntime.Instance.Library.FindLibraryItems(FXEffect)for effect in effects:
for profile in effect.Profiles:if profile.CanConvertToColladaFX() == True:
profile.ConvertToColladaFX()
# Create an effectdef bindMMM():
CmdGroupBegin.Do("script: assign cgfx files to MMM ")
SelectRenderPort("OpenGL")ForceRedraw()
CmdGroupEnd.Do()
# get the cgfx files to assign to MMM
files = FXEffectUtils.GetEffectFiles()for pathname in files:
...
![Page 23: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/23.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
デモ:スクリプト記述
自動割り当て
その他
![Page 24: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/24.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
カスタムプラグイン
インポータ
エクスポータ
セマンティック式の演算子
レンダリングデバイス
手順によるジオメトリの生成(ヒレ、ヘアなど)
カスタムオーサリング環境
…その他…
![Page 25: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/25.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
カスタムプラグイン: 無制限に拡張可能
![Page 26: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/26.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
ソースコントロールの統合
ソースコントロールソフトウェアへのシームレスな統合
ドキュメントおよびアセットはファイルベースの状態を反映
![Page 27: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/27.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
コンソールPCMAC
FXC2を中心としたパイプライン
FX Composer 2.0
FXによるCOLLADAシーン
COLLADADCC
ジオメトリ
コンディショナおよびコンパイラ
ゲームバイナリ
エフェクト
ゲームバイナリ
ゲームバイナリ
![Page 28: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/28.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
DCCを中心としたパイプライン
FXComposer
2.0
DCCアプリケーション
コンディショナ
シーンエフェクトライブラリ
コンソール
ゲームバイナリ
![Page 29: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/29.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
パイプライン: ハンドヘルド
FX Composer 2.0 ES リモートレンダリング
データコンディショナおよびコンパイラ
ホストPC ターゲットハンドヘルド
DCCツールXSI、Max Maya
ゲームエンジン
COLLADA
![Page 30: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/30.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
パイプライン: エンジン
FX Composer 2.0
ゲームインポータ
CgFX
ゲームバイナリ
D3D FX
COLLADA FX
レンダリングゲームアダプタ ゲームエンジン
ゲームバイナリ
![Page 31: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/31.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
FX Composer 2.0アルファ5
アルファ5、2006年の夏の終り頃リリース予定
ドキュメントおよびアセット管理
COLLADA FXオーサリング
シェーダパラメータシーンバインディング
カスタムセマンティックおよびアノテーションのサポート
Pythonスクリプト
シェーダパフォーマンス
Sony PS3の開発者および一部のパートナーが入手可能
ベータ版、2006年の秋の終り頃リリース予定
一般に公開
![Page 32: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/32.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
結論
次世代シェーダIDE開発中
強力な機能を搭載して量産に対応
NVIDIAは、Khronosおよび他の企業と協力して、
プロフェッショナルグレードのオーサリングツールを実現
![Page 33: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/33.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006
Q&A
アルファ版およびベータ版の早期リリースについては、電子メールでお問い合わせください。
お疲れ様でしたフィリップ・ロリン(Philippe Rollin、[email protected])
![Page 34: 最新クロスプラットフォーム シェーダの開発developer.download.nvidia.com/assets/gamedev/docs/... · #Python scripting # Convert any Possible Profile to COLLADA FX](https://reader033.fdocument.pub/reader033/viewer/2022052003/60165b1252b02058602ffe29/html5/thumbnails/34.jpg)
Copyright © NVIDIA Corporation 2004 CEDEC 2006