Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Visual Studio 2012のDirect3Dアプリ開発者向け新機能を知ろう

Visual Studio 2012の新機能、Direct3Dアプリ開発者向け新機能を知ろう。

アセットビューワー、シェーダーデザイナー、デバッグ機能などを紹介。

  • Loggen Sie sich ein, um Kommentare anzuzeigen.

Visual Studio 2012のDirect3Dアプリ開発者向け新機能を知ろう

  1. 1. Visual Studio 2012のDirect3Dアプリ開発者向け 新機能を知ろう @masafumi http://www.shader.jp
  2. 2. はじめに• 8月15日にVisual Studio 2012のRTM版がでました(&Windows 8)• 個人でMSDN入ってたので、 Visual Studio 2012をインストールし ていろいろと使ってます• Visual Studio 2012はβ版とかRC版とかのころからいろいろと試し てますが、ゲーム開発(特にDirect3Dを使った)向けのいろいろな 新機能が入ってきたので紹介していきます• 特に今回はDirect3D向けにいろいろと面白機能があるので紹介
  3. 3. 私のこと @masafumi• ゲーム会社でグラフィックスに関するR&Dしてます • スライドアップしてもネットでは会社のことは触れないでね • 寛容な会社だけどね• Shader.jpというサイトをやってます • http://www.shader.jp/• Twitterはそのまんま@masafumiです• スライドは終わったら公開します • …が本日はスライドよりもデモの方を中心に
  4. 4. 今回の話のターゲット• グラフィックスプログラマ • シェーダ開発 • Direct3D使ったプログラムの分析• テクニカルアーティスト • グラフィカルなマテリアルエディター• グラフィックスツールプログラマ • ビューワーとかいろいろと• タブレット・スマホ向けゲーム開発者 • Windows RTやWindows Phone 8のゲーム開発のためのツール
  5. 5. Windows 8の話題• 10/26リリースもうすぐ出ます(この発表は10/6) • RTM版はすでに使える• Windows Storeというアップストアがあります • Windows Store • Windows RTやWindows Phoneも対応• アプリをリリースする場合は.NETとは違う新規のフレームワー ク • Windows Store アプリ(Metroとか呼ばれてたの) • WinRT • C++ならC++/CX
  6. 6. Visual Studio 2012• あんまり知らない人はいないと思いますがMicrtosoftの統合開発環境• Windows 8からWindowsにアプリストアが登場 • Windows 8(PC)、Windows RT(タブレット)、Windows Phone 8 • ハイエンドなPCゲームだけじゃない • Windows ストアアプリ • Mac OS X, iOS(App Store)とかAndroid(Google Play) • 作って売れる• 無料版はExpress Editionだけど今日の話題の機能使えないのでProfessional Edition以上の話題• Windows 8の話ばかりしてるけど今日の話の機能はWindows 7でも動きます • MSDN入ってる方は試してみてください
  7. 7. Direct3D 11.1• DirectXの3DグラフィックスAPIのバージョン11.1• 11.1はWindows 8、Windows RT、Windows Phone 8用 • ARM版がある • デバイスによってGPU性能が違うので機能を使い分ける • 基本的なAPIは同じなので移植しやすい • ビルドターゲットを変えることで対応できる • ライブラリは、x86, x64, ARMと幅広い• サポートするGPUの世代は幅広い • 従来のDirectX 9世代のものから最新のデスクトップPC向けまで • シェーダはターゲットに合わせて作る必要がある • C++のAPIは同じ
  8. 8. VS 2012のグラフィックス開発者向け機能• アセットビューワー • モデルビューワー • テクスチャビューワー• シェーダ開発ツール • HLSLエディタ • シェーダデザイナー• GPU診断機能… Graphics Diagnostics • GPU処理解析機能 • シェーダデバッガ
  9. 9. アセットビューワー• モデルビューワー • 一般的な3Dモデル形式の閲覧• テクスチャビューワー • 一般的な画像ファイルフォーマットの閲覧 • DDS対応 • Floating pointテクスチャ対応 • 簡単なフィルタ処理や編集
  10. 10. モデルビューワー• Obj, FBX, Collada
  11. 11. テクスチャビューワー• 一般的な画像フォーマットとDDS• コンバーター機能もある
  12. 12. シェーダー開発ツール• シェーダーエディター • HLSLのエディター • コンパイル対応• シェーダーデザイナー • グラフィカルなシェーダエディター • ゲームエンジンのマテリアルエディターとかに近い • HLSLエクスポートあり
  13. 13. HLSLエディター• シェーダーコードの編集
  14. 14. HLSLエディター• HLSLの変数やキーワードの色が変わる• シェーダーごとにfxcの設定された状態でファイルが作成でき、 コンパイルまでやってくれる• エラーがあったときはVisual Studio 2012の出力上にエラーがだ せる• Intellisenseはない• ヘッダーのインクルードは対応
  15. 15. シェーダデザイナー• グラフィカルなシェーダエディター
  16. 16. シェーダデザイナー• グラフィカルなインターフェイスでシェーダを開発• HLSLやC++のヘッダーファイルへのエクスポートができる • HLSLからグラフィカルにするのは無理 • 頂点シェーダとピクセルシェーダがセットで吐き出される• ハイエンド向けではない • DX11のSM 5.0のフル機能を使ったテクニックを作るのは厳しい • ポストエフェクトなども厳しい • Windows RT(タブレット)とかWindows Phone 8用のシェーダ開発など にちょうどいいんじゃないか?
  17. 17. GPU診断機能• GPU処理解析機能 • フレームキャプチャ機能• シェーダーデバッガ • C/C++のコードのようにHLSLやマイクロコードデバッグができる • Compute Shader以外に対応 • Compute Shaderはほかのシェーダよりもフックが難しい
  18. 18. GPU処理解析機能
  19. 19. GPU処理解析機能• フレームキャプチャ • D3DのAPIコールの履歴がわかる • ピクセル履歴 • DrawCallの詳細 • ステートのチェック • バッファやシェーダーリソースのチェック• できないこと • 負荷分析
  20. 20. シェーダーデバッガ
  21. 21. シェーダーデバッガ• シェーダのデバッグがVisual Studio 2012上でできる • C++のコードのようにステップ実行やウォッチもOK • HLSLとマイクロコード• 制限 • Compute Shaderはできない • 変数の書き換え • クロス開発
  22. 22. ドキュメント• シェーダデザイナー • http://msdn.microsoft.com/ja-jp/library/vstudio/hh315733.aspx• グラフィックス診断 • http://msdn.microsoft.com/ja-jp/library/hh315751.aspx
  23. 23. デモ• 使ってみよう• シェーダーデザイナーデモ• GPU診断機能のデモ• シェーダデバッガのデモ• せっかくなのでWindowsストアアプリで。
  24. 24. まとめ• 使えんのコレ? • シェーダデザイナー • ハイエンドよりもローエンドタイトルには便利かも? • Windows RT(タブレット)とかWindows Phone 8 • DGSLで吐き出したHLSLの読み込みの問題 • シェーダデバッガは便利 • Compute Shader何とかしてほしいけども • HLSLを手で書く人には全体的に便利• 強力な開発環境 • PCゲーム作ることはおいておいて… • スマホやタブレットの3Dゲーム開発する環境としては強力 • なじみのDirect3Dが使える
  25. 25. おわり• 質疑応答

×