unity3d 音频无缝循环

在我做赛车漂移的时候,漂移的声音断断续续的,搞得我很郁闷

大家可以随便找个音效然后循环播放去仔细听

你会发现当音效播放完成一次之后循环播放第二次时会停顿一下

我做赛车漂移如果中途停顿了体验是非常不好的,所以我就开始找原因

首先检查音效,没问题

检查代码、写测试代码,还是没问题

难道是u3d的bug?不是说好的循环吗,为啥会有停顿

后来在官方文档中看到一个Gapless looping(无缝循环)参数!!

soga,原来本来就有这个选项,心想终于可以得到解决了

可是事情好像没那么简单

Gapless looping这个参数不管我怎么设置,他就是不可以勾选

我就郁闷了,查了好多资料大家都只是介绍他干嘛用的,但是没有说不可以勾选这个问题

难道就我一个人遇到吗?或者说大家没有这种需求!!

无奈,我直接改音频的.mata文件

找到音频.mata用文本的方式打开,找到"loopable"

它默认是为0,手动改为1,保存后回到u3d就会发现音频已经勾选了Gapless looping

测试一下是不是真的起作用了!咦,还真的好了

fileFormatVersion: 2
guid: 1e8c12c16ca11524984902b8af6f86c4
AudioImporter:
serializedVersion: 4
format: 0
quality: .5
stream: 1
3D: 0
forceToMono: 0
useHardware: 0
loopable: 1
userData:

虽然解决了问题,但是这样的做法有些奇葩

如果有小伙伴知道怎么正常勾选Gapless looping请告知,谢谢

本文链接:http://www.cnblogs.com/shenggege/p/5126651.html

原文地址:https://www.cnblogs.com/shenggege/p/5126651.html