Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public class Equipmentizer : MonoBehaviour {
- [Tooltip("Here goes the SkinnedMeshRenderer you want to target")]
- public GameObject target;
- void Start () {
- SkinnedMeshRenderer targetRenderer = target.GetComponent<SkinnedMeshRenderer>();
- Dictionary<string,Transform> boneMap = new Dictionary<string,Transform>();
- foreach (Transform bone in targetRenderer.bones) boneMap[bone.gameObject.name] = bone;
- SkinnedMeshRenderer myRenderer = gameObject.GetComponent<SkinnedMeshRenderer>();
- Transform[] newBones = new Transform[myRenderer.bones.Length];
- for (int i = 0; i < myRenderer.bones.Length; ++i) {
- GameObject bone = myRenderer.bones[i].gameObject;
- if (!boneMap.TryGetValue(bone.name, out newBones[i])) {
- Debug.Log("Unable to map bone \"" + bone.name + "\" to target skeleton.");
- break;
- }
- }
- myRenderer.bones = newBones;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement