什么时候应该处理声音效果?
我对音效与音乐有点混淆。有了音乐,我只需要在音量完成时处理它,因为音乐只是重复直到音量结束,然后音乐不再使用。有了声音效果,它们会播放很短的时间,所以我不确定当一个人完成后会发生什么,而新的声音会播放相同的声音。
例如,玩家角色可以在每次拍摄声音时开枪。因此,如果播放器拍摄6次,那么声音效果是否会被处理为需要处理的6个单独的声音,或者是一个声音文件,只有在不再需要时才处理一次而不管它使用了多少次?
答案 0 :(得分:1)
每次播放时都不需要丢弃它。当您处置其他游戏资产时,只需处置它(即在游戏处置时从游戏处置方法中调用它)。
当播放器拍摄6次时,声音将同时播放6次。 来自javadoc:
播放声音。如果声音已经播放,它将同时播放。
但是你应该处理6种不同的声音或类似的声音。
所以回答你的问题:是一个声音文件,只有在不再需要时才被处理掉一次,无论使用多少次?
是
答案 1 :(得分:0)
适用于小型项目/游戏:
您在PlayScreen上使用的任何声音,在游戏的create()
方法中创建一次并在游戏中使用而不会丢弃它们。
Sound sound = Gdx.audio.newSound(Gdx.files.internal("data/mysound.mp3"));
以dispose()
的{{1}}方式处理声音,当您退出游戏时调用该方法。
在屏幕界面的ApplicationListener
方法中创建声音,并将它们放置在show()
屏幕中,但框架不会调用dispose()
屏幕,因此您需要通过你自己从屏幕的dispose()
方法调用dispose()方法。
使用AssetManager并通过按要求加载,卸载来管理资源,并在ApplicationListener中处置hide()
处置。
资源方面的大项目/游戏
您必须使用AssetManager,因为您需要管理大量资源。