cocos creator-基础教程-音频媒体加载与播放的三种方式(三)
大家好又到了周五,停更了一周,今天接着更新,
对于重要的事情都说三遍,哈哈,闲话不多说……
对于加载而言,在未开始游戏前就把所有资源全部加载这样是不可取的,如果我的游戏30m+,还没进游戏加载就1到2分钟,试问谁还能等下去??对于用户等待有个“黄金15秒”的说法,超过一定的值很多人就不会在等待,而且反复的关闭,再次打开,还有甚者直接关闭。
俗话说得好,条条大路通罗马,办法很多今天主要列出一种,
官方api关于load加载的地址:http://www.cocos.com/docs/creator/api/classes/loader.html#property_loader
load加载
(
- resources
- [progressCallback ]
- [completeCallback ]
)
使用进程回调和完整的回调加载资源。进度回调与Pipeline的onProgress相同 完整的回调与Pipeline的onComplete几乎相同 唯一的区别是当用户传递一个url作为资源时,完整的回调将直接设置其结果作为第二个参数。
名称 | 类型 | 描述 | |
---|---|---|---|
resources |
|
网址列表中的数组 | |
progressCallback 可选的 |
Function | 当进程更改时调用回调 | |
completeCallback 可选的 |
Function | 所有资源加载时调用回调 |
好吧这个确实不够清楚,千里之行始于足下,看代码了,
好吧确实不爱看,直接说差别吧,众所周知关于“h5音频播放”一直是很多人侃侃而谈的资本,确实他这个扭曲的“标准”,让游戏处理变得束手束脚,就拿一个平常的例子来看,安卓跟ios还有html5播放,三个标准,没错是三个不一样的标准,如何使每个平台兼容我们的音频,这也是cocos 团队一直在做的事儿,首先我们先说第一种方法。
AudioSource
AudioEngine
这个还是不错的在我测试时候发现在ios跟webmobile上运行还是很不错的,兼容处理也要好于上面的audioSource,
值得注意的是:AudioEngine播放的时候,需要注意这里的传入的是一个完整的url(与res路径稍有不同)。所以我们不建议在播放的接口内直接填写音频的url地址,而是希望大家先定义一个AudioClip,然后在编辑器内将音频拖拽过来。
除了这种方法,我们还可以通过第三种方法