首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SoundEffect和SoundEffectInstance类之间的区别

SoundEffect和SoundEffectInstance类之间的区别
EN

Stack Overflow用户
提问于 2011-03-31 19:29:28
回答 1查看 3.8K关注 0票数 8

就像上面提到的,我不明白使用这些类有什么不同。每一类的优点和局限性是什么?我读了很多教程,但仍然不能决定我应该做什么。

为了让事情更清楚,我使用了AudioModule,AudioEmitterComponent和AudioListenerComponent。(我们的游戏边界是基于组件的。当你创建一些声音(怪物或者其他东西)的对象时,我添加了发射器组件。然后我就有麻烦了。我想不出怎样才能做得最好。首先,我想让音频模块获得列表,监听器也是如此(还有wave和soundbank的列表)。现在我遇到了问题,不是在编码本身(目前),而是在概念上,什么,在哪里,什么时候,为什么。任何想法都是有价值的:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-31 20:15:43

SoundEffect想象成声音文件。您可以使用内容管理器加载它们。

以及SoundEffectInstance作为播放声音文件的程序。

SoundEffect有一个Play方法。这只是为了方便。这在内部做的是创建一个SoundEffectInstance,播放它,然后在它完成时清理它。(被称为“火和忘记”。)

当使用SoundEffectInstance (使用SoundEffect.CreateInstance创建)时,您需要自己管理所有这些内容-优点是您可以在播放声音的同时操作声音的属性(音量等)。你也可以循环播放声音,中途停止或暂停,等等。

当你完成你的SoundEffectInstance,不要忘了Dispose()它!

你可以用SoundEffectInstance做的另一件事(这完全是可选的)是对它应用3D效果。这为你在3D空间中“放置”声音提供了一个简单的方法。您可以使用SoundEffectInstance.Apply3D应用3D效果(为其提供一个侦听器和一个发射器,以提供有关相机和声源的信息)。有关这方面的详细信息,请参阅MSDN上的"Applying a 3D Positional Effect to a Sound“一文。

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5499093

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档