private void UpdateMask(ClipAnimationMaskType maskType) { if (this.clipInfo == null) { return; } if (maskType == ClipAnimationMaskType.CreateFromThisModel) { SerializedObject serializedObject = this.clipInfo.maskTypeProperty.serializedObject; ModelImporter modelImporter = serializedObject.targetObject as ModelImporter; AvatarMaskUtility.UpdateTransformMask(this.m_TransformMask, modelImporter.transformPaths, this.humanTransforms); this.FillNodeInfos(); } else if (maskType == ClipAnimationMaskType.CopyFromOther) { AvatarMask avatarMask = this.clipInfo.maskSourceProperty.objectReferenceValue as AvatarMask; if (avatarMask != null) { AvatarMask avatarMask2 = this.target as AvatarMask; avatarMask2.Copy(avatarMask); if (this.humanTransforms != null) { AvatarMaskUtility.SetActiveHumanTransforms(avatarMask2, this.humanTransforms); } this.clipInfo.MaskToClip(avatarMask2); this.FillNodeInfos(); } } AvatarMask mask = this.target as AvatarMask; this.clipInfo.MaskFromClip(mask); }
private void UpdateMask(ClipAnimationMaskType maskType) { if (this.clipInfo == null) { return; } if (maskType == ClipAnimationMaskType.CreateFromThisModel) { AvatarMaskUtility.UpdateTransformMask(this.m_TransformMask, (this.clipInfo.maskTypeProperty.serializedObject.targetObject as ModelImporter).transformPaths, this.humanTransforms); this.FillNodeInfos(); } else if (maskType == ClipAnimationMaskType.CopyFromOther) { AvatarMask objectReferenceValue = this.clipInfo.maskSourceProperty.objectReferenceValue as AvatarMask; if ((UnityEngine.Object)objectReferenceValue != (UnityEngine.Object)null) { AvatarMask target = this.target as AvatarMask; target.Copy(objectReferenceValue); if (this.humanTransforms != null) { AvatarMaskUtility.SetActiveHumanTransforms(target, this.humanTransforms); } this.clipInfo.MaskToClip(target); this.FillNodeInfos(); } } this.clipInfo.MaskFromClip(this.target as AvatarMask); }
private void UpdateMask(ClipAnimationMaskType maskType) { if (clipInfo == null) { return; } if (maskType == ClipAnimationMaskType.CreateFromThisModel) { SerializedObject so = clipInfo.maskTypeProperty.serializedObject; ModelImporter modelImporter = so.targetObject as ModelImporter; AvatarMaskUtility.UpdateTransformMask(m_TransformMask, modelImporter.transformPaths, humanTransforms); UpdateTransformInfos(); } else if (maskType == ClipAnimationMaskType.CopyFromOther) { AvatarMask maskSource = clipInfo.maskSourceProperty.objectReferenceValue as AvatarMask; if (maskSource != null) { AvatarMask maskDest = target as AvatarMask; maskDest.Copy(maskSource); // If this is a human clip make sure that all human transform path are set to true if (humanTransforms != null) { AvatarMaskUtility.SetActiveHumanTransforms(maskDest, humanTransforms); } clipInfo.MaskToClip(maskDest); UpdateTransformInfos(); } } else if (maskType == ClipAnimationMaskType.None) { var emptyMask = new AvatarMask(); ModelImporter.UpdateTransformMask(emptyMask, clipInfo.transformMaskProperty); } AvatarMask mask = target as AvatarMask; clipInfo.MaskFromClip(mask); }