0

後でゲームを作成するのに役立つ小さなプロジェクトに取り組んでいます。私が達成しようとしているのは、プレイヤーのコンピューター上のパスからゲームをプレイする機能です。パスはわかっていますが、コンテンツ パス以外の曲を再生する方法が見つかりませんでした。

また、コンテンツ パスのルート ディレクトリを変更することについても話しているわけではありません。曲は LoadContent ではロードされず、ゲームが既にオンになっている間にロードされます。それができない場合は、私がファンではない Windows フォームを使用したゲームの開発に戻る必要があります..

4

2 に答える 2

3
    System.IO.FileStream fs = new System.IO.FileStream(@"C:\Myfile.wav", System.IO.FileMode.Open);
    SoundEffect mysound = SoundEffect.FromStream(fs);
    fs.Dispose();

@"C:\Myfile.wav" は相対パスまたは絶対パスです。MP3やその他についてはわかりません。

最悪のシナリオでは、FMod Exサウンドシステムを XNA ゲームに埋め込むだけです。

于 2013-07-19T14:21:58.207 に答える
1

メソッド ( MSDNSong )を使用して、ディスク上のファイル (コンテンツ パイプラインを通過したものではなく、プレーンな MP3 ファイル) からのインスタンスを作成できます。Song.FromUri

もちろん、その方法にはいくつかの注意点があります。詳細と、ディスク上のファイルからオブジェクトを作成する別の方法(リフレクションを使用) については、この回答を参照してください。Song

(最後に、WinForms で使用していたメソッドは、XNA ゲームでも安全に使用できる可能性があることを指摘しておく価値があります。)

于 2013-07-20T14:39:34.043 に答える