From 16e4a47beaf7786b63404d4a8356e45d70a393b5 Mon Sep 17 00:00:00 2001 From: chai Date: Tue, 28 Sep 2021 19:12:34 +0800 Subject: *unit lens --- Assets/Scripts/Unit/UnitSnapshot.cs | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 Assets/Scripts/Unit/UnitSnapshot.cs (limited to 'Assets/Scripts/Unit/UnitSnapshot.cs') diff --git a/Assets/Scripts/Unit/UnitSnapshot.cs b/Assets/Scripts/Unit/UnitSnapshot.cs new file mode 100644 index 00000000..0515bf6f --- /dev/null +++ b/Assets/Scripts/Unit/UnitSnapshot.cs @@ -0,0 +1,36 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +// 保存当前角色的快照 +public struct UnitSnapshotInfo +{ + public UnitController unit; + + public int animStateHash; + + public float normalizedTime; + + public TRS trs; + +} + +// 角色快照,用于lens effect +public class UnitSnapshot : MonoBehaviour +{ + public UnitController owner; + public Animator animator; + + public void Initialize(UnitController prototype) + { + animator.runtimeAnimatorController = prototype.unitAnimation.animator.runtimeAnimatorController; + } + + public void ApplySnapshot(UnitSnapshotInfo info) + { + animator.Play(info.animStateHash, 0, info.normalizedTime); + animator.speed = 0.02f; + animator.Update(1 / 60f); + } + +} \ No newline at end of file -- cgit v1.1-26-g67d0