[LayaAir 2.0]Laya2.0版本linkSprite3DToAvatarNode无法正常使用了,因为新插件导出的动画没有avatar文件了,导致挂载不上
__proto._isLinkSpriteToAnimationNode=function(sprite,nodeName,isLink){
if (this._avatar){
这一步必须要有 avatar 文件,但是用新的2.0插件导出的角色不带avatar文件导致无法挂载,可在GameUI.ts 41行下断点调试进入查看。
var actor = Laya.Loader.getRes("res/LayaScene_Actor/Conventional/XiaoHongMao.lh") as Laya.Sprite3D;
var weapon = Laya.Loader.getRes("res/LayaScene_Item/Conventional/Wchangzhang01.lh") as Laya.Sprite3D;
var animCtl = actor.getComponent(Laya.Animator);
scene.addChild(actor);
actor.addChild(weapon);
animCtl.linkSprite3DToAvatarNode("RHand", weapon);
animCtl.play("Idle01");
代码基本功能就是往人物的右手挂载一个武器,Laya1.0版本的时候都是可以正常使用的
if (this._avatar){
这一步必须要有 avatar 文件,但是用新的2.0插件导出的角色不带avatar文件导致无法挂载,可在GameUI.ts 41行下断点调试进入查看。
var actor = Laya.Loader.getRes("res/LayaScene_Actor/Conventional/XiaoHongMao.lh") as Laya.Sprite3D;
var weapon = Laya.Loader.getRes("res/LayaScene_Item/Conventional/Wchangzhang01.lh") as Laya.Sprite3D;
var animCtl = actor.getComponent(Laya.Animator);
scene.addChild(actor);
actor.addChild(weapon);
animCtl.linkSprite3DToAvatarNode("RHand", weapon);
animCtl.play("Idle01");
代码基本功能就是往人物的右手挂载一个武器,Laya1.0版本的时候都是可以正常使用的
1 个回复
layabox
赞同来自:
https://ldc2.layabox.com/doc/?nav=zh-ts-4-15-9