如何动态变更cc.AudioClip对应的音频文件?

一个场景上只放一个AudioClip,如果想动态变更声音源如何作?
另外CC支持TextToSpeech(TTS)吗?如何在CC中使用TTS?

第一个问题自己解决了,
很简单。
查看AudioClip的定义其实就是个URL.
直接把音频文件的URL赋值给AudioClip对应的properties就好了,需要注意的是音频文件必须放到Assets下的resources文件夹下这是一个坑(开始放错地方,文件提取一直不成功一定提示都没)

    properties: {
       SampleAudio: {
            default: null,
            url: cc.AudioClip
        },
    },

变更音频文件

this.SampleAudio=cc.url.raw('resources/music.mp3');

1赞

关于动态加载的原理在这篇文档有描述,可以看一下

TextToSpeech 没有默认支持,需要依赖第三方库