fix(timeline-kit): 修复 Timeline 重复播放无法从头开始
This commit is contained in:
@@ -1,175 +0,0 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &110333134186518973
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 4484639372422530251}
|
||||
- component: {fileID: 2061319565109939302}
|
||||
- component: {fileID: 4974988147973287594}
|
||||
- component: {fileID: 8024805593218196570}
|
||||
- component: {fileID: 7450747883882295617}
|
||||
m_Layer: 0
|
||||
m_Name: "\u8C03\u9152\u8499\u592A\u5947"
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &4484639372422530251
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 110333134186518973}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1776037001249689229}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!212 &2061319565109939302
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 110333134186518973}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 315200563
|
||||
m_SortingLayer: 16
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 13.348837, y: 3.5348837}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 0
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!95 &4974988147973287594
|
||||
Animator:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 110333134186518973}
|
||||
m_Enabled: 1
|
||||
m_Avatar: {fileID: 0}
|
||||
m_Controller: {fileID: 0}
|
||||
m_CullingMode: 0
|
||||
m_UpdateMode: 0
|
||||
m_ApplyRootMotion: 0
|
||||
m_LinearVelocityBlending: 0
|
||||
m_StabilizeFeet: 0
|
||||
m_WarningMessage:
|
||||
m_HasTransformHierarchy: 1
|
||||
m_AllowConstantClipSamplingOptimization: 1
|
||||
m_KeepAnimatorStateOnDisable: 0
|
||||
m_WriteDefaultValuesOnDisable: 0
|
||||
--- !u!320 &8024805593218196570
|
||||
PlayableDirector:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 110333134186518973}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 3
|
||||
m_PlayableAsset: {fileID: 11400000, guid: 2d9baefeca916a942ab57a6714f7dc9e, type: 2}
|
||||
m_InitialState: 0
|
||||
m_WrapMode: 2
|
||||
m_DirectorUpdateMode: 1
|
||||
m_InitialTime: 0
|
||||
m_SceneBindings:
|
||||
- key: {fileID: 8951948241001910536, guid: 2d9baefeca916a942ab57a6714f7dc9e, type: 2}
|
||||
value: {fileID: 4974988147973287594}
|
||||
m_ExposedReferences:
|
||||
m_References: []
|
||||
--- !u!114 &7450747883882295617
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 110333134186518973}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 07d657d6b80509b4eb04f59afaa9aa2d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
timelineName: "\u8C03\u9152\u8499\u592A\u5947"
|
||||
director: {fileID: 8024805593218196570}
|
||||
--- !u!1 &7609156256298449229
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1776037001249689229}
|
||||
m_Layer: 0
|
||||
m_Name: "Timeline\u7BA1\u7406\u5668"
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &1776037001249689229
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7609156256298449229}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 4484639372422530251}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
@@ -1,7 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4b35a149a0fc9214faaf88701fde8c77
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,4 +1,4 @@
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using Cinemachine;
|
||||
using UnityEngine;
|
||||
@@ -217,16 +217,14 @@ namespace AibisDream
|
||||
return;
|
||||
}
|
||||
|
||||
// 先停止再播放
|
||||
// 先停止、回到起点再播放(保证同一 Timeline 可重复从头播放)
|
||||
CancelPendingResetToStartCoroutine();
|
||||
director.stopped -= OnDirectorStopped;
|
||||
if (director.state == PlayState.Playing)
|
||||
{
|
||||
director.Stop();
|
||||
}
|
||||
|
||||
director.Stop();
|
||||
ApplyPlaybackTimeZero();
|
||||
|
||||
_onCompleteCallback = onComplete;
|
||||
|
||||
|
||||
if (ShouldSubscribeStopped(onComplete))
|
||||
{
|
||||
director.stopped += OnDirectorStopped;
|
||||
@@ -235,6 +233,7 @@ namespace AibisDream
|
||||
// 自动绑定 CinemachineBrain
|
||||
AutoBindCinemachineBrain();
|
||||
|
||||
Debug.Log($"DirectorHandler {timelineName}: Play");
|
||||
director.Play();
|
||||
}
|
||||
|
||||
@@ -251,10 +250,8 @@ namespace AibisDream
|
||||
|
||||
CancelPendingResetToStartCoroutine();
|
||||
director.stopped -= OnDirectorStopped;
|
||||
if (director.state == PlayState.Playing)
|
||||
{
|
||||
director.Stop();
|
||||
}
|
||||
director.Stop();
|
||||
ApplyPlaybackTimeZero();
|
||||
|
||||
if (ShouldSubscribeStopped(null))
|
||||
{
|
||||
@@ -264,6 +261,7 @@ namespace AibisDream
|
||||
// 自动绑定 CinemachineBrain
|
||||
AutoBindCinemachineBrain();
|
||||
|
||||
Debug.Log($"DirectorHandler {timelineName}: Play");
|
||||
director.Play();
|
||||
|
||||
// 等待播放完成
|
||||
@@ -329,10 +327,7 @@ namespace AibisDream
|
||||
|
||||
CancelPendingResetToStartCoroutine();
|
||||
director.stopped -= OnDirectorStopped;
|
||||
if (director.state == PlayState.Playing)
|
||||
{
|
||||
director.Stop();
|
||||
}
|
||||
director.Stop();
|
||||
|
||||
_savedPlayableAsset = director.playableAsset;
|
||||
director.playableAsset = loadedAsset;
|
||||
@@ -341,7 +336,9 @@ namespace AibisDream
|
||||
|
||||
// 自动绑定 CinemachineBrain(必须在 RebuildGraph 之后)
|
||||
AutoBindCinemachineBrain();
|
||||
|
||||
|
||||
ApplyPlaybackTimeZero();
|
||||
|
||||
_addressableHandle = loadedHandle;
|
||||
|
||||
_onCompleteCallback = onComplete;
|
||||
|
||||
Reference in New Issue
Block a user