ConstraintSource
структура в UnityEngine.Animations
Выполнено в:UnityEngine.AnimationModule
Описание
Представляет собой взвешенную позицию, которая может быть использована в ограничении.
С помощью этой структуры ограничению передают позицию с весом; ограничение должно реализовывать IConstraint интерфейс. В одном ограничении можно использовать много источников. Чтобы настроить их влияние на ограничение, задайте weight параметр.
Дополнительные ресурсы: IConstraint PositionConstraint RotationConstraint ScaleConstraint AimConstraint ParentConstraint
using UnityEngine; using UnityEngine.Animations; // The example creates a new MonoBehaviour that is used alongside a ParentConstraint component. // At runtime, the component adds two sources to the parent constraint and uses the property // 'switchSource' to dynamically switch from one to the other. [RequireComponent(typeof(ParentConstraint))] public class ConstraintSourceSwitcher : MonoBehaviour { private ParentConstraint m_ParentConstraint; public Transform source1; public Transform source2; public bool switchSource; void OnEnable() { m_ParentConstraint = GetComponent<ParentConstraint>(); m_ParentConstraint.AddSource(new ConstraintSource { sourceTransform = source1}); m_ParentConstraint.AddSource(new ConstraintSource { sourceTransform = source2}); } public void Update() { m_ParentConstraint.SetSource(0, new ConstraintSource { sourceTransform = source1, weight = switchSource ? 0f : 1f }); m_ParentConstraint.SetSource(1, new ConstraintSource { sourceTransform = source2, weight = switchSource ? 1f : 0f }); } }
Свойства
| Свойство | Описание |
|---|---|
| sourceTransform | Компонент трансформации исходного объекта. |
| weight | вес источника при оценке ограничения. |