就像问题一样,我没有得到使用这些类之间的区别.每个班级的优点和局限是什么.我阅读了很多教程,仍然无法决定我该怎么办.
为了使事情更清楚,我得到了AudioModule,AudioEmitterComponent和AudioListenerComponent.(我们的游戏是基于组件.当你创建和对象是一些声音的来源(怪物或某事物)时,我添加发射器组件..然后我遇到了问题.我无法弄清楚如何做到最好.首先,我希望音频模块能够获得List,同样适用于听众(以及wave和soundbanks的列表).现在我遇到了问题,不是编码本身(目前),而是概念是什么,何地,何时,为什么.想法很有价值:)
And*_*ell 13
认为SoundEffect是声音文件.您可以使用内容管理器加载它们.
并SoundEffectInstance作为播放声音文件的程序.
SoundEffect有一个Play方法.这只是为了方便.这内部的作用是创建一个SoundEffectInstance,播放它,然后在它完成时进行清理.(被称为"火与忘记".)
当SoundEffectInstance你使用(你创建SoundEffect.CreateInstance)时,你需要自己管理所有这些 - 优点是你可以在播放声音时操纵声音的属性(音量等).您还可以循环播放声音,停止或暂停,等等.
当你完成你的时候SoundEffectInstance,别忘Dispose()了它!
你可以做的另一件事SoundEffectInstance(完全是可选的)是对它应用3D效果.这为您提供了一种在3D空间中"放置"声音的简便方法.您可以使用3D效果SoundEffectInstance.Apply3D(为其提供一个监听器和一个提供有关摄像机和声源信息的发射器).有关详细信息最好留给MSDN上的" 将3D位置效果应用于声音 "文章.