用creator 做了一个动画,有多个动作,现在想远程加载,怎么实现
cc.assetManager.loadRemote(url, (err, asset) => {
let data = JSON.parse(asset._nativeAsset)
let clip = new cc.AnimationClip()
clip._duration = data._duration
clip.curveData = data.curveData
clip.events = data.events
clip.name = data._name
clip.sample = data.sample
clip.speed = data.speed
clip.wrapMode = data.wrapMode
let node = new cc.Node()
let anim = node.addComponent(cc.Animation)
anim.addClip(clip,clip.name)
anim.play(clip.name)
})
createAnimationClip(asset: cc.Asset, cb: Function) {
cc.assetManager.parser.parseImport(asset._nativeAsset, null, (err, data) => {
cc.log('result == ', data)
let clip = new cc.AnimationClip()
clip._duration = data._duration
clip.curveData = data.curveData
clip.events = data.events
clip.name = data._name
clip.sample = data.sample
clip.speed = data.speed
clip.wrapMode = data.wrapMode
cb && cb(err, clip)
})
}
修改了一下 直接用JSON.parse反序列化 data中缺少对应的类型 如cc.Ve2 等
造成播放动画是 无法初始化对应的差值计算法方法
现在的问题是cc.assetManager.parser.parseImport方法 预览模式没有问题 发布模式走的compiled文件 没法解析 太恶心了
有没有可以直接远程读取.anim的api??????????