summaryrefslogtreecommitdiff
path: root/Assets/Scripts
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts')
-rw-r--r--Assets/Scripts/Curve3D.meta8
-rw-r--r--Assets/Scripts/Drone.meta8
-rw-r--r--Assets/Scripts/Props.meta8
-rw-r--r--Assets/Scripts/Robot.meta8
-rw-r--r--Assets/Scripts/Scene.meta8
-rw-r--r--Assets/Scripts/Unit/AnimationData.cs48
-rw-r--r--Assets/Scripts/Unit/TimelineEventProxy.cs1
7 files changed, 84 insertions, 5 deletions
diff --git a/Assets/Scripts/Curve3D.meta b/Assets/Scripts/Curve3D.meta
new file mode 100644
index 00000000..fef1c5e7
--- /dev/null
+++ b/Assets/Scripts/Curve3D.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: ad8b718b6b700d8419838dad07158567
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Drone.meta b/Assets/Scripts/Drone.meta
new file mode 100644
index 00000000..694cff70
--- /dev/null
+++ b/Assets/Scripts/Drone.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: ec3412151f8a72a41b2ed21316763399
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Props.meta b/Assets/Scripts/Props.meta
new file mode 100644
index 00000000..bb96602e
--- /dev/null
+++ b/Assets/Scripts/Props.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f299520ed9fcf4a45858ad4ef5a8d5d1
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Robot.meta b/Assets/Scripts/Robot.meta
new file mode 100644
index 00000000..0b5a087e
--- /dev/null
+++ b/Assets/Scripts/Robot.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7c09ca1609552d24bbe697d1516f8aa9
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Scene.meta b/Assets/Scripts/Scene.meta
new file mode 100644
index 00000000..eb7a8716
--- /dev/null
+++ b/Assets/Scripts/Scene.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: eaee2d0f48cff9b40baf0686a8105600
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Unit/AnimationData.cs b/Assets/Scripts/Unit/AnimationData.cs
index 4114966c..80891d83 100644
--- a/Assets/Scripts/Unit/AnimationData.cs
+++ b/Assets/Scripts/Unit/AnimationData.cs
@@ -76,14 +76,24 @@ public enum EAnimationParameter
[Serializable]
public class ParameterDictionary : SerializableDictionary<EAnimationParameter, AnimationParameter> { }
+[Serializable]
public class RootMotionOverrideData
{
- public class PosData
+ [Serializable]
+ public class PosData
{
- Vector3 position;
- float frame;
+ [SerializeField] Vector3 position;
+ [SerializeField] float frame;
}
- List<PosData> positions;
+ [SerializeField] public List<PosData> positions;
+ public RootMotionOverrideData()
+ {
+ positions = new List<PosData>();
+ }
+ public Vector3 GetPosition(float frame)
+ {
+ return Vector3.zero;
+ }
}
// 某个动画的数据,包括帧事件、碰撞盒、速度曲线
@@ -334,6 +344,28 @@ public class AnimationData : ScriptableObject
return events;
}
+ public int GetMaxAnimationEventsCount()
+ {
+ List<int> frames = GetAnimationEventFrameIndices();
+ if(frames == null)
+ {
+ ListPool<int>.Release(frames);
+ return 0;
+ }
+ int count = 0;
+ for(int i = 0; i < frames.Count; ++i)
+ {
+ List<AnimationEventBase> events = GetAnimationEventsAtFrame(frames[i]);
+ if (count < events.Count)
+ {
+ count = events.Count;
+ }
+ ListPool<AnimationEventBase>.Release(events);
+ }
+ ListPool<int>.Release(frames);
+ return count;
+ }
+
public List<int> GetAnimationEventFrameIndices()
{
if (animationEvents == null)
@@ -359,7 +391,15 @@ public class AnimationData : ScriptableObject
}
}
+ public void AddRootMotionOverriderData( )
+ {
+ this.overrideRootMotion = new RootMotionOverrideData();
+ }
+ public void DeleteRootMotionOverrideData()
+ {
+ this.overrideRootMotion = null;
+ }
#if UNITY_EDITOR
public void OnSaveToDisk()
diff --git a/Assets/Scripts/Unit/TimelineEventProxy.cs b/Assets/Scripts/Unit/TimelineEventProxy.cs
index 4a71400c..7d2231c6 100644
--- a/Assets/Scripts/Unit/TimelineEventProxy.cs
+++ b/Assets/Scripts/Unit/TimelineEventProxy.cs
@@ -73,7 +73,6 @@ public partial class TimelineEventProxy
EventBulletTime, // 子弹时间
}
- public const int kMaxEventsPerFrame = 10;
public const int FPS = 30; // timeline 每秒采样30次
private int m_PrevFrame = -1;