龙骨更新错乱问题 龙骨的资源是从后台请求的 一开始播放正常 更新新的龙骨覆盖就播放错乱了 用了新节点 新组件 但播放的方式还是之前的 图片已经改了 重新进游戏可以

  • Creator 版本:

  • 目标平台:

  • 详细报错信息,包含调用堆栈:

  • 重现方式:

  • 之前哪个版本是正常的 :

  • 手机型号 :

  • 手机浏览器 :

  • 编辑器操作系统 :

  • 编辑器之前是否有其它报错 :

  • 出现概率:

  • 额外线索:

cc.loader.load(image, () => {
cc.loader.load({ url: atlas, type: ‘txt’ }, (error, atlasJson) => {
cc.loader.load({ url: ske, type: ‘txt’ }, (error, dragonBonesJson) => {
let atlas = new dragonBones.DragonBonesAtlasAsset();
atlas.atlasJson = atlasJson;
atlas.texture = image;

        let asset = new dragonBones.DragonBonesAsset();
        asset.dragonBonesJson = dragonBonesJson;

        dragonDisplay.dragonAtlasAsset = atlas;
        dragonDisplay.dragonAsset = asset;

        dragonDisplay.armatureName = 'eee';
        dragonDisplay.playAnimation('eee', -1);
    });
});

});
是playAnimation(‘eee’, -1);
});的问题吗? 怎么清空上一次的状态

DragonBonesAsset 这种方法创建的不会自动释放,调用destory手动释放下就好了,找了我一天。

老哥,厉害 这问题也卡了我好久 我删除节点 新建节点 添加龙骨组件都不行 是destory let asset = new dragonBones.DragonBonesAsset(); 这句?

我是直接每次调用把整个节点删掉都重新new的。:sweat:

嗯 是的 let asset = new dragonBones.DragonBonesAsset();这句创建的DragonBonesAsset资源要手动释放,

dragonDisplay.dragonAtlasAsset.destory();
dragonDisplay.dragonAsset.destory();
1赞

dragonDisplay.dragonAtlasAsset.destory();
dragonDisplay.dragonAsset.destory();
这两句报错 有完整的代码可以看下吗?

就是更新龙骨的时候要把前一次的资源实例销毁,自己保存下前一次的资源实例

let asset = new dragonBones.DragonBonesAsset(); 我把这句改为 this.asset? 每次重新赋值 这样有用吗?

多谢了 老哥 可以了 是要destroy