フォト

Google AdSense


  • AdSense
無料ブログはココログ

« D3D11 Perfumeデータ描画 | トップページ | FBX描画サンプルについていくつかのFAQ »

2013.06.16

FBX描画サンプルのコード

Fbxsample

とりあえず、PerfumeデータをFBX化したFBX描画コードを下記にアップしました(FBX以外にもテクスチャのPNG→DDS化もやってます)。ライセンスに関する表記忘れたけど、好き勝手使っていいです。

https://github.com/shaderjp/FBXLoader

かなりやっつけ感があるんですが、ひとまず公開です。とりあえず、FBXを読み込んでジオメトリデータ、マテリアルデータ、テクスチャパスなどを取得する部分というのはヒントにはなると思います。

シェーダとかコンスタントバッファ、InputLayout周りがやっつけなので、こまめに直したり汎用性高めたりする予定です。

それからFBXのデータ自体は色々と入ってますし、メモリ効率もよくはないし、今回のサンプルはDrawコールの最適化もしていないのでそのままゲームとかに使うのはおすすめしてないです。

あと、解説もそのうち。

・実行ファイル
ビルド済み実行ファイルも一応つけてますが、Windows 7とDirectX SDK June 2010環境だと起動しないんじゃないかと思います。Visual Studio 2012インストールするか、「Windows 7 SP1 および Windows Server 2008 R2 SP1 用プラットフォーム更新プログラム」が必要になると思います(コレ入れるとPIX動かなくなるので気をつけて)。すでにIE10をWindows 7で入れてれば適用済みです。

Windows 7 SP1 および Windows Server 2008 R2 SP1 用プラットフォーム更新プログラムが利用可能です。
http://support.microsoft.com/kb/2670838/ja

・ビルドに必要なもの
とりあえず、以下が必須です。

・Visual Studio 2012
・Direct3D11が動く環境(GPU自体はSM 4.0でいいと思います)
・FBX SDK 2014.1(下記からダウンロード。Visual Studio 2012用を落としてください)

http://usa.autodesk.com/adsk/servlet/pc/item?siteID=123112&id=10775847

FBX SDK 2014.1はデフォルトのインストール環境で行けると思いますが、32bit OSの場合インストール先が変わるのでインクルードファイルやライブラリのパス設定を変える必要があるかも。

« D3D11 Perfumeデータ描画 | トップページ | FBX描画サンプルについていくつかのFAQ »

Programming」カテゴリの記事

画像付き」カテゴリの記事

コメント

To 高橋様

昨今、3Dゲームを作りたいと思い、参考にさせてもらおうとしている者です。
担当直入に、、、
windowは起動はするのですが、モデルが何も表示されない状態です。
原因が解らず、なにかヒントとおもいましてコメントさせてもらっております。

【PC環境】
Windows 7
DirectX SDK June 2010
Visual Studio 2012

追伸:
3年前まではコンシューマゲーム会社にいましたが、3Dはやったことが
ありません。といってもPSPなのでポリなんですけど、
サンプルの流用でごまかしやってました。。。
現在はSE(システムエンジニア)ですが張合いがなくて、
先月より勉強もかねて、拝見させてもらっております。


To 高橋様

先ほどの内容に追加で、、、

Visual Studio 2012 プロジェクト (Direct3DFBX.sln)
を立ち上げ、ビルドして実行しております。

で、表示されない状態です。
重ね重ね申し訳ありません。

山中さん

コメントありがとうございます。

一点だけ、確認したいのですが実行した環境のグラフィックスカードは何でしょうか?
そんなに凝ったことはやってないのですが、グラフィックスカードのDirectX11対応を厳密に見ている部分があるので、よろしくお願いします。

To 高橋様

グラフィックボードの件ですが下記になります。

NDIVIA GeForce GTX 560
VRAM容量 4050MB

です。
他あれば記載させていただきます。
宜しくお願い致します。

To 高橋様

重ね重ね申し訳ありません。
サンプルコードについての質問ではない質問をしたいのですが、
宜しいでしょうか。(もしOUT!であるならばスルーしてください)

上記でも書きましたが、3Dでゲーム制作をしたい!と言うことで
以下の様、考えております。

①、3D(blenderでデータ作成)
②、windowsアプリで作成
③、行く末は「Windows ストア アプリ」で公開したい。
etc

で、昨今の状況を踏まえて勉強していくうちにこちらの
ページにたどり着きました。(感謝です)
ネット上に情報も多くない状況です。且つ参考書も少ない。
DirectXもろくに知識がない状態で、厳しい状況がつづいております。
「VC2010」「DirectX11」の組み合わせならサンプル等結構豊富ですが、
やはり③を考えると、、、迷っております。

◆質問
・③を考えると「VC2012」「DirectX11」「FBX(blende)」の組み合わせは、
 必須な考えですが、間違えてますでしょうか。。。
 ⇒そもそもwindows7であり、大丈夫なのか
 ⇒現状は開発環境をVC2012かVC2010か迷っている。
・何か良いおすすめな参考書はありますでしょうか。

◆最近買った参考書
DirectX11 3Dプログラミング
⇒VC2010対応
Blender2.6マスターブック

低レベルな質問で申し訳ありませんが、
御意見お聞かせねがえないでしょうか。


> NDIVIA GeForce GTX 560

だと GPU的には問題なさそうですね。一応、Windows 7での実行は確認しているので、OSは7でもいいはずです(開発は、8でしてますがgithubから7に落としてビルド)。

Direct3D11の初期化周りがこけてないなら

・シェーダのロードが失敗してないか?
・頂点、インデックスバッファの作成が失敗してないか?
・Constant Bufferの割り当てが失敗してないか?

というのが描画できてないところかなと思っています。このあたりの処理で失敗してるようなのがあるかですね。

VS 2012 Proなら「グラフィックス診断」機能でデバッグして見るというのも原因探るヒントになると思います。

> ・③を考えると「VC2012」「DirectX11」「FBX(blende)」の組み合わせは、
> 必須な考えですが、間違えてますでしょうか。。。

OSがWindows 8じゃないとStoreアプリの開発はできませんが、StoreアプリでもC++でDirect3D11を使う時に使い方は大きく変わりませんので組み合わせでよいんじゃ無いかと思います。

> ⇒そもそもwindows7であり、大丈夫なのか

Direct3D11のことよりもWindows Storeの場合、アプリケーション作る際のフレームワーク部分がWin32と異なるのでそのあたりの違いを吸収するのが難しいですね。グラフィックス部分以外は

> ⇒現状は開発環境をVC2012かVC2010か迷っている。

Windows 7をターゲットにするのであれば、VC 2010でも十分ですが、2012はグラフィックス関連の機能が増えている(デバッグやシェーダ開発機能)のでそこを生かせると便利ですね。

> ・何か良いおすすめな参考書はありますでしょうか。
2012対応の物はあんまり記憶に無いのですが、2010だと機能を網羅的に知るには下記の本が導入にはよいと思います。

DirectX11 3Dプログラミング―「Windows Vista/7」&「Visual Studio 2010」対応
http://www.amazon.co.jp/gp/product/4777515370/ref=s9_simh_gw_p14_d2_i2?pf_rd_m=AN1VRQENFRJN5&pf_rd_s=center-2&pf_rd_r=1P417E8ESY3B036TN79Q&pf_rd_t=101&pf_rd_p=463376756&pf_rd_i=489986

あとは、モデルデータを扱うという点では下記の本もいいかもしれませんね。アニメーション付きのモデルをやりたいのであれば特に。

http://www.amazon.co.jp/MESH-GURU-Direct3D10-11-Direct3D11%E3%81%A7%E3%83%A1%E3%83%83%E3%82%B7%E3%83%A5%E3%82%92%E6%A5%B5%E3%82%81%E3%82%8D/dp/4990500628/ref=sr_1_sc_1?s=books&ie=UTF8&qid=1380290281&sr=1-1-spell&keywords=mesh+gurr

高橋様

コメントありがとうございます。
さっそく調べてみたいと思います。

>DirectX11 3Dプログラミング―「Windows Vista/7」&「Visual Studio 2010」対応
持っております。。。

>MESH GURU with Direct3D10/11 (Direct3D10 Direct3D11でメッシュを極めろ!)
さっそく購入いたしました。

もう少し真面に動いたらまた報告させてください。

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« D3D11 Perfumeデータ描画 | トップページ | FBX描画サンプルについていくつかのFAQ »