cocos creator 本地动态加载龙骨资源


// 远程加载

var animNode = new cc.Node();
                animNode.name = 'animNode';
                animNode.parent = cc.find('Canvas');
                var dragonDisplay = animNode.addComponent(dragonBones.ArmatureDisplay);

                var image = 'http://127.0.0.1:5500/assets/resources/Monster/monsterbone001_0_tex.png';
                var ske = 'http://127.0.0.1:5500/assets/resources/Monster/monsterbone001_0_ske.json';
                var atlas = 'http://127.0.0.1:5500/assets/resources/Monster/monsterbone001_0_tex.json';
                cc.loader.load(image, (error, texture) => {
                    cc.loader.load({ url: atlas, type: 'txt' }, (error, atlasJson) => {
                        cc.loader.load({ url: ske, type: 'txt' }, (error, dragonBonesJson) => {
                            var atlas = new dragonBones.DragonBonesAtlasAsset();
                            atlas.atlasJson = atlasJson;
                            atlas.texture = texture;

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

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

                            dragonDisplay.armatureName = 'armatureName';
                            dragonDisplay.playAnimation('walk', 0);
                        });
                    });
                });

// 加载动画
Config.loadAni = function(armatureDisPlay,name,armatureName,callfunc){


        armatureDisPlay.dragonAtlasAsset = null;
        armatureDisPlay.dragonAsset = null;
        armatureDisPlay.armatureName = "";
        var dbUrl_ske = 'ani/' + name + '_ske';
        var dbUrl_tex = 'ani/' + name + '_tex';
        cc.loader.loadRes(dbUrl_tex,dragonBones.DragonBonesAtlasAsset,function(err,atlasasset){
            armatureDisPlay.dragonAtlasAsset = atlasasset;
            cc.loader.loadRes(dbUrl_ske,dragonBones.DragonBonesAsset,function(err,asset){
                // '_armatureName'是做龙骨骨骼时里面设置的名字而不是龙骨文件的名字,这个因该都懂的吧。
               
                armatureDisPlay.dragonAsset = asset;

               armatureDisPlay.armatureName = armatureName || "Armature";
                if (callfunc) {
                    callfunc()
                }
            });
        });
     
    }

 

 

 

你可能感兴趣的:(cocos,creator,龙骨动态)