掲示板(仮運営中)です。18【環境】WindowsXPVC++2008---------------------お世話になっております。Melloと申します。作っていたゲームにBISHAMONを実装しようとしています。描画していたDirectXのモデル(背景)が消えてしまいます。レンダリングの設定?がおそらくBISHAMONのものに書き換わってしまっているのだと思います。←DirectXで描画していたモデルが消えてしまいますManager->End();元々のDirectXの描画(背景)を残したまま、エフェクトを表示する方法について何方かご教示お願いできないでしょうか。推測でも構いませんのでご意見お待ちしております。Tokyoご報告頂きありがとうございます。BISHAMONでは、ブレンド周りの設定が変更されます。エフェクトの描画前後にて、ブレンド周りの設定を保存・復帰するように試して頂けますでしょうか。可能性としましては、減算でのブレンドを行っている場合、この設定が他の描画に影響し結果、色が黒(ゼロ)となり、見えなくなってているかもしれません。18ご返答ありがとうございます。ブレンド周りの設定とは、以下のようなものでしょうか。モデルなどの描画関数draw_Map();このように再度ブレンドの設定をしてみましたが、状況は変わりませんでした。ご教示お願い致します。Tokyo設定的には問題ないように思います。先に、draw_Map();を行ってから、DrawEffect()でも状況は変わりませんでしょうか?事例としましては、今までありませんでしたので、原因がとても気になります。18レスポンスありがとうございます。先にdraw_Map()を行い、DrawEffect()の実行もしてみましたが、やはりモデルが真っ黒になってしまい、状況は変わりませんでした。『単純な人型モデルをXファイルで読み込んで表示するDirectXの入門サンプルプログラム』でも試してみましたが、状況は変わりませんでした。自分のやり方が根本的にどこか間違っているのだと思います。参考までに上記のDirectX入門サンプルコードを記載します。Window.cppにおかしい部分があればご教示お願い致します。再度初期化してモデルを描写すると、今度はエフェクトが描画されず、モデルのみが正常に描画されます。(この辺りが怪しいとは思っています。)[お願い]もし可能であれば、背景とエフェクトが正しく動作する単純かつ簡単なコード例を書いて頂くことは出来ないでしょうか。以下の、補足のDirectXのテストプログラムは読み解くには難解でしたので。(レベルが低くてすみません。⇒3-4:STGに導入してみる上記のDirectXのテストプログラムにBISHAMONを導入してみましたが、これはちゃんと動作しています。(背景、モデルはちゃんと表示され、攻撃がヒットした際はエフェクトが出ます)そのためハードウェアに問題がある可能性は低そうです。Tokyo詳細な情報を頂き有難うございます。BISHAMON内のソースコードを見直しました。以下が、保存・復帰を行っているステータスです。SetRenderState(D3DRS_ALPHABLENDENABLE,SetRenderState(D3DRS_ALPHAFUNC,SetRenderState(D3DRS_ALPHAREF,SetRenderState(D3DRS_CULLMODE,SetRenderState(D3DRS_DESTBLEND,SetRenderState(D3DRS_SRCBLEND,SetRenderState(D3DRS_ZENABLE,SetRenderState(D3DRS_ZFUNC,SetRenderState(D3DRS_ZWRITEENABLE,SetRenderState(D3DRS_ALPHATESTENABLE,下記が拡張などによって保存から漏れているステータスです。SetRenderState(D3DRS_ANTIALIASEDLINEENABLE,SetRenderState(D3DRS_FILLMODE,SetRenderState(D3DRS_LIGHTING,SetRenderState(D3DRS_MULTISAMPLEANTIALIAS,SetRenderState(D3DRS_MULTISAMPLEMASK,SetRenderState(D3DRS_STENCILENABLE,SetRenderState(D3DRS_STENCILFUNC,SetRenderState(D3DRS_STENCILMASK,SetRenderState(D3DRS_STENCILPASS,SetRenderState(D3DRS_STENCILREF,SetRenderState(D3DRS_STENCILZFAIL,この辺り情報は早期に公開すべきであったことを反省しております。申し訳ありませんでした。上記のステートを保存・復帰を前後に設定しみて頂けますでしょうか?また、もう1つ気づいたところがありました。あることを想定して作られております。ADD以外の場合、描画後の結果が黒くなる原因が考えられます。未定ではありますが次期リリース時には上記漏れているステータスも保存・復帰に含めますよう修正いたします。18返信が遅くなってしまい申し訳ございません。以下のようにやってみましたが状況は変わりませんでした...。共に、前回と同様の症状です)上記のようになります。<現象1>はともかく<現象2>は恐らくカメラの設定がエフェクトに引っ張られているのだと推測します。そのため、復帰処理が上手く出来ていないと考えます。復帰しても意味がないという可能性もあるかもしれません。今の段階で何か言える事がございましたら、ご教示お願いいたします。render1);renderer.m_pD3DDevice->SetRenderState(D3DRS_ALPHAFUNC,render2);::につきまして、manager->Begin();manager->DrawEffect(effect);manager->End();の直前、直後で設定するのがベストです。ご提示頂いているコードを見る限り、この部分に関しては上記修正にて問題ないと思います。上記修正でも変化がない場合は、更に別原因が考えられます。・テクスチャー:なども、モデルのDraw前に正しく設定されているか1つ1つ調べていく必要が御座います。BISHAMONの導入と実践」のソースコードが一番よいサンプルコードになっていると思います。同ケースの問題が弊社としましても、今後チュートリアルやサンプルを作る上でとても役立つと考えております。次期リリース時のBMManager周りのコードもこの度のご報告を元に修正をしたいと思います。18いつもありがとうございます。返信して頂いた内容についてご教示いただきたく。直前、直後で設定するのがベストです。上記の内容は、以下のようにするのが良いということなのでしょうか。am」に投稿したコードで問題はなさそうということでしょうか。(読解力が足りなく申し訳ございません。BISHAMONの導入と実践」のサンプルコードと比較し、一つずつ調べてみようと思います。役に立てているならば光栄です。自分のようにDirectX9とBishamonについての知識が浅い者でもエフェクトを自由に使えるようになれたらすばらしいことだと思います。18間が開いてしまいましたが、未だにエフェクト描画中にモデルが黒くなってしまう事象が解決しておらず大変困っています。自分のコードが独特なことが原因である可能性も考え、まったく別のコードに組み込んでみましたがやはり結果は変わりませんでした。以下、オープンソースの簡単なサンプルコードにBISHAMONを組み込んだものです。プロジェクトを新規につくり、以下のコードをコピー&ペーストすれば実行可能です。長方形の部分だけ、真っ黒に描画されてしまいます。上記コードを修正したコードを全文で載せていただけないでしょうか。(「この部分をこうやって直すと良いです」という形式ですと、おそらくこれまでの様に解決できない可能性が考えられるため)【考え】ちなみに原因となっている部分は、やはり以下の部分で、エフェクトの描画を始めると長方形が真っ黒になります。manager->Begin();manager->DrawEffect(effect);manager->End();また、上記部分に該当するXACTGame(BISHAMON版)に導入されているソースでは、以下のようになっており、カメラの制御等はしていますが、ご教示いただいております「SetRenderState関連のコード(保存と復帰関連)」は元々のコードにあったもの以外、プロジェクト全体で検索しても付け足されていないように見えます。サンプルでは別の部分で保存と復帰をしているということでしょうか。Tokyoサンプルを頂きありがとうございます。拝見しますと描画設定がデフォルトままであったりなど気になるところがありました。内の不具合の可能性も十分ありますので、弊社内でも調査させて頂き纏めてお答えしたいと思います。現在、業務が込み合っておりますため、しばらくお時間を頂いても宜しいでしょうか?何卒よろしくお願いいたします。18業務がお忙しい中まことに申し訳ございません。回答お待ちしております。此処以外に頼れる場所が無いため、皆様だけが頼りです。(エフェクト作業でずっと詰まっているため、別途サポート費用が必要でもお願いしたいレベルです。)御社の環境では上記のサンプルは正常に動いたのか気になるところですが、ひとまず今週末まで正座でお待ちしております。(正常に動いている場合は、こちらの環境特有の問題が考えられるため)おそらくBISHAMONのバグというよりも私が凡ミスをしているだけだと考えてはいますが...。分かればで良いので可能であればコメントいただけると幸いです。Tokyo長らくお待たせいたしました。下記コードによって回避できることがわかりましたのでご報告致します。);シェーダー、およびテクスチャーの設定を解除することで回避出来ました。後に設定する必要がないよう、DX9版SDKのソースコードにも反映させて頂きました。次期バージョンアップにて、上記の追加コードがなくても良いようにしました。こちらで試して頂けますでしょうか。この度はいろいろありがとうございました。18上記コードを追加したことによって想定した描画処理になりました。本当にありがとうございました!固定機能パイプラインとの共存についてというトピックに記載がありますね。読み込めて折らず申し訳ございません。別のテストプログラムでも今のところ問題ありません。これから本番コードにも入れてみようと思います。何かあれば質問をしてしまうかもしれませんが、その時はよろしくお願いいたします。