From b595845be58e8cfdd9252bfe4dc8a2b01c5b72b3 Mon Sep 17 00:00:00 2001 From: cd <-> Date: Mon, 5 Jun 2023 23:06:59 +0800 Subject: [PATCH] =?UTF-8?q?timeline=E5=B7=A5=E5=85=B7=E6=94=B9=E9=80=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- client/Assets/Editor/TimelineTool.meta | 3 - .../Editor/TimelineTool/TimelineTool.cs | 10 -- .../Editor/TimelineTool/TimelineTool.cs.meta | 3 - client/Assets/Game/Driver.unity | 120 +++++++++++++++++- .../Game/Scripts/MonoScript/Timeline.meta | 3 + .../MonoScript/Timeline/TimelineTool.cs | 50 ++++++++ .../MonoScript/Timeline/TimelineTool.cs.meta | 3 + 7 files changed, 170 insertions(+), 22 deletions(-) delete mode 100644 client/Assets/Editor/TimelineTool.meta delete mode 100644 client/Assets/Editor/TimelineTool/TimelineTool.cs delete mode 100644 client/Assets/Editor/TimelineTool/TimelineTool.cs.meta create mode 100644 client/Assets/Game/Scripts/MonoScript/Timeline.meta create mode 100644 client/Assets/Game/Scripts/MonoScript/Timeline/TimelineTool.cs create mode 100644 client/Assets/Game/Scripts/MonoScript/Timeline/TimelineTool.cs.meta diff --git a/client/Assets/Editor/TimelineTool.meta b/client/Assets/Editor/TimelineTool.meta deleted file mode 100644 index abe4d7a..0000000 --- a/client/Assets/Editor/TimelineTool.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e2e68f70fb714a4698c018cafc438c50 -timeCreated: 1685973494 \ No newline at end of file diff --git a/client/Assets/Editor/TimelineTool/TimelineTool.cs b/client/Assets/Editor/TimelineTool/TimelineTool.cs deleted file mode 100644 index aeede2c..0000000 --- a/client/Assets/Editor/TimelineTool/TimelineTool.cs +++ /dev/null @@ -1,10 +0,0 @@ -using UnityEditor; -using UnityEngine; - -public class TimelineTool : EditorWindow -{ - private void OnSelectionChange() - { - Debug.Log(Selection.instanceIDs); - } -} \ No newline at end of file diff --git a/client/Assets/Editor/TimelineTool/TimelineTool.cs.meta b/client/Assets/Editor/TimelineTool/TimelineTool.cs.meta deleted file mode 100644 index 5cdb8f7..0000000 --- a/client/Assets/Editor/TimelineTool/TimelineTool.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 497a2da397c94e80b40f631cceb6ccb1 -timeCreated: 1685973502 \ No newline at end of file diff --git a/client/Assets/Game/Driver.unity b/client/Assets/Game/Driver.unity index fa72958..4989384 100644 --- a/client/Assets/Game/Driver.unity +++ b/client/Assets/Game/Driver.unity @@ -1406,24 +1406,132 @@ PlayableDirector: m_GameObject: {fileID: 1645380337361164332} m_Enabled: 1 serializedVersion: 3 - m_PlayableAsset: {fileID: 11400000, guid: 0128bf6357f2af44f8acf1142582b387, type: 2} - m_InitialState: 1 + m_PlayableAsset: {fileID: 11400000, guid: 37819ba1ff5089742b135f4b72d20cb8, type: 2} + m_InitialState: 0 m_WrapMode: 2 m_DirectorUpdateMode: 1 m_InitialTime: 0 m_SceneBindings: - key: {fileID: -4824941642191393376, guid: c1797a25beab8924885805980777dd56, type: 2} - value: {fileID: 4414991604218682516} + value: {fileID: 5972941309607553105} - key: {fileID: -4750574827767443630, guid: c1797a25beab8924885805980777dd56, type: 2} value: {fileID: 1645380337361164335} - key: {fileID: -4824941642191393376, guid: 1f7ab546215e197408d725a0cc0a402b, type: 2} - value: {fileID: 4414991604218682516} + value: {fileID: 5972941309607553105} - key: {fileID: -4750574827767443630, guid: 1f7ab546215e197408d725a0cc0a402b, type: 2} value: {fileID: 1645380337361164335} - key: {fileID: -4824941642191393376, guid: 0128bf6357f2af44f8acf1142582b387, type: 2} - value: {fileID: 4414991604218682516} + value: {fileID: 5972941309607553105} - key: {fileID: -4750574827767443630, guid: 0128bf6357f2af44f8acf1142582b387, type: 2} value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 899348e4425bd484eb628373234b4f71, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 899348e4425bd484eb628373234b4f71, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: b4fdf3bb1c5f695409a5d8c0bbaf4096, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: b4fdf3bb1c5f695409a5d8c0bbaf4096, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 2ad30960da23d6040a36cb98ecd360db, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: 95ece9de13dfc4e4ea17ace1210e55c4, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 95ece9de13dfc4e4ea17ace1210e55c4, type: 2} + value: {fileID: 1645380337361164332} + - key: {fileID: -4824941642191393376, guid: cbd9b381c4833e84a99a277d1235e1f9, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: 2166d9f4e3e9bac468f6b5e05930c960, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: 47a64edc9a09a3d41b5b399b240429f5, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: 37819ba1ff5089742b135f4b72d20cb8, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 2166d9f4e3e9bac468f6b5e05930c960, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 1c56e66a1df59614383a8ea99af21081, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 1c56e66a1df59614383a8ea99af21081, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: 2359698281133013487, guid: e4774a4e814dded49a1ec154b070dd3d, type: 2} + value: {fileID: 1645380337361164332} + - key: {fileID: -4824941642191393376, guid: 8132180b67c90a04c89a4dfcc47f81f9, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: dd907a25a9bbb4e4780e7978cce9c563, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: dd907a25a9bbb4e4780e7978cce9c563, type: 2} + value: {fileID: 1645380337361164332} + - key: {fileID: -4750574827767443630, guid: 47a64edc9a09a3d41b5b399b240429f5, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 50230db49392e40499149400a6ba78ff, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: 0fd49ab2c32aa8b4f886a27c50b73f16, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 0fd49ab2c32aa8b4f886a27c50b73f16, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: cb612123857f6dc47b0327579da25e21, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: cb612123857f6dc47b0327579da25e21, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4750574827767443630, guid: 37819ba1ff5089742b135f4b72d20cb8, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 42e049f942c7bc04b9e7d395b15a9ad1, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: 51308188dfa96944faef8ae37d60ea02, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 51308188dfa96944faef8ae37d60ea02, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 895917f71b12b794192cda655b88217b, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 895917f71b12b794192cda655b88217b, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 8e366474e9fd2bd42a7661307d935cd3, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 8e366474e9fd2bd42a7661307d935cd3, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 544938a934225cf448b76af7c572a2f3, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 544938a934225cf448b76af7c572a2f3, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 8c472f6e0ed27cd45addb45f00d6c788, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: 62f6095336b87bf4a93ca9901ab53233, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: b65e4ec147ab2134f8ad52d3a91ad313, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: b65e4ec147ab2134f8ad52d3a91ad313, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 7dfa5fc4cae7b62408228b258dfb5346, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 7dfa5fc4cae7b62408228b258dfb5346, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: ce09ca15178b2d5478795a7c1f07a287, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: ce09ca15178b2d5478795a7c1f07a287, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 98fbd83b274acb54290f3d37208dcf6c, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: a9492c485ac8503429674915ee6af7c7, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: a9492c485ac8503429674915ee6af7c7, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: 48cb30e951464fc48b8063da5ae03a3e, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4824941642191393376, guid: 111e8e38a88ff1445aba8a8e93a57fea, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: 111e8e38a88ff1445aba8a8e93a57fea, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: e075c33d2edd27c48ae464cbd2f58a91, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -7619024407622571647, guid: e075c33d2edd27c48ae464cbd2f58a91, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: fa40f111af711094f8bd663fa08f347a, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: fa40f111af711094f8bd663fa08f347a, type: 2} + value: {fileID: 1645380337361164335} + - key: {fileID: -4824941642191393376, guid: b44bca40ccb636845a168b33854dc048, type: 2} + value: {fileID: 5972941309607553105} + - key: {fileID: -4750574827767443630, guid: b44bca40ccb636845a168b33854dc048, type: 2} + value: {fileID: 1645380337361164335} m_ExposedReferences: m_References: [] --- !u!212 &89448210413526911 @@ -1505,7 +1613,7 @@ MonoBehaviour: m_GameObject: {fileID: 1645380337361164332} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 497a2da397c94e80b40f631cceb6ccb1, type: 3} + m_Script: {fileID: 11500000, guid: d6f2f4791795420b89bb26f9116aec55, type: 3} m_Name: m_EditorClassIdentifier: --- !u!4 &1645380337361164335 diff --git a/client/Assets/Game/Scripts/MonoScript/Timeline.meta b/client/Assets/Game/Scripts/MonoScript/Timeline.meta new file mode 100644 index 0000000..4488713 --- /dev/null +++ b/client/Assets/Game/Scripts/MonoScript/Timeline.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5497945af92748cf896f231a1b0a9580 +timeCreated: 1685975499 \ No newline at end of file diff --git a/client/Assets/Game/Scripts/MonoScript/Timeline/TimelineTool.cs b/client/Assets/Game/Scripts/MonoScript/Timeline/TimelineTool.cs new file mode 100644 index 0000000..48972d6 --- /dev/null +++ b/client/Assets/Game/Scripts/MonoScript/Timeline/TimelineTool.cs @@ -0,0 +1,50 @@ +using UnityEditor; +using UnityEditor.Timeline; +using UnityEngine; +using UnityEngine.Playables; +using UnityEngine.Timeline; + +[ExecuteInEditMode] +public class TimelineTool : MonoBehaviour +{ + private PlayableDirector PlayableDirector; + private GameObject animator; + + private void OnEnable() + { + PlayableDirector = GetComponent(); + animator = GetComponentInChildren().gameObject; + Selection.selectionChanged += OnSelectionChanged; + } + + private void OnDisable() + { + Selection.selectionChanged -= OnSelectionChanged; + } + + private void OnSelectionChanged() + { + var selectedObject = UnityEditor.Selection.activeObject; + + if (selectedObject == null) return; + if (selectedObject.GetType() != typeof(TimelineAsset)) return; + // 打印选定对象的名称 + var timeline = (TimelineAsset)selectedObject; + PlayableDirector.playableAsset = timeline; + foreach (var track in timeline.GetOutputTracks()) + { + if (track is AnimationTrack) + { + PlayableDirector.SetGenericBinding(track, animator); + } + + if (track is AttackTrack) + { + PlayableDirector.SetGenericBinding(track, transform); + } + } + + EditorApplication.delayCall += () => { Selection.activeGameObject = gameObject; }; + TimelineEditor.GetOrCreateWindow().ShowTab(); + } +} \ No newline at end of file diff --git a/client/Assets/Game/Scripts/MonoScript/Timeline/TimelineTool.cs.meta b/client/Assets/Game/Scripts/MonoScript/Timeline/TimelineTool.cs.meta new file mode 100644 index 0000000..785a851 --- /dev/null +++ b/client/Assets/Game/Scripts/MonoScript/Timeline/TimelineTool.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: d6f2f4791795420b89bb26f9116aec55 +timeCreated: 1685975505 \ No newline at end of file