AnimationUtility.GetObjectReferenceCurveBindings
Declaration
public static EditorCurveBinding[] GetObjectReferenceCurveBindings(AnimationClip clip);Описание
Получает привязки кривых ссылок объекта, хранящиеся в клипе анимации.
Используйте этот метод, чтобы узнать, какие свойства ссылок на объекты можно анимировать.
Unity имеет два типа анимации: кривая с плавающей точкой и кривая ссылок на объект. Кривая с плавающей точкой — это классическая кривая, которая анимирует свойство с плавающей точкой с течением времени. Кривая ссылок на объекты — это конструкция, которая анимирует свойство ссылок на объекты с течением времени.
Этот метод извлекает только привязки кривых ссылок на объекты. См. AnimationUtility.GetCurveBindings для кривых с плавающей точкой.
using UnityEditor; using UnityEngine;
// Editor window for listing all object reference curves in an animation clip public class ClipInfo : EditorWindow { private AnimationClip clip;
[MenuItem("Window/Clip Info")] static void Init() { GetWindow(typeof(ClipInfo)); }
public void OnGUI() { clip = EditorGUILayout.ObjectField("Clip", clip, typeof(AnimationClip), false) as AnimationClip;
EditorGUILayout.LabelField("Object reference curves:"); if (clip != null) { foreach (var binding in AnimationUtility.GetObjectReferenceCurveBindings(clip)) { ObjectReferenceKeyframe[] keyframes = AnimationUtility.GetObjectReferenceCurve(clip, binding); EditorGUILayout.LabelField(binding.path + "/" + binding.propertyName + ", Keys: " + keyframes.Length); } } } }