チケット #36181

Direct3D9Exへの移行

登録: 2016-03-20 20:36 最終更新: 2017-04-15 12:59

報告者: yyagi 担当者: yyagi
チケットの種類: 性能改善 状況: 完了
コンポーネント: FDK マイルストーン: 既存機能の仕様変更
優先度: 5 - 中 重要度: 5 - 中
解決法: 期限切れ

詳細

trunk系(100系)では既にXP非サポートとしていることもあり、DirectXのサポートも、D3D9からD3D9Exに移行したい。

これにより、描画性能の向上が期待できる。

添付ファイルリスト

添付ファイルはありません

チケットの履歴 (5 件中 3 件表示)

2016-03-20 20:36 更新者: yyagi
  • 新しいチケット "Direct3D9Exへの移行" が作成されました
2016-03-20 21:01 更新者: yyagi
コメント

Rev942以降で、DTXManiaプロジェクトとFDKプロジェクトのビルド時にシンボル TEST_Direct3D9Ex を定義することで、D3D9Ex 環境での動作をさせることができます。XPをサポートしていたころは、D3D9Exへの移行は現実的ではありませんでしたが、今ならありかと思い、チケット化しました。D3D9Exでの動作時には、MaximumFrameLatency = 1 を設定しているので、描画遅延の対策になると思います。

以前から既に、最後にアンダーバーのついた TEST_Direct3D9Ex_ というシンボルを登録しているので、テスト時は適宜これをいじってください。

ただし、現時点では、タイトル画面に行く前に、例外終了します(苦笑)...

更に、テクスチャの画像の置き場所が Managed から Normal になる関係で、テクスチャの縦横の大きさがシビアになるとか、デバイスロスト時に面倒なことになるとか、いろいろ副作用があるはずです。すみませんが、注意してテストしてください。

(起動できないんだから、テストもできないだろうというツッコミは無しで・・。)

・・・というか、Win7以降を対象とするのなら、DirectX11とかに移行した方がいいのかな。 今どき、ユーザーにわざわざDirectX9.0cをインストールしていただくのも大変でしょうし。

2016-03-20 23:45 更新者: yyagi
コメント

rev043で、私の環境では、動画再生以外は問題なくなりました。しかし、動画再生しようとすると、LockRectangleで落ちます・・・。

また、Intelチップセット内蔵グラフ以外ではテストできていません。押し入れにAMD内蔵グラフのWin7環境があるはずですが・・・その辺での確認はまた後日。とりあえず動画再生を動かさないと。

今日は集中的にあれこれ作業しましたが、今日はここまでです。これ以降はまたしばらく先になります。すみません。

2016-03-21 00:45 更新者: yyagi
コメント

rev944で動画再生もできるようになりました。

ただしフルスクリーン再生以外はアラインがずれてます。これはすぐには直せないので、今度こそ修正はしばらく先になります(今の設計では直せない・・・)。すみません。

https://osdn.jp/users/yyagi/pf/DTXMania_TestBuilds/files/ に DTXMania105_D3D9Ex.zip という名前でテストビルドを置きましたので、描画遅延の違いを確認いただけますと幸いです。(1フレ遅延固定でXP時代相当の描画遅延になっているはずですが、動作は少し重くなっていると思います)

なお、WASAPI使用時に、DTXManiaGR.exeと同じフォルダに test.wav というファイルができますが、無視してください。(#28263 DTX2WAVの試作機能で、アプリ起動時のサウンド出力がそのままWAVファイルに録音されます)

2017-04-15 12:59 更新者: yyagi
  • チケット完了時刻2017-04-15 12:59 に更新されました
  • 状況オープン から 完了 に更新されました
  • 解決法なし から 期限切れ に更新されました
コメント

XPやVistaがサポート終了となった今、Direct3D9Exで新規開発する意味はなくなりました。

このチケットはクローズします。

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする