Windows8 ConsumerPreviewに続いてVisualStudio11 Betaもちょっと試してみました。
VMware上の仮想マシン と実機とで今回は試してみました。
環境
その1.
VMware Workstation8 の仮想マシン、設定はWindows7(x64)のもので構成.
その2.
実機。Intel Core i3 530 を載せているだけのシンプルな環境.
グラフィックスもCPU内臓のIntel HD Graphicsを使用.
試してみる
VisualStudio 2010のころとまた違った印象を受けるIDEとなっています。 カラーが、ライトグレーで統一されている感じです。
これはVisual C++の新規作成で Windows Metro Style の Direct3Dアプリケーション構成を選んでみたスクリーンショットです。 WindowsLiveなどのアカウント登録をせずにローカルのみのアカウントだったために上記のライセンス取得まではやってみませんでした。
このブログでは、DirectXまわりに関心があるのでそのあたりを見ていこうと思います。
DirectXアプリケーションデバッグ周りの強化
VisualStudioでDirectX10/11アプリケーションを作っている際のデバッグがやりやすくなりました。
- GRAPHICS EVENT LIST
- GRAPHICS EVENT CALL STACK
- GRAPHICS PIPELINE STAGES
- GRAPHICS PIXEL HISTORY
ざっとみても上記のデバッグ用ウィンドウが増えています。
DirectX APIのコール順序履歴や、そのAPI呼び出し時のコールスタック情報、 各レンダリングステージでどのように描画データが加工されているか、あるピクセルがどのように塗りつぶされたか、という情報をVisualStudio上で確認することができます。
また、PIXEL HISTORYやPIPELINE STAGESのウィンドウからVertexShader, PixleShaderなどのデバッグを開始することができました。デバッグを開始すると各シェーダー内でブレークポイントを設定することができ、入力データや計算結果を変数ウォッチで確認していくことが可能でした!
PIXの機能が単に統合されただけともいえますが、この統合によりデバッグがやりやすくなったことは事実だと思います。
ただ、実機ではPixelShaderの出力の部分でうまく結果が得られていないような感じでしたが、これも製品版では改善されることでしょう。
グラフィックスリソース作成の追加
FBXファイルやシェーダーファイルの作成が新規作成のメニューから行えるようになりました。
FBXの新規作成でteapotを作成してみた図です。簡単なマテリアルの設定も行えるようです。 画面内のphongのEffectプロパティでは描画に使うエフェクトファイル(dgslファイル)を設定できるようで、シェーダーを作成するのがやりやすくなっています。
このdgslファイルもメニューから新規作成で作ることができます。
これはノードベースでシェーダーを作成する機能になります。
このような感じで画面横のノードを追加して、それぞれ連結してシェーダーを作成することができます。こうやってできたシェーダーは更にエクスポートすることができます。
エクスポートした後は プロジェクトにファイルを追加して、アプリケーションのビルド時にシェーダーコンパイルすることもできるようになります。
今まではビルドイベント等を設定しながらやっていたことが、標準でここまでできるようになりました。
DirectX 9.0cのデバッグランタイムが使えなくなりました。
DirectXコントロールパネルで設定しようとしても グレーアウトしていて選択不可能。
もしかしたら、製品では変わるのかもしれませんが今のところダメそうです。
・・・Windows8という新しい環境で DirectX9なんていう古いものを使ってほしくないのかもしれませんね。
まとめ
DirectXアプリケーションを今まで作ってきた人には有難い進化をしていると言えます。
上記で紹介した機能が使えるだけで、VisualStudio 11にもう移行したい気がします。
また、C++/CLIのインテリセンスも有効になっている点はPreviewのときと変わっていなかったので、VisualStudio2010より魅力的になっている面もあります。
気になる点としてはこれらがProfessionalエディションでも提供してくれるかというところでしょうか。それとVS11のExpressはこれらの機能を備えて出てくるか、もしExpressでは無い機能だとしたらPro版の魅力につながりますね。
コメント