Author |
Post |
|
#1 Thu Nov 26, 2015 12:40 am
|
Member
Registered: Nov 2015
Posts: 2
|
SDK のサンプルプログラムは正常に動作するのですが、自前で用意した DirectX11 のプログラムでは bmfw::Init が失敗してしまいます。
InitParam構造体の maxAnimationCapacity, isDoubleBufferdDependInitParam 構造体の dxDevice, dxImmediateContext, dxDeferredContext に有効な値は入れているのですが・・・( 自前のプログラムでは bmfw::Init に渡しているデバイスを使用して描画処理を行っているので、無効なデバイスである可能性はありません )
お手数で申し訳ありませんが、bmfw::Init が失敗する条件をご存知な方がいらっしゃいましたら教えていただけないでしょうか? また、エラーが発生した際にその原因を知る方法がありましたら、教えていただければと思います。
よろしくお願いいたします。
|
|
#2 Fri Nov 27, 2015 3:50 pm
|
Administrator
Registered: Oct 2011
Posts: 206
Location: Tokyo
|
サンプルと同じようにbmfw::Initの呼び出し前にコールバック設定が必要です。 具体的には、bmfw::ReqHeapMemoryとbmfw::ReqShaderPackageBinaryに対応するコールバックが存在している必要があります。DirectX11においては、この設定が問題なければbmfw::Initが失敗することはないはずです。 エラーハンドリングは申し訳ありませんがまだ実装されておりません。 よろしくお願いいたいします。
|
|
#3 Sat Nov 28, 2015 10:15 pm
|
Member
Registered: Nov 2015
Posts: 2
|
ご返答ありがとうございます。
コールバックはサンプルのコードを流用させていただいていたので設定していたのですが、bmfw::ReqShaderPackageBinary で登録しているコールバック関数の中でシェーダーパッケージバイナリの読み込みに失敗していました。
つまり実行時のカレントディレクトリの設定が誤っていたのが原因でした・・・
カレントディレクトリを正しく設定したところ、自前の DirectX11 のプログラムでもサンプルのエフェクトを再生することができました。
初期化パラメータで渡している Direct3D 11 関係が原因だと思い込んでしまっていました、申し訳ありません。 ご対応ありがとうございました。
|
|
#4 Mon Nov 30, 2015 4:01 pm
|
Administrator
Registered: Oct 2011
Posts: 206
Location: Tokyo
|
こちらこそ、貴重な導入時の注意点となりましたことを感謝致します。
今後ともBISHAMONを何卒宜しくお願い致します!!
|