[0]替换不了sharedMaterials

想通过按钮更换角色的材质,但是参考官网案例赋值给sharedMaterials却没有效果。
 
ChangeMaterial() {
        var i = 0;
        this.playerMat = this.firstPlayer.getChildByName("Geometry").getChildByName("Armature_Mesh").skinnedMeshRenderer.sharedMaterials;
        if (!this.isChangeMat) {
            while (i < 3) {
                // this.playerMat[i].albedoColor = new Laya.Vector4(1, 0, 0, 1);
                this.playerMat[i] = this.effectMatArr[i]; 
                console.log(this.playerMat[i]);
                i++;
            }
            this.isChangeMat = true; 
        } else {
            // while (i < 3) {
            //     this.playerMat[i].albedoColor = new Laya.Vector4(1, 1, 1, 1);
            //     i++;
            // }
            // this.isChangeMat = false;
        }
        console.log(this.firstPlayer.getChildByName("Geometry").getChildByName("Armature_Mesh"));
        console.log(this.firstPlayer.getChildByName("Geometry").getChildByName("Armature_Mesh").skinnedMeshRenderer.sharedMaterials);
    }
laya工程
链接:https://pan.baidu.com/s/1a9ccp ... Dnqqb 
提取码:nqqb 
--来自百度网盘超级会员V5的分享
 
unity2021.3.6f1c1
layaair2.13.0
已邀请:

小高

赞同来自:

已在开发者群提供了解决方式。

要回复问题请先

商务合作
商务合作