トップページ > 過去ログ > 記事閲覧
SelectMidiMode(DX_MIDIMODE_DM)
名前:Masao 日時: 2010/01/16 22:00

以前作ったゲームの起動時間を短縮しようとしています。 MIDIモードの設定次第で起動にかかる時間が過剰表現なしで9秒も違ったので、詳細を調べてみると SelectMidiMode(DX_MIDIMODE_DM); 関数に約9秒間かかっているようでした。 (MIDI次第で2秒起動と、11秒起動はちょっと差が…) リファレンスにも重いと書いてあったので仕様なのでしょうが、 この時間を短縮することはできないのでしょうか? 無理いっていたらすいません。 環境は、 Windows7 64bit DXライブラリ ver 3.01 です。 リリースモードでビルド後プレイすれば、多少は短縮できましたが、根本的解決にはなりませんでした。

Page: 1 |

Re: SelectMidiMode(DX_MIDIMODE_DM) ( No.1 )
名前:管理人 日時:2010/01/17 17:27

SelectMidiMode を記述する箇所は DxLib_Init の前でしょうか? もし DxLib_Init を呼び出した後に SelectMidiMode を呼んでいるのだとしますと、 DxLib_Init を呼び出す前に SelectMidiMode を呼ぶようにすれば少しは起動時間が 短くなるかもしれません
Re: SelectMidiMode(DX_MIDIMODE_DM) ( No.2 )
名前:Masao 日時:2010/01/18 07:31

SelectMidiModeを呼んでいるのは、DxLib_Init の後でしたので、その前に呼ぶようにしてリビルドしてみましたが、、 残念ながら、ほぼ9秒ぐらいでした。。。 (今回は頭でだいたいを計測しました。) 仕様として諦めた方がいいでしょうか? MCIの音色ってちょっと残念なのと音量調整ができないのが不便だったので、初期状態でDirectMusicをつかいたいところだったのですが、起動時間を優先してみようかと思います。 もしさらに短縮できる方法が他にあるかもしれないならば、教えていただけるとうれしいです。
Re: SelectMidiMode(DX_MIDIMODE_DM) ( No.3 )
名前:管理人 日時:2010/01/28 01:47

うーん私も Windows7 64bit 版をインストールしているので SelectMidiMode( DX_MIDIMODE_DM ) ; で 実行してみたのですが、起動に9秒も待たされることはありませんでした もしかしたらお使いのPCにインストールされているサウンドデバイスなどが関係しているかもしれません 少なくとも全ての環境で9秒待つことになるわけではないと思いますので、 ソフトの開発中は SelectMidiMode( DX_MIDIMODE_DM ) ; を実行しないようにして、 リリース版をビルドするときにだけ SelectMidiMode( DX_MIDIMODE_DM ) ; を実行するようにすると良いかもしれません
Re: SelectMidiMode(DX_MIDIMODE_DM) ( No.4 )
名前:Masao 日時:2010/01/29 05:46

わかりました。 環境によるものと諦めておきます。 (一応ユーザーはMIDIモード選択できるようになっているので。) ちなみにサウンドデバイスは、 Realtek High Definition Audio です。

Page: 1 |