Dictionary.ContainsKey(string str);
用于判断字典中是否存在了str的数据
Dictionary.ContainsKey(string str);
用于判断字典中是否存在了str的数据
模型三大组成部分:
骨骼 网格 材质
换装原理:
换掉旧mesh,新mesh绑定新骨骼,更新材质
模型三大组成部分:
骨骼 网格 材质
换装原理:
换掉旧mesh→新mesh绑定新骨骼→更新材质
换服装步骤:换Mesh->换骨骼位置->换材质球
骨骼是动态才需要的,静态的不需要
Animation也是一个组件,可以挂载多个动画。
换装逻辑代码与此处实现实现初始化人物服装联系,换装逻辑的使用双重循环遍历需要换的部位的Smr组件的bones无法理解,提出疑问:人物里面的Female_Hips父物体身下的所有子物体的Transform就是骨骼?而每个Smr组件身上也有类似的这样的Female_Hips物体,身上带有很多只带有Trans组件的物体,不过需要修改的部分只是对应的里面的一部分而已,Female_Hips骨骼库里面只会运用到一部分,在运动的时候Transform的值会变化,而穿上不同部位服装时,运动的部分也不同,因此我推测就是部分的骨骼变动,其中girlSmr[part].bones=bones.ToArray()就是改变要修改部位的Smr的骨骼信息,让那一部分动起来???这个点不好理解啊,在双重循环的条件函数里面,使用了print输出这个什么bone.name信息以及bone信息后,发现其实就是对所更改部位的Smr组件的bones属性进行赋值,赋值内容是原本Target游戏人物身上自带的Female_Hips物体身上的子物体一样,在print之后看了一下大概是50多个,有很大部分都没有进行赋值,而进行了赋值的都会变动。。。
AvatarSys
private GameObject girlSource;
paivate GameObject girlTarger;
private Dictionary<string,Dictionary<string,SkinnedMeshRenderer>>
string[] namees = part.name.Split ('-'); //名字拆分 意思是 names[0] 存 部位名字,ear,head.... // names[1]存 数字123456 循环结束后 girDate [namees [0]].Add (namees [1], part); 就是相对应的//ear.Add([1],skinnedMeshRender)
换mesh同时换骨骼(动态的人物),静态的人物换mesh就行了
1、字典存储数据
2、
1
删除掉mesh只剩骨骼
changed mesh 里,双循环为什么循环的第二次是遍历girlhips ,他明明是去处掉skm后的target,这样的话应该不含bones吧。感觉这块的不是很理解
1.导入资源
2.
UGUI界面控件属于游戏场景的一部分。
UGUI界面控件本质上也是游戏物体,与去在于附加的组件其常规游戏物体有区别。
所有UGUI空间本质都是附件不同组件的游戏物体。
所有游戏物体本质都是GameObje
为什么身体信息俩部分有
var
换装,
需要替换mesh网格
ca
换装主要是