diff options
author | chai <chaifix@163.com> | 2020-10-14 07:45:27 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2020-10-14 07:45:27 +0800 |
commit | 41a924d317b4b0b9c5e53d4c4ca53cb55ea80fd2 (patch) | |
tree | 464555fb3c65ac08831b1fbc0f14cb0535abe09f | |
parent | 0a84de586c479a32959bd30fbf1a05abac1557e1 (diff) |
*#Erika#动画最佳设置:
* Root Transform Rotation 永远勾上 Bake Into Pose, BasedUpon Original
* 对于idle动画和其他位置不会改变的动画,Y和XZ都bake,BasedUpon Feet
* 对于平地上移动的动画,Bake Y position,XZ不要bake
* 对于Y轴改变的动画,比如跳跃、某些浮空技能,Y和XZ都不要bake
12 files changed, 205 insertions, 95 deletions
diff --git a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo03_All.FBX.meta b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo03_All.FBX.meta index 4e559bf7..3ec26ac6 100644 --- a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo03_All.FBX.meta +++ b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo03_All.FBX.meta @@ -232,7 +232,35 @@ ModelImporter: animationWrapMode: 0 extraExposedTransformPaths: [] extraUserProperties: [] - clipAnimations: [] + clipAnimations: + - serializedVersion: 16 + name: Take 001 + takeName: Take 001 + firstFrame: 0 + lastFrame: 155 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 1 + loopBlendPositionY: 0 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 1 + keepOriginalPositionY: 0 + keepOriginalPositionXZ: 1 + heightFromFeet: 1 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 isReadable: 1 meshes: lODScreenPercentages: [] diff --git a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo04_1.FBX.meta b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo04_1.FBX.meta index 5f65edee..d9e78521 100644 --- a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo04_1.FBX.meta +++ b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo04_1.FBX.meta @@ -232,7 +232,35 @@ ModelImporter: animationWrapMode: 0 extraExposedTransformPaths: [] extraUserProperties: [] - clipAnimations: [] + clipAnimations: + - serializedVersion: 16 + name: Take 001 + takeName: Take 001 + firstFrame: 0 + lastFrame: 60 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 1 + keepOriginalOrientation: 1 + keepOriginalPositionY: 0 + keepOriginalPositionXZ: 1 + heightFromFeet: 1 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 isReadable: 1 meshes: lODScreenPercentages: [] diff --git a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo05_1.FBX.meta b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo05_1.FBX.meta index 58bff1bb..b82d5e6a 100644 --- a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo05_1.FBX.meta +++ b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo05_1.FBX.meta @@ -241,7 +241,35 @@ ModelImporter: animationWrapMode: 0 extraExposedTransformPaths: [] extraUserProperties: [] - clipAnimations: [] + clipAnimations: + - serializedVersion: 16 + name: Take 001 + takeName: Take 001 + firstFrame: 0 + lastFrame: 44 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 0 + loopBlendPositionY: 1 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 isReadable: 1 meshes: lODScreenPercentages: [] diff --git a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo05_2.FBX.meta b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo05_2.FBX.meta index 3ac4bdbc..99944499 100644 --- a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo05_2.FBX.meta +++ b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Combo05_2.FBX.meta @@ -240,7 +240,35 @@ ModelImporter: animationWrapMode: 0 extraExposedTransformPaths: [] extraUserProperties: [] - clipAnimations: [] + clipAnimations: + - serializedVersion: 16 + name: Take 001 + takeName: Take 001 + firstFrame: 0 + lastFrame: 55 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 1 + keepOriginalOrientation: 1 + keepOriginalPositionY: 0 + keepOriginalPositionXZ: 1 + heightFromFeet: 1 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 isReadable: 1 meshes: lODScreenPercentages: [] diff --git a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Equip_Idle.FBX.meta b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Equip_Idle.FBX.meta index 9f9c5086..622b7420 100644 --- a/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Equip_Idle.FBX.meta +++ b/Assets/Art/AnimClips/Frank_Slash_Pack/Animations/Frank_SlashPack_Assassin/FBX Animation/Root_Motion/Frank_RPG_Assassin_Equip_Idle.FBX.meta @@ -220,7 +220,35 @@ ModelImporter: animationWrapMode: 0 extraExposedTransformPaths: [] extraUserProperties: [] - clipAnimations: [] + clipAnimations: + - serializedVersion: 16 + name: Take 001 + takeName: Take 001 + firstFrame: 0 + lastFrame: 240 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 1 + loopBlend: 1 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 1 + keepOriginalOrientation: 1 + keepOriginalPositionY: 0 + keepOriginalPositionXZ: 1 + heightFromFeet: 1 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 isReadable: 1 meshes: lODScreenPercentages: [] diff --git a/Assets/Art/AnimContros.meta b/Assets/Art/AnimControllers.meta index ec380c7d..ec380c7d 100644 --- a/Assets/Art/AnimContros.meta +++ b/Assets/Art/AnimControllers.meta diff --git a/Assets/Art/AnimContros/AnimContro_Saionji.controller b/Assets/Art/AnimControllers/AnimContro_Saionji.controller index 85d15306..47b2ac27 100644 --- a/Assets/Art/AnimContros/AnimContro_Saionji.controller +++ b/Assets/Art/AnimControllers/AnimContro_Saionji.controller @@ -313,50 +313,6 @@ AnimatorStateTransition: m_InterruptionSource: 0 m_OrderedInterruption: 1 m_CanTransitionToSelf: 1 ---- !u!1101 &1101607149247048284 -AnimatorStateTransition: - m_ObjectHideFlags: 1 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_Conditions: [] - m_DstStateMachine: {fileID: 0} - m_DstState: {fileID: 1102971511632395084} - m_Solo: 0 - m_Mute: 1 - m_IsExit: 0 - serializedVersion: 3 - m_TransitionDuration: 0.25 - m_TransitionOffset: 0 - m_ExitTime: 0.8648649 - m_HasExitTime: 1 - m_HasFixedDuration: 1 - m_InterruptionSource: 0 - m_OrderedInterruption: 1 - m_CanTransitionToSelf: 1 ---- !u!1101 &1101750330947700310 -AnimatorStateTransition: - m_ObjectHideFlags: 1 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_Conditions: [] - m_DstStateMachine: {fileID: 0} - m_DstState: {fileID: 1102885414272778094} - m_Solo: 0 - m_Mute: 0 - m_IsExit: 0 - serializedVersion: 3 - m_TransitionDuration: 0.25 - m_TransitionOffset: 0 - m_ExitTime: 0.8684211 - m_HasExitTime: 1 - m_HasFixedDuration: 1 - m_InterruptionSource: 0 - m_OrderedInterruption: 1 - m_CanTransitionToSelf: 1 --- !u!1101 &1101871246713101674 AnimatorStateTransition: m_ObjectHideFlags: 1 @@ -687,7 +643,33 @@ AnimatorState: m_MirrorParameterActive: 0 m_CycleOffsetParameterActive: 0 m_TimeParameterActive: 0 - m_Motion: {fileID: 7400000, guid: 4b66c7588502d6b4b8c3beeaaaf3bc78, type: 3} + m_Motion: {fileID: 7400000, guid: 16d4571df84f5144894cf1a31699d0dd, type: 3} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &1102502363569234842 +AnimatorState: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Assassin Idle + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: [] + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 39660d90e9043d94ca913b06b0193235, type: 3} m_Tag: m_SpeedParameter: m_MirrorParameter: @@ -1028,7 +1010,6 @@ AnimatorState: m_Speed: 1 m_CycleOffset: 0 m_Transitions: - - {fileID: 1101607149247048284} - {fileID: 1101197939501959604} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} @@ -1097,33 +1078,6 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: ---- !u!1102 &1102971511632395084 -AnimatorState: - serializedVersion: 5 - m_ObjectHideFlags: 1 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: StrongAttk - m_Speed: 1 - m_CycleOffset: 0 - m_Transitions: - - {fileID: 1101750330947700310} - m_StateMachineBehaviours: [] - m_Position: {x: 50, y: 50, z: 0} - m_IKOnFeet: 0 - m_WriteDefaultValues: 1 - m_Mirror: 0 - m_SpeedParameterActive: 0 - m_MirrorParameterActive: 0 - m_CycleOffsetParameterActive: 0 - m_TimeParameterActive: 0 - m_Motion: {fileID: 7400000, guid: ec9252f4902608f43a303175c69bde39, type: 3} - m_Tag: - m_SpeedParameter: - m_MirrorParameter: - m_CycleOffsetParameter: - m_TimeParameter: --- !u!1102 &1102996636091956636 AnimatorState: serializedVersion: 5 @@ -1229,7 +1183,7 @@ AnimatorStateMachine: m_Position: {x: 1404, y: 396, z: 0} - serializedVersion: 1 m_State: {fileID: 1102885414272778094} - m_Position: {x: 1418.0886, y: 542.7856, z: 0} + m_Position: {x: 1416, y: 876, z: 0} - serializedVersion: 1 m_State: {fileID: 1102630461005910192} m_Position: {x: 1308, y: 660, z: 0} @@ -1240,14 +1194,14 @@ AnimatorStateMachine: m_State: {fileID: 1102943125194423158} m_Position: {x: 1788, y: 660, z: 0} - serializedVersion: 1 - m_State: {fileID: 1102971511632395084} - m_Position: {x: 1788, y: 552, z: 0} - - serializedVersion: 1 m_State: {fileID: 1102033078263674292} m_Position: {x: 1632, y: 312, z: 0} - serializedVersion: 1 m_State: {fileID: 1102486787591487954} - m_Position: {x: 1932, y: 456, z: 0} + m_Position: {x: 1692, y: 1032, z: 0} + - serializedVersion: 1 + m_State: {fileID: 1102502363569234842} + m_Position: {x: 1128, y: 912, z: 0} m_ChildStateMachines: [] m_AnyStateTransitions: [] m_EntryTransitions: [] diff --git a/Assets/Art/AnimContros/AnimContro_Saionji.controller.meta b/Assets/Art/AnimControllers/AnimContro_Saionji.controller.meta index d96599d3..d96599d3 100644 --- a/Assets/Art/AnimContros/AnimContro_Saionji.controller.meta +++ b/Assets/Art/AnimControllers/AnimContro_Saionji.controller.meta diff --git a/Assets/Art/PostProcessing_setup.asset b/Assets/Art/PostProcessing_setup.asset index 6f268486..b479befe 100644 --- a/Assets/Art/PostProcessing_setup.asset +++ b/Assets/Art/PostProcessing_setup.asset @@ -83,4 +83,4 @@ MonoBehaviour: value: 360 sampleCount: overrideState: 1 - value: 12 + value: 10 diff --git a/Assets/Art/Sound.meta b/Assets/Art/Sound.meta new file mode 100644 index 00000000..8ea43879 --- /dev/null +++ b/Assets/Art/Sound.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 27a9dc88d783408488dd40fcf72d2a62 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Demo/SaionjiShowOff.unity b/Assets/Scenes/Demo/SaionjiShowOff.unity index ccc07676..066a4aec 100644 --- a/Assets/Scenes/Demo/SaionjiShowOff.unity +++ b/Assets/Scenes/Demo/SaionjiShowOff.unity @@ -479,8 +479,8 @@ MonoBehaviour: m_MaxDollyOut: 5000 m_MinimumDistance: 1 m_MaximumDistance: 5000 - m_MinimumFOV: 42.1 - m_MaximumFOV: 60 + m_MinimumFOV: 50.2 + m_MaximumFOV: 129.3 m_MinimumOrthoSize: 1 m_MaximumOrthoSize: 5000 --- !u!114 &433912770 @@ -496,7 +496,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_BindingMode: 1 - m_FollowOffset: {x: -0.0033898354, y: 2.526001, z: -7.104233} + m_FollowOffset: {x: -0.0033898354, y: 2.976001, z: -7.104233} m_XDamping: 0 m_YDamping: 0 m_ZDamping: 0 @@ -5301,7 +5301,7 @@ Camera: height: 1 near clip plane: 0.1 far clip plane: 100 - field of view: 44.726162 + field of view: 60.400204 orthographic: 0 orthographic size: 5 m_Depth: -1 @@ -5326,8 +5326,8 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 534669902} - m_LocalRotation: {x: 0.16998157, y: 0.00009396471, z: -0.000016208143, w: 0.9854473} - m_LocalPosition: {x: 2.05, y: -0.4000001, z: -1.2200003} + m_LocalRotation: {x: 0.19705053, y: 0.00007397188, z: -0.000014867703, w: 0.98039335} + m_LocalPosition: {x: 2.05, y: 0.049999952, z: -1.2200003} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1241327946} @@ -5611,7 +5611,7 @@ PrefabInstance: - target: {fileID: 835917129355216795, guid: 8bd54aeb1f5bb9145a9a681ac1553364, type: 3} propertyPath: m_ApplyRootMotion - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 835917129355216795, guid: 8bd54aeb1f5bb9145a9a681ac1553364, type: 3} @@ -5768,8 +5768,8 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 801756637} - m_LocalRotation: {x: 0.16998157, y: 0.00009396471, z: -0.000016208143, w: 0.9854473} - m_LocalPosition: {x: 2.05, y: -0.4000001, z: -1.2200003} + m_LocalRotation: {x: 0.19705053, y: 0.00007397188, z: -0.000014867703, w: 0.98039335} + m_LocalPosition: {x: 2.05, y: 0.049999952, z: -1.2200003} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 433912768} diff --git a/Assets/Scripts/Test/RootConstainTest.cs b/Assets/Scripts/Test/RootConstainTest.cs index 4cd9dbb1..91d37062 100644 --- a/Assets/Scripts/Test/RootConstainTest.cs +++ b/Assets/Scripts/Test/RootConstainTest.cs @@ -23,8 +23,16 @@ public class RootConstainTest : MonoBehaviour // 约束z=0
if (animator)
{
- //animator.ApplyBuiltinRootMotion();
- transform.position += new Vector3(animator.deltaPosition.x, animator.deltaPosition.y, 0);
+ Vector3 position = transform.position;
+ position.x += animator.deltaPosition.x;
+ position.y += animator.deltaPosition.y;
+ //position.y = Mathf.Max(0, position.y);
+ //position.y = 0;
+
+ transform.position = position;
+
+ transform.rotation *= animator.deltaRotation;
+
//transform.forward = animator.deltaRotation * transform.forward;
//Vector3 euler = animator.deltaRotation.ToEuler();
//euler.x = euler.z = euler.y = 0;
|