summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Assets/Art/Models/Characters/Default.meta (renamed from Assets/Bundle/Unit/PC/Erika/Weapons/Materials.meta)2
-rw-r--r--Assets/Art/Models/Characters/Erika2.meta (renamed from Assets/Data/RootMotionData.meta)2
-rw-r--r--Assets/Art/Vfx/GrabSquaresEffect/AbstractWiresEffect/Scripts.meta8
-rw-r--r--Assets/Art/Vfx/GrabSquaresEffect/Scripts.meta8
-rw-r--r--Assets/Art/Vfx/GrabSquaresEffect/Shaders.meta8
-rw-r--r--Assets/Bundle/Materials/Unit/Effect.meta (renamed from Assets/Bundle/Unit/PC/Erika/Materials/Effect.meta)2
-rw-r--r--Assets/Bundle/Models.meta8
-rw-r--r--Assets/Bundle/Prefabs.meta8
-rw-r--r--Assets/Bundle/Scenes/Demo/AnimationEditScene.unity14
-rw-r--r--Assets/Bundle/Shaders/Unit/Effect.meta8
-rw-r--r--Assets/Bundle/Shaders/Unit/ImageEffect/unit_img_glitch.shader13
-rw-r--r--Assets/Bundle/UI.meta8
-rw-r--r--Assets/Bundle/Unit/Monster/Robots_Prowler/ActionData.meta8
-rw-r--r--Assets/Bundle/Unit/Monster/Robots_Prowler/UnitData.meta8
-rw-r--r--Assets/Bundle/Unit/NPC.meta8
-rw-r--r--Assets/Bundle/Unit/PC/Erika/AnimationData/Air_Combo03_Z0_1.asset20
-rw-r--r--Assets/Bundle/Unit/PC/Erika/Materials/Normal.meta8
-rw-r--r--Assets/Bundle/Unit/PC/Erika/Models.meta8
-rw-r--r--Assets/Bundle/Unit/PC/Erika/Prefabs/Erika_Robot.prefab6
-rw-r--r--Assets/Bundle/Unit/PC/Erika/UnitData.meta8
-rw-r--r--Assets/Bundle/Unit/PC/ErikaCyborg/ActionData.meta8
-rw-r--r--Assets/Bundle/Unit/PC/ErikaCyborg/AnimationClip.meta8
-rw-r--r--Assets/Bundle/Unit/PC/ErikaCyborg/AnimationData.meta8
-rw-r--r--Assets/Bundle/Unit/PC/ErikaCyborg/Materials/AfterImage.meta8
-rw-r--r--Assets/Bundle/Unit/PC/ErikaCyborg/Materials/Normal.meta8
-rw-r--r--Assets/Bundle/Unit/PC/ErikaCyborg/Models.meta8
-rw-r--r--Assets/Bundle/Unit/PC/ErikaCyborg/RootMotion.meta8
-rw-r--r--Assets/Bundle/Unit/PC/ErikaCyborg/UnitData.meta8
-rw-r--r--Assets/Bundle/Unit/PC/ErikaCyborg/Weapons.meta8
-rw-r--r--Assets/Bundle/Unit/Prop.meta8
-rw-r--r--Assets/Scripts/Curve3D.meta8
-rw-r--r--Assets/Scripts/Drone.meta8
-rw-r--r--Assets/Scripts/Managers/SceneManager.cs7
-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/Scene/MainCamera.cs29
-rw-r--r--Assets/Scripts/Scene/MainCamera.cs.meta (renamed from Assets/Scripts/Test 1/TestCamera.cs.meta)2
-rw-r--r--Assets/Scripts/Test 1/TestCamera.cs28
-rw-r--r--Assets/Scripts/Unit/AI/Actions.meta8
-rw-r--r--Assets/Scripts/Unit/AI/Conditionals.meta8
-rw-r--r--Assets/Scripts/Unit/Components/UnitComponent.cs4
-rw-r--r--Assets/Scripts/Unit/Components/UnitImageEffect.cs36
-rw-r--r--Assets/Scripts/Unit/Components/UnitRender.cs35
-rw-r--r--Assets/Scripts/Unit/Components/UnitState/PCState.cs2
-rw-r--r--Assets/Scripts/Unit/Controller/MonsterController.cs8
-rw-r--r--Assets/Scripts/Unit/Controller/PCController.cs13
-rw-r--r--Assets/Scripts/Unit/Controller/UnitController.cs48
-rw-r--r--Assets/Scripts/Unit/Effect/UnitCamera.cs33
-rw-r--r--Assets/Scripts/Unit/Events/EventMesh_ImageEffect_MotionBlur.cs3
-rw-r--r--Assets/Scripts/Unit/UnitDetail.cs82
-rw-r--r--Assets/Tools/ActionTool/Editor/ActionPreviewEditor.cs4
-rw-r--r--Documents/渲染.xlsxbin974488 -> 974553 bytes
53 files changed, 512 insertions, 121 deletions
diff --git a/Assets/Bundle/Unit/PC/Erika/Weapons/Materials.meta b/Assets/Art/Models/Characters/Default.meta
index be6badd6..43499fc7 100644
--- a/Assets/Bundle/Unit/PC/Erika/Weapons/Materials.meta
+++ b/Assets/Art/Models/Characters/Default.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 2c46a5a23283c7d428ae8bb13663ab6a
+guid: e8a40298dd4efd14c9f90a63734ca39b
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/Data/RootMotionData.meta b/Assets/Art/Models/Characters/Erika2.meta
index 14abf402..fd7369d9 100644
--- a/Assets/Data/RootMotionData.meta
+++ b/Assets/Art/Models/Characters/Erika2.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 5cfee9bde9754254f83510f88dd2a19b
+guid: 077f81003f9fc564791cce182048c2b0
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/Art/Vfx/GrabSquaresEffect/AbstractWiresEffect/Scripts.meta b/Assets/Art/Vfx/GrabSquaresEffect/AbstractWiresEffect/Scripts.meta
new file mode 100644
index 00000000..b76e98a5
--- /dev/null
+++ b/Assets/Art/Vfx/GrabSquaresEffect/AbstractWiresEffect/Scripts.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 20381b3eecfbfe34a9d9222868969d29
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Art/Vfx/GrabSquaresEffect/Scripts.meta b/Assets/Art/Vfx/GrabSquaresEffect/Scripts.meta
new file mode 100644
index 00000000..41200932
--- /dev/null
+++ b/Assets/Art/Vfx/GrabSquaresEffect/Scripts.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: abff7cb61c760094f8ab9437379e0f2c
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Art/Vfx/GrabSquaresEffect/Shaders.meta b/Assets/Art/Vfx/GrabSquaresEffect/Shaders.meta
new file mode 100644
index 00000000..fa9e76cd
--- /dev/null
+++ b/Assets/Art/Vfx/GrabSquaresEffect/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e38cb65072bb4a64cbe162792de9bec2
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/Erika/Materials/Effect.meta b/Assets/Bundle/Materials/Unit/Effect.meta
index 855459bb..fdf8c1db 100644
--- a/Assets/Bundle/Unit/PC/Erika/Materials/Effect.meta
+++ b/Assets/Bundle/Materials/Unit/Effect.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 3ab09dc0a18f20b4ea29507887e11428
+guid: 0525fec1eb7cc94458170e9e106955d5
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/Bundle/Models.meta b/Assets/Bundle/Models.meta
new file mode 100644
index 00000000..c9b5bf44
--- /dev/null
+++ b/Assets/Bundle/Models.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: adab1ca5f61452c4c90f19e7c11adf0e
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Prefabs.meta b/Assets/Bundle/Prefabs.meta
new file mode 100644
index 00000000..82588fb1
--- /dev/null
+++ b/Assets/Bundle/Prefabs.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: dac6442cad7539149a7527510665d510
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Scenes/Demo/AnimationEditScene.unity b/Assets/Bundle/Scenes/Demo/AnimationEditScene.unity
index bce02def..efcb5238 100644
--- a/Assets/Bundle/Scenes/Demo/AnimationEditScene.unity
+++ b/Assets/Bundle/Scenes/Demo/AnimationEditScene.unity
@@ -38,7 +38,7 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
- m_IndirectSpecularColor: {r: 0.18028334, g: 0.22571328, b: 0.3069217, a: 1}
+ m_IndirectSpecularColor: {r: 0.18028378, g: 0.22571412, b: 0.30692285, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
@@ -62383,7 +62383,7 @@ Camera:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 687023027}
- m_Enabled: 1
+ m_Enabled: 0
serializedVersion: 2
m_ClearFlags: 2
m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0}
@@ -62403,7 +62403,7 @@ Camera:
field of view: 60
orthographic: 0
orthographic size: 5
- m_Depth: 0
+ m_Depth: 1
m_CullingMask:
serializedVersion: 2
m_Bits: 512
@@ -67384,7 +67384,7 @@ GameObject:
- component: {fileID: 861741899}
- component: {fileID: 861741898}
- component: {fileID: 861741901}
- - component: {fileID: 861741902}
+ - component: {fileID: 861741903}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
@@ -67516,7 +67516,7 @@ MonoBehaviour:
m_BeforeTransparentBundles: []
m_BeforeStackBundles: []
m_AfterStackBundles: []
---- !u!114 &861741902
+--- !u!114 &861741903
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -67525,10 +67525,10 @@ MonoBehaviour:
m_GameObject: {fileID: 861741897}
m_Enabled: 1
m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 43084247c2f8b3743845be21c5d86ab5, type: 3}
+ m_Script: {fileID: 11500000, guid: 68da209687f0dcc49967a423b26c204c, type: 3}
m_Name:
m_EditorClassIdentifier:
- offset: {x: 0, y: 1.5, z: 0}
+ offset: {x: 0, y: 1.2, z: 0}
--- !u!1 &998301198
GameObject:
m_ObjectHideFlags: 0
diff --git a/Assets/Bundle/Shaders/Unit/Effect.meta b/Assets/Bundle/Shaders/Unit/Effect.meta
new file mode 100644
index 00000000..7df9a033
--- /dev/null
+++ b/Assets/Bundle/Shaders/Unit/Effect.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 9cc4684b9f432f149b16a51f148c9490
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Shaders/Unit/ImageEffect/unit_img_glitch.shader b/Assets/Bundle/Shaders/Unit/ImageEffect/unit_img_glitch.shader
index 62f75459..014d8c52 100644
--- a/Assets/Bundle/Shaders/Unit/ImageEffect/unit_img_glitch.shader
+++ b/Assets/Bundle/Shaders/Unit/ImageEffect/unit_img_glitch.shader
@@ -47,12 +47,15 @@
fixed4 frag (v2f i) : SV_Target
{
- float amount = 0.01;
+ float amount = 0.05f;
// sample the texture
- fixed4 col = tex2D(_MainTex, i.uv + fixed2(0, 0));
- fixed4 col2 = tex2D(_MainTex, i.uv + fixed2(amount, 0));
- fixed4 col3 = tex2D(_MainTex, i.uv + fixed2(-amount, 0));
- fixed4 col4 = tex2D(_MainTex, i.uv + fixed2(0, 0));
+ float angle = 90;
+ float sinValue = sin(radians(angle));
+ float cosValue = cos(radians(angle));
+ fixed4 col = tex2D(_MainTex, i.uv);
+ fixed4 col2 = tex2D(_MainTex, i.uv + fixed2(amount * sinValue, amount * cosValue));
+ fixed4 col3 = tex2D(_MainTex, i.uv + fixed2(2 * amount * sinValue, 2 * amount * cosValue));
+ fixed4 col4 = ( col.a + col2.a + col3.a ) / 3;
fixed4 color = fixed4(col.r, col2.g, col3.b, col4.a);
return color;
}
diff --git a/Assets/Bundle/UI.meta b/Assets/Bundle/UI.meta
new file mode 100644
index 00000000..0914914c
--- /dev/null
+++ b/Assets/Bundle/UI.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 4392471259b05a74a82a4bc72b510eb1
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/Monster/Robots_Prowler/ActionData.meta b/Assets/Bundle/Unit/Monster/Robots_Prowler/ActionData.meta
new file mode 100644
index 00000000..ca7266b0
--- /dev/null
+++ b/Assets/Bundle/Unit/Monster/Robots_Prowler/ActionData.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: a1d7b6e0d8fb1a642a65011fb6cd7d89
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/Monster/Robots_Prowler/UnitData.meta b/Assets/Bundle/Unit/Monster/Robots_Prowler/UnitData.meta
new file mode 100644
index 00000000..142f5872
--- /dev/null
+++ b/Assets/Bundle/Unit/Monster/Robots_Prowler/UnitData.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 6ad7401709700f34db2b795830937d76
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/NPC.meta b/Assets/Bundle/Unit/NPC.meta
new file mode 100644
index 00000000..eeea13e1
--- /dev/null
+++ b/Assets/Bundle/Unit/NPC.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 8ced034d375cdfa488814663ea17a79b
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/Erika/AnimationData/Air_Combo03_Z0_1.asset b/Assets/Bundle/Unit/PC/Erika/AnimationData/Air_Combo03_Z0_1.asset
index 2e6c13c6..47959894 100644
--- a/Assets/Bundle/Unit/PC/Erika/AnimationData/Air_Combo03_Z0_1.asset
+++ b/Assets/Bundle/Unit/PC/Erika/AnimationData/Air_Combo03_Z0_1.asset
@@ -18,7 +18,8 @@ MonoBehaviour:
animationEvents:
- {fileID: 114581710045323768}
- {fileID: 114435450776992514}
- - {fileID: 114721479198979772}
+ - {fileID: 0}
+ - {fileID: 114095509392824086}
hurtBoxes: []
hitBoxes:
- collider:
@@ -125,6 +126,23 @@ MonoBehaviour:
m_keys: 01000000
m_values:
- 0.1
+--- !u!114 &114095509392824086
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: a75401f0015aa1e4f856979c8aa1dae2, type: 3}
+ m_Name: EventMesh_ImageEffect_MotionBlur
+ m_EditorClassIdentifier:
+ startFrame: 6
+ lifeTime: 0.35
+ angle: 0
+ distance: 0
+ hideUnitInMainCamera: 1
--- !u!114 &114435450776992514
MonoBehaviour:
m_ObjectHideFlags: 0
diff --git a/Assets/Bundle/Unit/PC/Erika/Materials/Normal.meta b/Assets/Bundle/Unit/PC/Erika/Materials/Normal.meta
new file mode 100644
index 00000000..8c41a6b2
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/Erika/Materials/Normal.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 5dc1b71affc68b54594096a1b96a5c00
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/Erika/Models.meta b/Assets/Bundle/Unit/PC/Erika/Models.meta
new file mode 100644
index 00000000..11148d17
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/Erika/Models.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 0d712421d808a43438a43d8a5d34effe
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/Erika/Prefabs/Erika_Robot.prefab b/Assets/Bundle/Unit/PC/Erika/Prefabs/Erika_Robot.prefab
index 40013062..e6332658 100644
--- a/Assets/Bundle/Unit/PC/Erika/Prefabs/Erika_Robot.prefab
+++ b/Assets/Bundle/Unit/PC/Erika/Prefabs/Erika_Robot.prefab
@@ -714,6 +714,12 @@ MonoBehaviour:
- {fileID: 0}
- {fileID: 0}
snapshotBound: 5
+ mainRenderer:
+ tag: 0
+ renderer: {fileID: 7046772783541976850}
+ renderers:
+ - tag: 0
+ renderer: {fileID: 7046772783541976850}
--- !u!1 &6928056367075676882
GameObject:
m_ObjectHideFlags: 0
diff --git a/Assets/Bundle/Unit/PC/Erika/UnitData.meta b/Assets/Bundle/Unit/PC/Erika/UnitData.meta
new file mode 100644
index 00000000..7d4b13eb
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/Erika/UnitData.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 922befa8a94692845b88500a23229d7f
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/ErikaCyborg/ActionData.meta b/Assets/Bundle/Unit/PC/ErikaCyborg/ActionData.meta
new file mode 100644
index 00000000..f5434a00
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/ErikaCyborg/ActionData.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 07c3b2bf6cb8cc2498422bbb105cbad8
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationClip.meta b/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationClip.meta
new file mode 100644
index 00000000..4ed2c938
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationClip.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 827d77abe87680a47ae2d71a9e953a18
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationData.meta b/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationData.meta
new file mode 100644
index 00000000..43a52cd1
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationData.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7a2b72fbb41383047ac45e6c22ea9663
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/AfterImage.meta b/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/AfterImage.meta
new file mode 100644
index 00000000..85d58a8c
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/AfterImage.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b2b0838fb0603964e99904eefe81ad7f
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/Normal.meta b/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/Normal.meta
new file mode 100644
index 00000000..dd867045
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/Normal.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 1c8a678ea9e801f439a1003d04f33cf5
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/ErikaCyborg/Models.meta b/Assets/Bundle/Unit/PC/ErikaCyborg/Models.meta
new file mode 100644
index 00000000..dc530723
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/ErikaCyborg/Models.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: ebf636c7cf7b1934b885298ce1f5f42e
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/ErikaCyborg/RootMotion.meta b/Assets/Bundle/Unit/PC/ErikaCyborg/RootMotion.meta
new file mode 100644
index 00000000..b28b6f04
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/ErikaCyborg/RootMotion.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 2022e8298d3a8624992143eb57c0f8ac
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/ErikaCyborg/UnitData.meta b/Assets/Bundle/Unit/PC/ErikaCyborg/UnitData.meta
new file mode 100644
index 00000000..eeca0d3b
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/ErikaCyborg/UnitData.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f6aa859c834c51f498ef0b3c3b83a0f5
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/PC/ErikaCyborg/Weapons.meta b/Assets/Bundle/Unit/PC/ErikaCyborg/Weapons.meta
new file mode 100644
index 00000000..7f91da28
--- /dev/null
+++ b/Assets/Bundle/Unit/PC/ErikaCyborg/Weapons.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: df69962f5b01e444a8bea87e31c7d0a4
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Bundle/Unit/Prop.meta b/Assets/Bundle/Unit/Prop.meta
new file mode 100644
index 00000000..affd6eed
--- /dev/null
+++ b/Assets/Bundle/Unit/Prop.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: dafc173db1ebeab4c80641cc3d4fa528
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
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/Managers/SceneManager.cs b/Assets/Scripts/Managers/SceneManager.cs
index c986a1b1..182b662d 100644
--- a/Assets/Scripts/Managers/SceneManager.cs
+++ b/Assets/Scripts/Managers/SceneManager.cs
@@ -5,11 +5,6 @@ using UnityEngine;
public class SceneManager : Singleton<SceneManager>
{
- public Camera mainCamera { get; private set; }
-
- public void SetMainCamera(Camera cam)
- {
- mainCamera = cam;
- }
+ public Camera mainCamera { get { return MainCamera.Instance.camera; } }
}
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/Scene/MainCamera.cs b/Assets/Scripts/Scene/MainCamera.cs
new file mode 100644
index 00000000..45399ceb
--- /dev/null
+++ b/Assets/Scripts/Scene/MainCamera.cs
@@ -0,0 +1,29 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class MainCamera : SingletonMB<MainCamera>
+{
+ public new Camera camera { get; private set; }
+
+ public Vector3 offset = Vector3.zero;
+
+ protected override void Awake()
+ {
+ base.Awake();
+ camera = gameObject.GetComponent<Camera>();
+ }
+
+ void Update()
+ {
+ if (TestErika.Instance.erika.unitController == null)
+ {
+ return;
+ }
+ Vector3 pos = transform.position;
+ pos.x = TestErika.Instance.erika.unitController.transform.position.x;
+ pos.y = TestErika.Instance.erika.unitController.transform.position.y;
+ transform.position = pos + offset;
+ }
+
+} \ No newline at end of file
diff --git a/Assets/Scripts/Test 1/TestCamera.cs.meta b/Assets/Scripts/Scene/MainCamera.cs.meta
index 82135dff..1ad6678e 100644
--- a/Assets/Scripts/Test 1/TestCamera.cs.meta
+++ b/Assets/Scripts/Scene/MainCamera.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 43084247c2f8b3743845be21c5d86ab5
+guid: 68da209687f0dcc49967a423b26c204c
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/Scripts/Test 1/TestCamera.cs b/Assets/Scripts/Test 1/TestCamera.cs
deleted file mode 100644
index 8e4ba89e..00000000
--- a/Assets/Scripts/Test 1/TestCamera.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-
-public class TestCamera : MonoBehaviour
-{
- public Vector3 offset = Vector3.zero;
-
- void Awake()
- {
- SceneManager.Instance.SetMainCamera(this.gameObject.GetComponent<Camera>());
- }
-
- // Update is called once per frame
- void Update()
- {
- if(TestErika.Instance.erika.unitController == null)
- {
- return;
- }
- Vector3 pos = transform.position;
- //pos.x = TestErika.Instance.erika.unitController.GetComponent<UnitController>().center.x;
- //pos.y = TestErika.Instance.erika.unitController.GetComponent<UnitController>().center.y;
- pos.x = TestErika.Instance.erika.unitController.transform.position.x;
- pos.y = TestErika.Instance.erika.unitController.transform.position.y;
- transform.position = pos + offset;
- }
-}
diff --git a/Assets/Scripts/Unit/AI/Actions.meta b/Assets/Scripts/Unit/AI/Actions.meta
new file mode 100644
index 00000000..9b4ad463
--- /dev/null
+++ b/Assets/Scripts/Unit/AI/Actions.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 971e9d55b8bc0894eb6a110fb962000b
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Unit/AI/Conditionals.meta b/Assets/Scripts/Unit/AI/Conditionals.meta
new file mode 100644
index 00000000..70a86da5
--- /dev/null
+++ b/Assets/Scripts/Unit/AI/Conditionals.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 85b7e0c7ed1d12f42a5178bfbf3d934c
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Unit/Components/UnitComponent.cs b/Assets/Scripts/Unit/Components/UnitComponent.cs
index a5034581..825b6d92 100644
--- a/Assets/Scripts/Unit/Components/UnitComponent.cs
+++ b/Assets/Scripts/Unit/Components/UnitComponent.cs
@@ -29,6 +29,10 @@ public class UnitComponent : MonoBehaviour
m_Owner = GetComponent<UnitController>();
}
+ public virtual void OnPostInitialize()
+ {
+ }
+
public virtual void Release()
{
m_Owner = null;
diff --git a/Assets/Scripts/Unit/Components/UnitImageEffect.cs b/Assets/Scripts/Unit/Components/UnitImageEffect.cs
index a2689ca1..8af48a3e 100644
--- a/Assets/Scripts/Unit/Components/UnitImageEffect.cs
+++ b/Assets/Scripts/Unit/Components/UnitImageEffect.cs
@@ -17,14 +17,17 @@ public class UnitImageEffectHolder
}
}
-public delegate void UnitImageEffectStepCallback(float normalizedTime);
-
public class UnitImageEffectHandle
{
- public float lifeTime;
+ public delegate void UnitImageEffectStepCallback(float normalizedTime);
+ public delegate void UnitImageEffectEndCallback();
+
+ public float lifeTime;
public float curTime;
public UnitImageEffectHolder holder;
+
public UnitImageEffectStepCallback stepFunc;
+ public UnitImageEffectEndCallback onStop;
}
//Unit后处理效果
@@ -49,6 +52,7 @@ public class UnitImageEffect : UnitComponent
if(handle.curTime > handle.lifeTime)
{
temp.Add(handle);
+ handle.onStop?.Invoke();
continue;
}
handle.stepFunc?.Invoke(handle.curTime / handle.lifeTime);
@@ -123,7 +127,6 @@ public class UnitImageEffect : UnitComponent
holder = null;
}
- #region effects
public void ShowMotionBlur(float lifeTime, float angle, float distance)
{
@@ -155,9 +158,11 @@ public class UnitImageEffect : UnitComponent
effects.Add(handle);
}
- public void ShowGlitch(float lifeTime)
+ public void ShowGlitch(float lifeTime, bool hideUnitInMainCamera = true)
{
- UnitImageEffectHandle handle = m_HandlePool.Get();
+ PCController pc = UnitManager.Instance.pc as PCController;
+
+ UnitImageEffectHandle handle = m_HandlePool.Get();
handle.lifeTime = lifeTime;
handle.curTime = 0;
@@ -171,18 +176,25 @@ public class UnitImageEffect : UnitComponent
handle.holder.renderer.GetPropertyBlock(block);
handle.holder.renderer.SetPropertyBlock(block);
- handle.stepFunc = (float normalTime) =>
- {
+ handle.stepFunc = (float normalTime) => {
+ UnitCamera.Instance.Render();
+
handle.holder.gameObject.transform.position = UnitManager.Instance.pc.center;
handle.holder.renderer.GetPropertyBlock(block);
handle.holder.renderer.SetPropertyBlock(block);
};
- effects.Add(handle);
- }
+ if (hideUnitInMainCamera)
+ {
+ pc.unitRender.SetVisibilityInAllCameras(false);
+ }
-
- #endregion
+ handle.onStop = () => {
+ pc.unitRender.SetVisibilityInAllCameras(true);
+ };
+
+ effects.Add(handle);
+ }
} \ No newline at end of file
diff --git a/Assets/Scripts/Unit/Components/UnitRender.cs b/Assets/Scripts/Unit/Components/UnitRender.cs
index 435c517d..d1ea0ffb 100644
--- a/Assets/Scripts/Unit/Components/UnitRender.cs
+++ b/Assets/Scripts/Unit/Components/UnitRender.cs
@@ -6,17 +6,33 @@ using UnityEngine;
[DisallowMultipleComponent]
public class UnitRender : UnitComponent
{
+ private IBodyRendererAgent m_Body;
+
+ public Renderer mainRenderer
+ {
+ get
+ {
+ if (this.owner.unitDetail == null)
+ return null;
+ return m_Body.mainRenderer.renderer;
+ }
+ }
public override void Initialize()
{
base.Initialize();
}
+ public override void OnPostInitialize()
+ {
+ base.OnPostInitialize();
+ m_Body = owner.unitDetail as IBodyRendererAgent;
+ }
+
public void SetVisibilityInMainCamera(bool isVisible)
{
LayerMask mask = LayerMask.GetMask("PlayerCharacter");
-
- if(!isVisible)
+ if (!isVisible)
{
SceneManager.Instance.mainCamera.cullingMask &= ~mask.value;
}
@@ -26,4 +42,19 @@ public class UnitRender : UnitComponent
}
}
+ public void SetVisibilityInAllCameras(bool isVisible)
+ {
+ if (mainRenderer == null)
+ return;
+
+ if (isVisible)
+ {
+ mainRenderer.shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.On;
+ }
+ else
+ {
+ mainRenderer.shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.ShadowsOnly;
+ }
+ }
+
}
diff --git a/Assets/Scripts/Unit/Components/UnitState/PCState.cs b/Assets/Scripts/Unit/Components/UnitState/PCState.cs
index eae1b370..060d6e91 100644
--- a/Assets/Scripts/Unit/Components/UnitState/PCState.cs
+++ b/Assets/Scripts/Unit/Components/UnitState/PCState.cs
@@ -82,7 +82,7 @@ public partial class PCState : UnitState
if(m_PrevState != m_State && owner.unitRender != null)
{
- owner.unitRender.SetVisibilityInMainCamera(true);
+ // owner.unitRender.SetVisibilityInMainCamera(true);
}
StartCoroutine(m_State.ToString(), param);
diff --git a/Assets/Scripts/Unit/Controller/MonsterController.cs b/Assets/Scripts/Unit/Controller/MonsterController.cs
index 03756211..22645b47 100644
--- a/Assets/Scripts/Unit/Controller/MonsterController.cs
+++ b/Assets/Scripts/Unit/Controller/MonsterController.cs
@@ -6,14 +6,14 @@ public class MonsterController : UnitController
{
public override UnitType type { get { return UnitType.Monster; } }
- public override void Initialize(GameObject obj, string folder)
+ protected override void Initialize()
{
- base.Initialize(obj, folder);
+ base.Initialize();
- unitState = gameObject.GetOrAddComponent<MonsterState>();
+ unitState = GetOrAddUnitComponent<MonsterState>();
unitState.Initialize();
- unitAnimation = gameObject.GetOrAddComponent<MonsterAnimation>();
+ unitAnimation = GetOrAddUnitComponent<MonsterAnimation>();
unitAnimation.Initialize();
}
diff --git a/Assets/Scripts/Unit/Controller/PCController.cs b/Assets/Scripts/Unit/Controller/PCController.cs
index ea07fc56..4c665e7a 100644
--- a/Assets/Scripts/Unit/Controller/PCController.cs
+++ b/Assets/Scripts/Unit/Controller/PCController.cs
@@ -19,22 +19,21 @@ public class PCController : UnitController
instance = this;
}
- public override void Initialize(GameObject obj, string folder)
+ protected override void Initialize()
{
- base.Initialize(obj, folder);
+ base.Initialize();
- unitState = gameObject.GetOrAddComponent<PCState>();
+ unitState = GetOrAddUnitComponent<PCState>();
unitState.Initialize();
- unitAnimation = gameObject.GetOrAddComponent<PCAnimation>();
+ unitAnimation = GetOrAddUnitComponent<PCAnimation>();
unitAnimation.Initialize();
- unitAfterImage = gameObject.GetOrAddComponent<UnitAfterImage>();
+ unitAfterImage = GetOrAddUnitComponent<UnitAfterImage>();
unitAfterImage.Initialize();
- unitImageEffect = gameObject.GetOrAddComponent<UnitImageEffect>();
+ unitImageEffect = GetOrAddUnitComponent<UnitImageEffect>();
unitImageEffect.Initialize();
-
}
public override void Update()
diff --git a/Assets/Scripts/Unit/Controller/UnitController.cs b/Assets/Scripts/Unit/Controller/UnitController.cs
index ff3d9df2..6ccf124b 100644
--- a/Assets/Scripts/Unit/Controller/UnitController.cs
+++ b/Assets/Scripts/Unit/Controller/UnitController.cs
@@ -44,6 +44,8 @@ public class UnitController : MonoBehaviour/*, Interactable*/
public GameObject unitObj; // 角色模型
+ protected List<UnitComponent> unitComponents;
+
#region 事件监听
public delegate void OnTimelineEventHandle(AnimationEventBase animEvent);
public OnTimelineEventHandle onTimelineEvent { get; set; }
@@ -107,29 +109,53 @@ public class UnitController : MonoBehaviour/*, Interactable*/
public virtual void Initialize( GameObject obj , string folder)
{
unitObj = obj;
-
m_Folder = folder;
+ unitComponents = new List<UnitComponent>();
- unitRender = gameObject.GetOrAddComponent<UnitRender>();
- unitRender.Initialize();
+ Initialize();
+
+ OnPostInitailize();
+ }
- unitSkill = gameObject.GetOrAddComponent<UnitSkill>();
- unitSkill.Initialize();
+ protected virtual void Initialize()
+ {
+ unitSkill = GetOrAddUnitComponent<UnitSkill>();
+ unitSkill.Initialize();
- unitRootMotion = gameObject.GetOrAddComponent<UnitRootMotion>();
- unitRootMotion.Initialize();
+ unitRootMotion = GetOrAddUnitComponent<UnitRootMotion>();
+ unitRootMotion.Initialize();
- unitCollider = gameObject.GetOrAddComponent<UnitCollider>();
+ unitCollider = GetOrAddUnitComponent<UnitCollider>();
unitCollider.Initialize();
- unitBody = gameObject.GetOrAddComponent<UnitBody>();
+ unitBody = GetOrAddUnitComponent<UnitBody>();
unitBody.Initialize();
+ unitRender = GetOrAddUnitComponent<UnitRender>();
+ unitRender.Initialize();
+
unitDetail = gameObject.GetComponentInChildren<UnitDetail>();
+ }
- }
+ private void OnPostInitailize()
+ {
+ if (unitComponents == null)
+ return;
+ for(int i = 0; i < unitComponents.Count; ++i)
+ {
+ unitComponents[i].OnPostInitialize();
+ }
+ }
+
+ protected T GetOrAddUnitComponent<T>() where T : UnitComponent
+ {
+ T comp = gameObject.GetOrAddComponent<T>();
+ Debug.Assert(unitComponents != null);
+ unitComponents.Add(comp);
+ return comp;
+ }
- public virtual void Update()
+ public virtual void Update()
{
unitRender.OnUpdate();
unitState.OnUpdate();
diff --git a/Assets/Scripts/Unit/Effect/UnitCamera.cs b/Assets/Scripts/Unit/Effect/UnitCamera.cs
index 90d78730..abb13a00 100644
--- a/Assets/Scripts/Unit/Effect/UnitCamera.cs
+++ b/Assets/Scripts/Unit/Effect/UnitCamera.cs
@@ -2,7 +2,7 @@
using System.Collections.Generic;
using UnityEngine;
-// 专门用来渲染player character的相机,用来做特效
+// 专门用来渲染character的相机,用来做特效
[RequireComponent(typeof(Camera))]
public class UnitCamera : SingletonMB<UnitCamera>
{
@@ -13,12 +13,22 @@ public class UnitCamera : SingletonMB<UnitCamera>
private void OnEnable()
{
m_Camera = GetComponent<Camera>();
- }
-
- private void OnPreRender()
+ m_Camera.enabled = false;
+ }
+
+ // 手动渲染
+ public void Render()
+ {
+ m_Camera.Render();
+ }
+
+ // 这里要用OnPreCull,不能是OnPreRender,因为设置了可见性,OnPreRender是在可见性剔除之后
+ void OnPreCull()
{
if (pc == null)
return;
+ if (pc.unitImageEffect == null || pc.unitImageEffect.effects.Count == 0)
+ return;
if (m_Camera == null)
return;
@@ -29,6 +39,17 @@ public class UnitCamera : SingletonMB<UnitCamera>
float fov = 2 * Mathf.Atan2(pc.unitDetail.snapshotBound / 2, dz) * Mathf.Rad2Deg;
m_Camera.fieldOfView = fov;
- }
-}
+ // 开启unit的渲染
+ pc.unitRender.SetVisibilityInAllCameras(true);
+ }
+
+ void OnPostRender()
+ {
+ if (pc.unitImageEffect == null || pc.unitImageEffect.effects.Count == 0)
+ return;
+
+ pc.unitRender.SetVisibilityInAllCameras(false);
+ }
+
+} \ No newline at end of file
diff --git a/Assets/Scripts/Unit/Events/EventMesh_ImageEffect_MotionBlur.cs b/Assets/Scripts/Unit/Events/EventMesh_ImageEffect_MotionBlur.cs
index dd1b4759..cb1a657c 100644
--- a/Assets/Scripts/Unit/Events/EventMesh_ImageEffect_MotionBlur.cs
+++ b/Assets/Scripts/Unit/Events/EventMesh_ImageEffect_MotionBlur.cs
@@ -14,4 +14,7 @@ public class EventMesh_ImageEffect_MotionBlur : AnimationEventBase
public float distance;
+ [Tooltip("隐藏角色")]
+ public bool hideUnitInMainCamera;
+
}
diff --git a/Assets/Scripts/Unit/UnitDetail.cs b/Assets/Scripts/Unit/UnitDetail.cs
index 3d075451..3f7f23e9 100644
--- a/Assets/Scripts/Unit/UnitDetail.cs
+++ b/Assets/Scripts/Unit/UnitDetail.cs
@@ -1,4 +1,5 @@
using System;
+using UnityEngine.Serialization;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
@@ -110,63 +111,86 @@ public enum EUnitReferencePoint
[Serializable]
public class UnitReferencePointDictionary : SerializableDictionary<EUnitReferencePoint, Transform> { }
+public enum EBodyPart
+{
+ Body = 0, // main body
+}
+
+[Serializable]
+public class BodyPartRenderer
+{
+ [SerializeField] public EBodyPart tag;
+ [SerializeField] public Renderer renderer;
+}
+
+public interface IBodyRendererAgent
+{
+ BodyPartRenderer mainRenderer { get; }
+ BodyPartRenderer[] renderers{ get; }
+}
+
+public interface IBodyJointAgent
+{
+ UnitBoneDictionary bones { get; }
+ UnitReferencePointDictionary referencePoints { get; }
+}
+
// 角色的prefab附加数据
// * afterimage的prefab
// * 骨骼映射
// * 武器
[DisallowMultipleComponent]
-public class UnitDetail : MonoBehaviour
+public class UnitDetail : MonoBehaviour, IBodyRendererAgent, IBodyJointAgent
{
public bool showGizmos;
[Tooltip("残影用的prefab")]
- public string afterImageAvatarPath;
-
- public UnitBoneDictionary bones;
-
- public UnitReferencePointDictionary referencePoints;
+ public string afterImageAvatarPath;
+
+ UnitBoneDictionary IBodyJointAgent.bones { get { return m_Bones; } }
+ [FormerlySerializedAs("bones")]
+ public UnitBoneDictionary m_Bones;
+
+ UnitReferencePointDictionary IBodyJointAgent.referencePoints { get { return m_ReferencePoints; } }
+ [FormerlySerializedAs("referencePoints")]
+ public UnitReferencePointDictionary m_ReferencePoints;
- //public Vector2 snapshotBound;
public float snapshotBound;
- private SkinnedMeshRenderer m_meshRenderer;
- public SkinnedMeshRenderer meshRenderer
- {
- get
- {
- if (!m_meshRenderer)
- m_meshRenderer = this.gameObject.GetComponentInChildren<SkinnedMeshRenderer>();
- return m_meshRenderer;
- }
- }
+ BodyPartRenderer IBodyRendererAgent.mainRenderer { get { return m_MainRenderer; } }
+ [SerializeField] private BodyPartRenderer m_MainRenderer;
+ BodyPartRenderer[] IBodyRendererAgent.renderers { get { return m_Renderers; } }
+ [SerializeField] private BodyPartRenderer[] m_Renderers;
public Vector3 center
{
get
{
- return meshRenderer.bounds.center;
+ if (m_MainRenderer == null || m_MainRenderer.renderer == null)
+ return Vector3.zero ;
+ return m_MainRenderer.renderer.bounds.center;
}
}
public UnitDetail()
- {
- bones = new UnitBoneDictionary();
+ {
+ m_Bones = new UnitBoneDictionary();
foreach(EUnitBone e in Enum.GetValues(typeof(EUnitBone)))
- {
- bones.Add(e, null);
+ {
+ m_Bones.Add(e, null);
}
}
public Transform GetBone(EUnitBone bone)
{
- if (bones.ContainsKey(bone))
- return bones[bone];
+ if (m_Bones.ContainsKey(bone))
+ return m_Bones[bone];
return null;
}
public bool HasBone(EUnitBone bone)
{
- return bones.ContainsKey(bone);
+ return m_Bones.ContainsKey(bone);
}
private void OnDrawGizmos()
@@ -176,4 +200,12 @@ public class UnitDetail : MonoBehaviour
Gizmos.DrawWireCube(center, new Vector3(snapshotBound, snapshotBound, 0));
}
+ IEnumerator GetRenderers()
+ {
+ for(int i = 0; i < m_Renderers.Length; ++i)
+ {
+ yield return m_Renderers[i].renderer;
+ }
+ }
+
} \ No newline at end of file
diff --git a/Assets/Tools/ActionTool/Editor/ActionPreviewEditor.cs b/Assets/Tools/ActionTool/Editor/ActionPreviewEditor.cs
index 3699762c..832388e7 100644
--- a/Assets/Tools/ActionTool/Editor/ActionPreviewEditor.cs
+++ b/Assets/Tools/ActionTool/Editor/ActionPreviewEditor.cs
@@ -358,8 +358,8 @@ namespace ActionTool
GUI.Label(new Rect(xr + 150, y, 110, 15), ActionManager.actionData.curAnimTimeNormal.ToString("f2"), styles.textMiddleBold);
GUI.Label(new Rect(xl + 150 * 2, y, 105, 15), "Event Frame:", styles.textMiddle);
GUI.Label(new Rect(xr + 150 + 125, y, 110, 15), ((int)ActionManager.actionData.curAnimFrame).ToString(), styles.textMiddleBold);
- //GUI.Label(new Rect(xl + 150 + 130 + 130, y, 105, 15), "Time:", styles.textMiddle);
- //GUI.Label(new Rect(xr + 150 + 130 + 70 , y, 510, 15), ((int)ActionManager.actionData.curAnimFrame).ToString(), styles.textMiddleBold);
+ GUI.Label(new Rect(xl + 150 + 130 + 130, y, 105, 15), "Time:", styles.textMiddle);
+ GUI.Label(new Rect(xr + 150 + 130 + 70 , y, 510, 15), (ActionManager.actionData.curAnimTimeNormal * ActionManager.curClip.length).ToString(), styles.textMiddleBold);
y += 15;
}
diff --git a/Documents/渲染.xlsx b/Documents/渲染.xlsx
index c07db8ec..68d53fc6 100644
--- a/Documents/渲染.xlsx
+++ b/Documents/渲染.xlsx
Binary files differ