Пример #1
0
    private static Transform FindChildByName(string ThisName, Transform ThisGObj)
    {
        if (ThisGObj.name == ThisName)
        {
            return(ThisGObj.transform);
        }
        IEnumerator enumerator = ThisGObj.GetEnumerator();

        try
        {
            while (enumerator.MoveNext())
            {
                object    obj       = enumerator.Current;
                Transform thisGObj  = (Transform)obj;
                Transform transform = SkinnedMeshTools.FindChildByName(ThisName, thisGObj);
                if (transform != null)
                {
                    return(transform);
                }
            }
        }
        finally
        {
            IDisposable disposable;
            if ((disposable = (enumerator as IDisposable)) != null)
            {
                disposable.Dispose();
            }
        }
        return(null);
    }
Пример #2
0
 private static Transform FindChildByName(string ThisName, Transform ThisGObj)
 {
     if (ThisGObj.name == ThisName)
     {
         return(ThisGObj.transform);
     }
     foreach (Transform thisGObj in ThisGObj)
     {
         Transform transform = SkinnedMeshTools.FindChildByName(ThisName, thisGObj);
         if (transform != null)
         {
             return(transform);
         }
     }
     return(null);
 }
Пример #3
0
    private static GameObject ProcessBonedObject(SkinnedMeshRenderer ThisRenderer, Transform root)
    {
        GameObject gameObject = new GameObject(ThisRenderer.gameObject.name);

        gameObject.transform.parent = root;
        SkinnedMeshRenderer skinnedMeshRenderer = gameObject.AddComponent(typeof(SkinnedMeshRenderer)) as SkinnedMeshRenderer;

        Transform[] array = new Transform[ThisRenderer.bones.Length];
        for (int i = 0; i < ThisRenderer.bones.Length; i++)
        {
            array[i] = SkinnedMeshTools.FindChildByName(ThisRenderer.bones[i].name, root);
        }
        skinnedMeshRenderer.bones           = array;
        skinnedMeshRenderer.sharedMesh      = ThisRenderer.sharedMesh;
        skinnedMeshRenderer.sharedMaterials = ThisRenderer.sharedMaterials;
        return(gameObject);
    }