static void Update() { EditorUpdaterProxy.Instance.onLateUpdate -= OnLateUpdate; EditorUpdaterProxy.Instance.onLateUpdate += OnLateUpdate; if (s_DraggingATool) { s_DraggingATool = false; string undoName = "Move"; if (Tools.current == Tool.Rotate) { undoName = "Rotate"; } if (Tools.current == Tool.Scale) { undoName = "Scale"; } for (int i = 0; i < Selection.transforms.Length; i++) { Transform transform = Selection.transforms [i]; Control control = transform.GetComponent <Control> (); if (control && control.isActiveAndEnabled && control.bone) { Undo.RecordObject(control.bone.transform, undoName); control.bone.transform.position = control.transform.position; control.bone.transform.rotation = control.transform.rotation; BoneUtils.OrientToChild(control.bone.parentBone, false, undoName, true); } Ik2D ik2D = transform.GetComponent <Ik2D>(); if (ik2D && ik2D.record) { IkUtils.UpdateIK(ik2D, undoName, true); } } SetDirty(); } AnimationModeCheck(); AnimationWindowTimeCheck(); IkUtils.UpdateAttachedIKs(s_Ik2Ds); UpdateIKs(); }
void CreatePreview() { DestroyPreview(); if (!AnimationMode.InAnimationMode()) { return; } if (m_SelectedRenderer) { List <Renderer> l_renderers = new List <Renderer>(); AnimationWindowExtra.rootGameObject.GetComponentsInChildren <Renderer>(l_renderers); foreach (Renderer renderer in l_renderers) { renderer.enabled = renderer == m_SelectedRenderer; } m_InstanceRoot = EditorExtra.InstantiateForAnimatorPreview(AnimationWindowExtra.rootGameObject) as GameObject; foreach (Renderer renderer in l_renderers) { renderer.enabled = true; } } else { m_InstanceRoot = EditorExtra.InstantiateForAnimatorPreview(AnimationWindowExtra.rootGameObject) as GameObject; } EditorExtra.InitInstantiatedPreviewRecursive(m_InstanceRoot); List <Ik2D> ik2Ds = new List <Ik2D>(); m_InstanceRoot.GetComponentsInChildren <Ik2D>(ik2Ds); IkUtils.UpdateAttachedIKs(ik2Ds); m_OnionLayerManager.source = m_InstanceRoot; m_InstanceRoot.SetActive(false); }
void CreatePreview() { DestroyPreview(); if (!AnimationMode.InAnimationMode()) { return; } m_InstanceRoot = EditorExtra.InstantiateForAnimatorPreview(AnimationWindowExtra.rootGameObject) as GameObject; EditorExtra.InitInstantiatedPreviewRecursive(m_InstanceRoot); List <Ik2D> ik2Ds = new List <Ik2D>(); m_InstanceRoot.GetComponentsInChildren <Ik2D>(ik2Ds); IkUtils.UpdateAttachedIKs(ik2Ds); m_OnionLayerManager.source = m_InstanceRoot; m_InstanceRoot.SetActive(false); }