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 回答