// Animancer // https://kybernetik.com.au/animancer // Copyright 2022 Kybernetik // #pragma warning disable CS0649 // Field is never assigned to, and will always have its default value. using UnityEngine; namespace Animancer.Examples.Jobs { /// <summary> /// An example component that demonstrates how to use <see cref="SimpleLean"/>. /// </summary> /// /// <remarks> /// Since <see cref="SimpleLean"/> is not a <see cref="MonoBehaviour"/> component, we need this script to /// demonstrate its use. However, in a real project you might simply integrate the contents of this class into one /// of your existing classes. /// </remarks> /// /// <example><see href="https://kybernetik.com.au/animancer/docs/examples/jobs/lean">Lean</see></example> /// /// https://kybernetik.com.au/animancer/api/Animancer.Examples.Jobs/SimpleLeanComponent /// [AddComponentMenu(Strings.ExamplesMenuPrefix + "Jobs - Simple Lean")] [HelpURL(Strings.DocsURLs.ExampleAPIDocumentation + nameof(Jobs) + "/" + nameof(SimpleLeanComponent))] public sealed class SimpleLeanComponent : MonoBehaviour { /************************************************************************************************************************/ // Initialisation. /************************************************************************************************************************/ [SerializeField] private AnimancerComponent _Animancer; private SimpleLean _Lean; private void Awake() { _Lean = new SimpleLean(_Animancer.Playable); } /************************************************************************************************************************/ // Usage. /************************************************************************************************************************/ // Set by a UI Slider. public float Angle { get => _Lean.Angle; set => _Lean.Angle = value; } /************************************************************************************************************************/ [SerializeField] private Transform _Axis; private void Update() { _Lean.Axis = _Axis.forward; } /************************************************************************************************************************/ } }