【发布时间】:2013-12-01 12:41:36
【问题描述】:
我正在尝试创建一个游戏,我目前正在尝试为其添加声音,但由于缺乏经验我未能这样做,所以我请求您的帮助。 如何在我的游戏中添加背景歌曲?
【问题讨论】:
-
您是否希望在游戏中发生某些事情时触发某些声音或随机或循环播放的一般背景音乐?
-
@user2860598:如果你不介意的话。
我正在尝试创建一个游戏,我目前正在尝试为其添加声音,但由于缺乏经验我未能这样做,所以我请求您的帮助。 如何在我的游戏中添加背景歌曲?
【问题讨论】:
启动一个单独的线程来播放声音。在这个线程中播放它。这样,您的游戏将运行,同时您可以运行声音。
public static synchronized void playSound(final String url) {
new Thread(new Runnable() {
// The wrapper thread is unnecessary, unless it blocks on the
// Clip finishing; see comments.
public void run() {
try {
Clip clip = AudioSystem.getClip();
AudioInputStream inputStream = AudioSystem.getAudioInputStream(
Main.class.getResourceAsStream("/path/to/sounds/" + url));
clip.open(inputStream);
clip.start();
} catch (Exception e) {
System.err.println(e.getMessage());
}
}
}).start();
}
【讨论】:
public static void music() {
AudioPlayer MGP = AudioPlayer.player;
AudioStream BGM;
AudioData MD;
ContinuousAudioDataStream loop = null;
try {
BGM = new AudioStream(new FileInputStream("som.wav"));
MD = BGM.getData();
loop = new ContinuousAudioDataStream(MD);
} catch(IOException error) {
System.out.println("Error!!!");
}
MGP.start(loop);
}
【讨论】: