diff --git a/Assets/Animation/base-人类士兵.controller b/Assets/Animation/base-人类士兵.controller index ff7ed25..097e56b 100644 --- a/Assets/Animation/base-人类士兵.controller +++ b/Assets/Animation/base-人类士兵.controller @@ -86,7 +86,7 @@ AnimatorState: m_Motion: {fileID: -203655887218126122, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} m_Tag: - m_SpeedParameter: attackSpeed + m_SpeedParameter: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: @@ -98,7 +98,7 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: walk - m_Speed: 2.01 + m_Speed: 1 m_CycleOffset: 0 m_OverrideDuration: 1 m_Transitions: @@ -151,37 +151,6 @@ AnimatorStateTransition: m_RootMotionBlendCurveMode: 0 m_PoseBlendCurveKeyframes: [] m_RootMotionBlendCurveKeyframes: [] ---- !u!1101 &-1468598994293436030 -AnimatorStateTransition: - m_ObjectHideFlags: 1 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_Conditions: - - m_ConditionMode: 6 - m_ConditionEvent: speed - m_EventTreshold: 1 - m_DstStateMachine: {fileID: 0} - m_DstState: {fileID: -4660280211063151679} - m_Solo: 0 - m_Mute: 0 - m_IsExit: 0 - serializedVersion: 5 - m_TransitionDuration: 0.1 - m_TransitionOffset: 0 - m_ExitTime: 0.8563986 - m_PriorityOrder: 0 - m_HasExitTime: 0 - m_HasFixedDuration: 1 - m_InterruptionSource: 0 - m_OrderedInterruption: 1 - m_CanTransitionToSelf: 1 - m_TransitionBlendMode: 0 - m_PoseBlendCurveMode: 0 - m_RootMotionBlendCurveMode: 0 - m_PoseBlendCurveKeyframes: [] - m_RootMotionBlendCurveKeyframes: [] --- !u!91 &9100000 AnimatorController: m_ObjectHideFlags: 0 @@ -218,7 +187,7 @@ AnimatorController: m_Behaviours: [] m_BlendingMode: 0 m_SyncedLayerIndex: -1 - m_DefaultWeight: 0 + m_DefaultWeight: 1 m_IKPass: 0 m_SyncedLayerAffectsTiming: 0 m_Controller: {fileID: 9100000} @@ -250,6 +219,37 @@ AnimatorStateTransition: m_RootMotionBlendCurveMode: 0 m_PoseBlendCurveKeyframes: [] m_RootMotionBlendCurveKeyframes: [] +--- !u!1101 &5409454664583647851 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 6 + m_ConditionEvent: speed + m_EventTreshold: 1 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -4660280211063151679} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 5 + m_TransitionDuration: 0.067794085 + m_TransitionOffset: 0 + m_ExitTime: 0.75 + m_PriorityOrder: 0 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 0 + m_TransitionBlendMode: 0 + m_PoseBlendCurveMode: 0 + m_RootMotionBlendCurveMode: 0 + m_PoseBlendCurveKeyframes: [] + m_RootMotionBlendCurveKeyframes: [] --- !u!1107 &5483979831231105100 AnimatorStateMachine: serializedVersion: 6 @@ -261,25 +261,26 @@ AnimatorStateMachine: m_ChildStates: - serializedVersion: 1 m_State: {fileID: 8364761676262773122} - m_Position: {x: 30, y: 260, z: 0} + m_Position: {x: 320, y: 250, z: 0} - serializedVersion: 1 m_State: {fileID: -4660280211063151679} - m_Position: {x: 340, y: 260, z: 0} + m_Position: {x: 320, y: 90, z: 0} - serializedVersion: 1 m_State: {fileID: -5053669712340480567} - m_Position: {x: 340, y: 110, z: 0} + m_Position: {x: 30, y: 90, z: 0} - serializedVersion: 1 m_State: {fileID: -6277299772803164055} - m_Position: {x: 590, y: 110, z: 0} + m_Position: {x: 590, y: 90, z: 0} m_ChildStateMachines: [] m_AnyStateTransitions: - {fileID: -3669894559520745781} - {fileID: -7525629761541704481} + - {fileID: 5409454664583647851} m_EntryTransitions: [] m_StateMachineTransitions: {} m_StateMachineBehaviours: [] - m_AnyStatePosition: {x: 360, y: -30, z: 0} - m_EntryPosition: {x: 50, y: 120, z: 0} + m_AnyStatePosition: {x: 340, y: -110, z: 0} + m_EntryPosition: {x: 340, y: 400, z: 0} m_ExitPosition: {x: 990, y: 110, z: 0} m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} m_DefaultState: {fileID: 8364761676262773122} @@ -304,7 +305,7 @@ AnimatorStateTransition: m_TransitionOffset: 0 m_ExitTime: 0.85 m_PriorityOrder: 0 - m_HasExitTime: 1 + m_HasExitTime: 0 m_HasFixedDuration: 1 m_InterruptionSource: 0 m_OrderedInterruption: 1 @@ -325,8 +326,7 @@ AnimatorState: m_Speed: 1 m_CycleOffset: 0 m_OverrideDuration: 1 - m_Transitions: - - {fileID: -1468598994293436030} + m_Transitions: [] m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 diff --git a/Assets/Animation/弓箭手.overrideController b/Assets/Animation/弓箭手.overrideController index 73400d9..bad1d07 100644 --- a/Assets/Animation/弓箭手.overrideController +++ b/Assets/Animation/弓箭手.overrideController @@ -9,15 +9,15 @@ AnimatorOverrideController: m_Name: "\u5F13\u7BAD\u624B" m_Controller: {fileID: 9100000, guid: 040acc435cecb4b16b965a1136ce6834, type: 2} m_Clips: - - m_OriginalClip: {fileID: -203655887218126122, guid: 759b3c43f85694603a30f39ba5c0bb28, + - m_OriginalClip: {fileID: -203655887218126122, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} m_OverrideClip: {fileID: -203655887218126122, guid: ab1bbfb3679ec0c4b8e5feeb207ed436, type: 3} - - m_OriginalClip: {fileID: -203655887218126122, guid: c64a07291d13b4e9296ad678cc703a75, + - m_OriginalClip: {fileID: -203655887218126122, guid: 9b11238d2f5f44e169f07fc190a2d31f, type: 3} m_OverrideClip: {fileID: -203655887218126122, guid: c4731cff79d83ae468056fee240c8b98, type: 3} - - m_OriginalClip: {fileID: -203655887218126122, guid: 36109662b3b414715ba2c279c3d881d3, + - m_OriginalClip: {fileID: -203655887218126122, guid: 893027867e2cf420bb3ef33e38e0fc09, type: 3} m_OverrideClip: {fileID: -203655887218126122, guid: 6af15e184eda3774ea9aa154e2b75501, type: 3} diff --git a/Assets/Animation/弓箭猎人.overrideController b/Assets/Animation/弓箭猎人.overrideController index b2e1c65..c164b84 100644 --- a/Assets/Animation/弓箭猎人.overrideController +++ b/Assets/Animation/弓箭猎人.overrideController @@ -9,15 +9,15 @@ AnimatorOverrideController: m_Name: "\u5F13\u7BAD\u730E\u4EBA" m_Controller: {fileID: 9100000, guid: 040acc435cecb4b16b965a1136ce6834, type: 2} m_Clips: - - m_OriginalClip: {fileID: -203655887218126122, guid: c64a07291d13b4e9296ad678cc703a75, - type: 3} - m_OverrideClip: {fileID: -203655887218126122, guid: 934507468bfdf6540b738834d9075883, - type: 3} - - m_OriginalClip: {fileID: -203655887218126122, guid: 759b3c43f85694603a30f39ba5c0bb28, + - m_OriginalClip: {fileID: -203655887218126122, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} m_OverrideClip: {fileID: -203655887218126122, guid: 2ac38f68ec4f85341b423b5e8defd47e, type: 3} - - m_OriginalClip: {fileID: -203655887218126122, guid: 36109662b3b414715ba2c279c3d881d3, + - m_OriginalClip: {fileID: -203655887218126122, guid: 9b11238d2f5f44e169f07fc190a2d31f, + type: 3} + m_OverrideClip: {fileID: -203655887218126122, guid: 934507468bfdf6540b738834d9075883, + type: 3} + - m_OriginalClip: {fileID: -203655887218126122, guid: 893027867e2cf420bb3ef33e38e0fc09, type: 3} m_OverrideClip: {fileID: -203655887218126122, guid: 1fcb0a89e327b5a4e86fa9161d1ff985, type: 3} diff --git a/Assets/Animation/狼人.overrideController b/Assets/Animation/狼人.overrideController new file mode 100644 index 0000000..1eda793 --- /dev/null +++ b/Assets/Animation/狼人.overrideController @@ -0,0 +1,23 @@ +%YAML 1.1 +%TAG !u! tag:yousandi.cn,2023: +--- !u!221 &22100000 +AnimatorOverrideController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: "\u72FC\u4EBA" + m_Controller: {fileID: 9100000, guid: 040acc435cecb4b16b965a1136ce6834, type: 2} + m_Clips: + - m_OriginalClip: {fileID: -203655887218126122, guid: 9b11238d2f5f44e169f07fc190a2d31f, + type: 3} + m_OverrideClip: {fileID: -203655887218126122, guid: f483c62261728994fb202f868dbd34b8, + type: 3} + - m_OriginalClip: {fileID: -203655887218126122, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + m_OverrideClip: {fileID: -203655887218126122, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + - m_OriginalClip: {fileID: -203655887218126122, guid: 893027867e2cf420bb3ef33e38e0fc09, + type: 3} + m_OverrideClip: {fileID: -203655887218126122, guid: af955da8516f85f468ca9694a4237ad4, + type: 3} diff --git a/Assets/Animation/狼人.overrideController.meta b/Assets/Animation/狼人.overrideController.meta new file mode 100644 index 0000000..59e15ba --- /dev/null +++ b/Assets/Animation/狼人.overrideController.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: C34ZtiioAntktU+GGA+E3KKmxYeYmR2Rs20nC/69qpcWAEZQSrDrC70= +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 22100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animation/精锐士兵.overrideController b/Assets/Animation/精锐士兵.overrideController index 8b3dfb4..e2af2ad 100644 --- a/Assets/Animation/精锐士兵.overrideController +++ b/Assets/Animation/精锐士兵.overrideController @@ -9,15 +9,15 @@ AnimatorOverrideController: m_Name: "\u7CBE\u9510\u58EB\u5175" m_Controller: {fileID: 9100000, guid: 040acc435cecb4b16b965a1136ce6834, type: 2} m_Clips: - - m_OriginalClip: {fileID: -203655887218126122, guid: c64a07291d13b4e9296ad678cc703a75, + - m_OriginalClip: {fileID: -203655887218126122, guid: 9b11238d2f5f44e169f07fc190a2d31f, type: 3} m_OverrideClip: {fileID: -203655887218126122, guid: 9830e2abde3ced9489cc25a6a1932e55, type: 3} - - m_OriginalClip: {fileID: -203655887218126122, guid: 759b3c43f85694603a30f39ba5c0bb28, + - m_OriginalClip: {fileID: -203655887218126122, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} m_OverrideClip: {fileID: -203655887218126122, guid: 2cc5aff080328dd41a690b3e4cf352e1, type: 3} - - m_OriginalClip: {fileID: -203655887218126122, guid: 36109662b3b414715ba2c279c3d881d3, + - m_OriginalClip: {fileID: -203655887218126122, guid: 893027867e2cf420bb3ef33e38e0fc09, type: 3} m_OverrideClip: {fileID: -203655887218126122, guid: 44620de70617b5745b8088e46294f99c, type: 3} diff --git a/Assets/Animation/蓝色怪物.overrideController b/Assets/Animation/蓝色怪物.overrideController index 4379c5a..c23e0d3 100644 --- a/Assets/Animation/蓝色怪物.overrideController +++ b/Assets/Animation/蓝色怪物.overrideController @@ -9,19 +9,19 @@ AnimatorOverrideController: m_Name: "\u84DD\u8272\u602A\u7269" m_Controller: {fileID: 9100000, guid: 040acc435cecb4b16b965a1136ce6834, type: 2} m_Clips: - - m_OriginalClip: {fileID: -203655887218126122, guid: c64a07291d13b4e9296ad678cc703a75, - type: 3} - m_OverrideClip: {fileID: -203655887218126122, guid: 671c28c621508450c8f42156bd80ff53, - type: 3} - - m_OriginalClip: {fileID: -203655887218126122, guid: 759b3c43f85694603a30f39ba5c0bb28, - type: 3} - m_OverrideClip: {fileID: -203655887218126122, guid: 563a545d06f794734acf9e9167b44713, - type: 3} - - m_OriginalClip: {fileID: -203655887218126122, guid: 36109662b3b414715ba2c279c3d881d3, - type: 3} - m_OverrideClip: {fileID: -203655887218126122, guid: 10cccd349603a427ca5a368c4ab34340, - type: 3} - - m_OriginalClip: {fileID: -203655887218126122, guid: 4697aaf5280464eb4b09880eb2460166, + - m_OriginalClip: {fileID: -203655887218126122, guid: b315bce378aec4abbac5e4070f47b069, type: 3} m_OverrideClip: {fileID: -203655887218126122, guid: aedf6e849dd924e229c57640f99ff50a, type: 3} + - m_OriginalClip: {fileID: -203655887218126122, guid: 9b11238d2f5f44e169f07fc190a2d31f, + type: 3} + m_OverrideClip: {fileID: -203655887218126122, guid: 671c28c621508450c8f42156bd80ff53, + type: 3} + - m_OriginalClip: {fileID: -203655887218126122, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + m_OverrideClip: {fileID: -203655887218126122, guid: 563a545d06f794734acf9e9167b44713, + type: 3} + - m_OriginalClip: {fileID: -203655887218126122, guid: 893027867e2cf420bb3ef33e38e0fc09, + type: 3} + m_OverrideClip: {fileID: -203655887218126122, guid: 10cccd349603a427ca5a368c4ab34340, + type: 3} diff --git a/Assets/Model/武器.meta b/Assets/Model/武器.meta new file mode 100644 index 0000000..81b0d93 --- /dev/null +++ b/Assets/Model/武器.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: XCxN4XupB3sG5EouPeQhfGUC78ljiD+EXm2bzkuCyvSVpBFMzYZKCqs= +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/弓.meta b/Assets/Model/武器/弓.meta similarity index 100% rename from Assets/Model/弓.meta rename to Assets/Model/武器/弓.meta diff --git a/Assets/Model/弓/shaded.png b/Assets/Model/武器/弓/shaded.png similarity index 100% rename from Assets/Model/弓/shaded.png rename to Assets/Model/武器/弓/shaded.png diff --git a/Assets/Model/弓/shaded.png.meta b/Assets/Model/武器/弓/shaded.png.meta similarity index 100% rename from Assets/Model/弓/shaded.png.meta rename to Assets/Model/武器/弓/shaded.png.meta diff --git a/Assets/Model/弓/弓.obj b/Assets/Model/武器/弓/弓.obj similarity index 100% rename from Assets/Model/弓/弓.obj rename to Assets/Model/武器/弓/弓.obj diff --git a/Assets/Model/弓/弓.obj.meta b/Assets/Model/武器/弓/弓.obj.meta similarity index 100% rename from Assets/Model/弓/弓.obj.meta rename to Assets/Model/武器/弓/弓.obj.meta diff --git a/Assets/Model/弓/弓的材质.mat b/Assets/Model/武器/弓/弓的材质.mat similarity index 100% rename from Assets/Model/弓/弓的材质.mat rename to Assets/Model/武器/弓/弓的材质.mat diff --git a/Assets/Model/弓/弓的材质.mat.meta b/Assets/Model/武器/弓/弓的材质.mat.meta similarity index 100% rename from Assets/Model/弓/弓的材质.mat.meta rename to Assets/Model/武器/弓/弓的材质.mat.meta diff --git a/Assets/Model/弓/箭矢.meta b/Assets/Model/武器/弓/箭矢.meta similarity index 100% rename from Assets/Model/弓/箭矢.meta rename to Assets/Model/武器/弓/箭矢.meta diff --git a/Assets/Model/弓/箭矢/箭矢.fbx b/Assets/Model/武器/弓/箭矢/箭矢.fbx similarity index 100% rename from Assets/Model/弓/箭矢/箭矢.fbx rename to Assets/Model/武器/弓/箭矢/箭矢.fbx diff --git a/Assets/Model/弓/箭矢/箭矢.fbx.meta b/Assets/Model/武器/弓/箭矢/箭矢.fbx.meta similarity index 100% rename from Assets/Model/弓/箭矢/箭矢.fbx.meta rename to Assets/Model/武器/弓/箭矢/箭矢.fbx.meta diff --git a/Assets/Model/弓/箭矢/箭矢材质.mat b/Assets/Model/武器/弓/箭矢/箭矢材质.mat similarity index 100% rename from Assets/Model/弓/箭矢/箭矢材质.mat rename to Assets/Model/武器/弓/箭矢/箭矢材质.mat diff --git a/Assets/Model/弓/箭矢/箭矢材质.mat.meta b/Assets/Model/武器/弓/箭矢/箭矢材质.mat.meta similarity index 100% rename from Assets/Model/弓/箭矢/箭矢材质.mat.meta rename to Assets/Model/武器/弓/箭矢/箭矢材质.mat.meta diff --git a/Assets/Model/弓/箭矢/箭矢贴图.png.meta b/Assets/Model/武器/弓/箭矢/箭矢贴图.png.meta similarity index 100% rename from Assets/Model/弓/箭矢/箭矢贴图.png.meta rename to Assets/Model/武器/弓/箭矢/箭矢贴图.png.meta diff --git a/Assets/Model/武器/短剑.meta b/Assets/Model/武器/短剑.meta new file mode 100644 index 0000000..fd10253 --- /dev/null +++ b/Assets/Model/武器/短剑.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: DigWvX/7Vnxc2Xemn4Yf3bataLzwJuxjf8B05zNSIYYnQylIzINzQtY= +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/武器/短剑/人类士兵短剑.fbx b/Assets/Model/武器/短剑/人类士兵短剑.fbx new file mode 100644 index 0000000..df0459d Binary files /dev/null and b/Assets/Model/武器/短剑/人类士兵短剑.fbx differ diff --git a/Assets/Model/武器/短剑/人类士兵短剑.fbx.meta b/Assets/Model/武器/短剑/人类士兵短剑.fbx.meta new file mode 100644 index 0000000..39702c5 --- /dev/null +++ b/Assets/Model/武器/短剑/人类士兵短剑.fbx.meta @@ -0,0 +1,210 @@ +fileFormatVersion: 2 +guid: B3tMtnn8UXK02LqHJOgrgLlAR0CowYeoEXTNkjd0s+bRC6BSIl36emA= +ModelImporter: + serializedVersion: 22361 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: Material.001 + second: {fileID: 2100000, guid: 237dc47352938e44ba5c0918e358aa58, type: 2} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + aCLCompressionLevel: 3 + aCLCurvePrecision: 0.01 + aCLFastSampleMode: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + tuanjieGIEnable: 0 + tuanjieGIGenSDFFactor: 1 + tuanjieGIGenSDFBias: 0.25 + tuanjieGIDoubleSidedMode: 0 + tuanjieGIGenFacetNums: 12 + meshes: + lODScreenPercentages: [] + globalScale: 100 + meshCompression: 0 + totalVerticesCount: 881 + totalTrianglesCount: 500 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + virtualGeometry: + virtualGeometry: 0 + useTransparent: 0 + setVGForeachMesh: 0 + isFirstUse: 1 + virtualGeometrySettings: + generateGeometryBuffer: 0 + surfaceCompensation: 0 + allMeshUse: 1 + ignoreSimpleMesh: 0 + transformScaleState: 0 + isPossibleOverflow: 0 + hasBoneData: 0 + isBoneCountOverflow: 0 + virtualGeometryPlatformSettings: + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: DefaultVirtualGeometryPlatform + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: Standalone + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: iPhone + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: Android + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + selectedVGMeshes: + - index: 0 + meshName: Mesh_0 + lodLevel: 0 + meshGeometryBuffer: 0 + supportVGMeshes: + - index: 0 + meshName: Mesh_0 + lodLevel: 0 + meshGeometryBuffer: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + overrideDefaultPose: 0 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + namedPoseList: + - name: Default + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + defaultPoseIndex: -1 + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/武器/短剑/短剑.mat b/Assets/Model/武器/短剑/短剑.mat new file mode 100644 index 0000000..12cb915 --- /dev/null +++ b/Assets/Model/武器/短剑/短剑.mat @@ -0,0 +1,83 @@ +%YAML 1.1 +%TAG !u! tag:yousandi.cn,2023: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: "\u77ED\u5251" + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: 9f2e58edffb16c644be3613be67139aa, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Assets/Model/武器/短剑/短剑.mat.meta b/Assets/Model/武器/短剑/短剑.mat.meta new file mode 100644 index 0000000..380f5fa --- /dev/null +++ b/Assets/Model/武器/短剑/短剑.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: DXkY4XmpVHghlvi+RW5VY5Y9VYkyC78gOdnFQMl/bvwmTLEvo0li4Fc= +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/武器/短剑/短剑贴图.png.meta b/Assets/Model/武器/短剑/短剑贴图.png.meta new file mode 100644 index 0000000..4c1240a --- /dev/null +++ b/Assets/Model/武器/短剑/短剑贴图.png.meta @@ -0,0 +1,177 @@ +fileFormatVersion: 2 +guid: Biwd4C+lBi8tj60qXDitAisCvGDmsmxry+6ss46PN7t69oiKgf2McJc= +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 14 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + webStreaming: 0 + priorityLevel: 0 + uploadedMode: 2 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 256 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WeixinMiniGame + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: PlayableAds + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + doOverrideTextureManagerOperations: 0 + platformOperationGroupSettings: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/第一章.meta b/Assets/Model/第一章.meta new file mode 100644 index 0000000..e48a72b --- /dev/null +++ b/Assets/Model/第一章.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: C3MZvHulVin6oyc/N0VO8uDy70QOtOBFEFovdRtHGiwnhuWIN1xCZJA= +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/人类士兵.meta b/Assets/Model/第一章/人类士兵.meta similarity index 100% rename from Assets/Model/人类士兵.meta rename to Assets/Model/第一章/人类士兵.meta diff --git a/Assets/Model/人类士兵/main-人类士兵-Idle.fbx b/Assets/Model/第一章/人类士兵/main-人类士兵-Idle.fbx similarity index 100% rename from Assets/Model/人类士兵/main-人类士兵-Idle.fbx rename to Assets/Model/第一章/人类士兵/main-人类士兵-Idle.fbx diff --git a/Assets/Model/人类士兵/main-人类士兵-Idle.fbx.meta b/Assets/Model/第一章/人类士兵/main-人类士兵-Idle.fbx.meta similarity index 100% rename from Assets/Model/人类士兵/main-人类士兵-Idle.fbx.meta rename to Assets/Model/第一章/人类士兵/main-人类士兵-Idle.fbx.meta diff --git a/Assets/Model/人类士兵/texture_pbr_20250901.png.meta b/Assets/Model/第一章/人类士兵/texture_pbr_20250901.png.meta similarity index 100% rename from Assets/Model/人类士兵/texture_pbr_20250901.png.meta rename to Assets/Model/第一章/人类士兵/texture_pbr_20250901.png.meta diff --git a/Assets/Model/人类士兵/人类-剑士兵.mat b/Assets/Model/第一章/人类士兵/人类-剑士兵.mat similarity index 100% rename from Assets/Model/人类士兵/人类-剑士兵.mat rename to Assets/Model/第一章/人类士兵/人类-剑士兵.mat diff --git a/Assets/Model/人类士兵/人类-剑士兵.mat.meta b/Assets/Model/第一章/人类士兵/人类-剑士兵.mat.meta similarity index 100% rename from Assets/Model/人类士兵/人类-剑士兵.mat.meta rename to Assets/Model/第一章/人类士兵/人类-剑士兵.mat.meta diff --git a/Assets/Model/人类士兵/人类士兵-attack.fbx b/Assets/Model/第一章/人类士兵/人类士兵-attack.fbx similarity index 100% rename from Assets/Model/人类士兵/人类士兵-attack.fbx rename to Assets/Model/第一章/人类士兵/人类士兵-attack.fbx diff --git a/Assets/Model/人类士兵/人类士兵-attack.fbx.meta b/Assets/Model/第一章/人类士兵/人类士兵-attack.fbx.meta similarity index 100% rename from Assets/Model/人类士兵/人类士兵-attack.fbx.meta rename to Assets/Model/第一章/人类士兵/人类士兵-attack.fbx.meta diff --git a/Assets/Model/人类士兵/人类士兵-walk.fbx b/Assets/Model/第一章/人类士兵/人类士兵-walk.fbx similarity index 100% rename from Assets/Model/人类士兵/人类士兵-walk.fbx rename to Assets/Model/第一章/人类士兵/人类士兵-walk.fbx diff --git a/Assets/Model/人类士兵/人类士兵-walk.fbx.meta b/Assets/Model/第一章/人类士兵/人类士兵-walk.fbx.meta similarity index 100% rename from Assets/Model/人类士兵/人类士兵-walk.fbx.meta rename to Assets/Model/第一章/人类士兵/人类士兵-walk.fbx.meta diff --git a/Assets/Model/人类士兵/人类士兵.obj b/Assets/Model/第一章/人类士兵/人类士兵.obj similarity index 100% rename from Assets/Model/人类士兵/人类士兵.obj rename to Assets/Model/第一章/人类士兵/人类士兵.obj diff --git a/Assets/Model/人类士兵/人类士兵.obj.meta b/Assets/Model/第一章/人类士兵/人类士兵.obj.meta similarity index 100% rename from Assets/Model/人类士兵/人类士兵.obj.meta rename to Assets/Model/第一章/人类士兵/人类士兵.obj.meta diff --git a/Assets/Model/人类士兵/人类士兵技能.fbx b/Assets/Model/第一章/人类士兵/人类士兵技能.fbx similarity index 100% rename from Assets/Model/人类士兵/人类士兵技能.fbx rename to Assets/Model/第一章/人类士兵/人类士兵技能.fbx diff --git a/Assets/Model/人类士兵/人类士兵技能.fbx.meta b/Assets/Model/第一章/人类士兵/人类士兵技能.fbx.meta similarity index 100% rename from Assets/Model/人类士兵/人类士兵技能.fbx.meta rename to Assets/Model/第一章/人类士兵/人类士兵技能.fbx.meta diff --git a/Assets/Model/人类士兵/新建材质.mat b/Assets/Model/第一章/人类士兵/新建材质.mat similarity index 100% rename from Assets/Model/人类士兵/新建材质.mat rename to Assets/Model/第一章/人类士兵/新建材质.mat diff --git a/Assets/Model/人类士兵/新建材质.mat.meta b/Assets/Model/第一章/人类士兵/新建材质.mat.meta similarity index 100% rename from Assets/Model/人类士兵/新建材质.mat.meta rename to Assets/Model/第一章/人类士兵/新建材质.mat.meta diff --git a/Assets/Model/人类士兵新.meta b/Assets/Model/第一章/人类士兵新.meta similarity index 100% rename from Assets/Model/人类士兵新.meta rename to Assets/Model/第一章/人类士兵新.meta diff --git a/Assets/Model/人类士兵新/人类士兵-攻击.fbx b/Assets/Model/第一章/人类士兵新/人类士兵-攻击.fbx similarity index 100% rename from Assets/Model/人类士兵新/人类士兵-攻击.fbx rename to Assets/Model/第一章/人类士兵新/人类士兵-攻击.fbx diff --git a/Assets/Model/人类士兵新/人类士兵-攻击.fbx.meta b/Assets/Model/第一章/人类士兵新/人类士兵-攻击.fbx.meta similarity index 98% rename from Assets/Model/人类士兵新/人类士兵-攻击.fbx.meta rename to Assets/Model/第一章/人类士兵新/人类士兵-攻击.fbx.meta index 73fbf4e..1392979 100644 --- a/Assets/Model/人类士兵新/人类士兵-攻击.fbx.meta +++ b/Assets/Model/第一章/人类士兵新/人类士兵-攻击.fbx.meta @@ -65,7 +65,14 @@ ModelImporter: mirror: 0 bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 curves: [] - events: [] + events: + - time: 0.34341908 + functionName: OnAttackEffect + data: + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 intervals: [] transformMask: [] maskType: 3 diff --git a/Assets/Model/人类士兵新/人类士兵.png.meta b/Assets/Model/第一章/人类士兵新/人类士兵.png.meta similarity index 100% rename from Assets/Model/人类士兵新/人类士兵.png.meta rename to Assets/Model/第一章/人类士兵新/人类士兵.png.meta diff --git a/Assets/Model/人类士兵新/人类士兵材质.mat b/Assets/Model/第一章/人类士兵新/人类士兵材质.mat similarity index 100% rename from Assets/Model/人类士兵新/人类士兵材质.mat rename to Assets/Model/第一章/人类士兵新/人类士兵材质.mat diff --git a/Assets/Model/人类士兵新/人类士兵材质.mat.meta b/Assets/Model/第一章/人类士兵新/人类士兵材质.mat.meta similarity index 100% rename from Assets/Model/人类士兵新/人类士兵材质.mat.meta rename to Assets/Model/第一章/人类士兵新/人类士兵材质.mat.meta diff --git a/Assets/Model/人类士兵新/待机.fbx b/Assets/Model/第一章/人类士兵新/待机.fbx similarity index 100% rename from Assets/Model/人类士兵新/待机.fbx rename to Assets/Model/第一章/人类士兵新/待机.fbx diff --git a/Assets/Model/人类士兵新/待机.fbx.meta b/Assets/Model/第一章/人类士兵新/待机.fbx.meta similarity index 99% rename from Assets/Model/人类士兵新/待机.fbx.meta rename to Assets/Model/第一章/人类士兵新/待机.fbx.meta index 568a71d..6568a23 100644 --- a/Assets/Model/人类士兵新/待机.fbx.meta +++ b/Assets/Model/第一章/人类士兵新/待机.fbx.meta @@ -48,7 +48,7 @@ ModelImporter: loop: 0 hasAdditiveReferencePose: 0 lockToRoot: 0 - loopTime: 0 + loopTime: 1 loopBlend: 0 loopBlendOrientation: 0 loopBlendPositionY: 0 diff --git a/Assets/Model/人类士兵新/技能.fbx b/Assets/Model/第一章/人类士兵新/技能.fbx similarity index 100% rename from Assets/Model/人类士兵新/技能.fbx rename to Assets/Model/第一章/人类士兵新/技能.fbx diff --git a/Assets/Model/人类士兵新/技能.fbx.meta b/Assets/Model/第一章/人类士兵新/技能.fbx.meta similarity index 97% rename from Assets/Model/人类士兵新/技能.fbx.meta rename to Assets/Model/第一章/人类士兵新/技能.fbx.meta index c0d569e..a37b960 100644 --- a/Assets/Model/人类士兵新/技能.fbx.meta +++ b/Assets/Model/第一章/人类士兵新/技能.fbx.meta @@ -60,7 +60,21 @@ ModelImporter: mirror: 0 bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 curves: [] - events: [] + events: + - time: 0.3585477 + functionName: OnSkillHit1 + data: + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + - time: 0.5733738 + functionName: OnSkillHit2 + data: + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 intervals: [] transformMask: [] maskType: 3 diff --git a/Assets/Model/人类士兵新/移动.fbx b/Assets/Model/第一章/人类士兵新/移动.fbx similarity index 100% rename from Assets/Model/人类士兵新/移动.fbx rename to Assets/Model/第一章/人类士兵新/移动.fbx diff --git a/Assets/Model/人类士兵新/移动.fbx.meta b/Assets/Model/第一章/人类士兵新/移动.fbx.meta similarity index 99% rename from Assets/Model/人类士兵新/移动.fbx.meta rename to Assets/Model/第一章/人类士兵新/移动.fbx.meta index b9d381b..b8484a7 100644 --- a/Assets/Model/人类士兵新/移动.fbx.meta +++ b/Assets/Model/第一章/人类士兵新/移动.fbx.meta @@ -48,7 +48,7 @@ ModelImporter: loop: 0 hasAdditiveReferencePose: 0 lockToRoot: 0 - loopTime: 0 + loopTime: 1 loopBlend: 0 loopBlendOrientation: 0 loopBlendPositionY: 0 diff --git a/Assets/Model/弓箭手.meta b/Assets/Model/第一章/弓箭手.meta similarity index 100% rename from Assets/Model/弓箭手.meta rename to Assets/Model/第一章/弓箭手.meta diff --git a/Assets/Model/弓箭手/弓箭手攻击.fbx b/Assets/Model/第一章/弓箭手/弓箭手攻击.fbx similarity index 100% rename from Assets/Model/弓箭手/弓箭手攻击.fbx rename to Assets/Model/第一章/弓箭手/弓箭手攻击.fbx diff --git a/Assets/Model/弓箭手/弓箭手攻击.fbx.meta b/Assets/Model/第一章/弓箭手/弓箭手攻击.fbx.meta similarity index 100% rename from Assets/Model/弓箭手/弓箭手攻击.fbx.meta rename to Assets/Model/第一章/弓箭手/弓箭手攻击.fbx.meta diff --git a/Assets/Model/弓箭手/弓箭手材质.mat b/Assets/Model/第一章/弓箭手/弓箭手材质.mat similarity index 100% rename from Assets/Model/弓箭手/弓箭手材质.mat rename to Assets/Model/第一章/弓箭手/弓箭手材质.mat diff --git a/Assets/Model/弓箭手/弓箭手材质.mat.meta b/Assets/Model/第一章/弓箭手/弓箭手材质.mat.meta similarity index 100% rename from Assets/Model/弓箭手/弓箭手材质.mat.meta rename to Assets/Model/第一章/弓箭手/弓箭手材质.mat.meta diff --git a/Assets/Model/弓箭手/弓箭手皮肤.png.meta b/Assets/Model/第一章/弓箭手/弓箭手皮肤.png.meta similarity index 100% rename from Assets/Model/弓箭手/弓箭手皮肤.png.meta rename to Assets/Model/第一章/弓箭手/弓箭手皮肤.png.meta diff --git a/Assets/Model/弓箭手/待机.fbx b/Assets/Model/第一章/弓箭手/待机.fbx similarity index 100% rename from Assets/Model/弓箭手/待机.fbx rename to Assets/Model/第一章/弓箭手/待机.fbx diff --git a/Assets/Model/弓箭手/待机.fbx.meta b/Assets/Model/第一章/弓箭手/待机.fbx.meta similarity index 100% rename from Assets/Model/弓箭手/待机.fbx.meta rename to Assets/Model/第一章/弓箭手/待机.fbx.meta diff --git a/Assets/Model/弓箭手/移动.fbx b/Assets/Model/第一章/弓箭手/移动.fbx similarity index 100% rename from Assets/Model/弓箭手/移动.fbx rename to Assets/Model/第一章/弓箭手/移动.fbx diff --git a/Assets/Model/弓箭手/移动.fbx.meta b/Assets/Model/第一章/弓箭手/移动.fbx.meta similarity index 100% rename from Assets/Model/弓箭手/移动.fbx.meta rename to Assets/Model/第一章/弓箭手/移动.fbx.meta diff --git a/Assets/Model/精锐守卫士兵.meta b/Assets/Model/第一章/精锐守卫士兵.meta similarity index 100% rename from Assets/Model/精锐守卫士兵.meta rename to Assets/Model/第一章/精锐守卫士兵.meta diff --git a/Assets/Model/精锐守卫士兵/Great Sword Idle.fbx b/Assets/Model/第一章/精锐守卫士兵/Great Sword Idle.fbx similarity index 100% rename from Assets/Model/精锐守卫士兵/Great Sword Idle.fbx rename to Assets/Model/第一章/精锐守卫士兵/Great Sword Idle.fbx diff --git a/Assets/Model/精锐守卫士兵/Great Sword Idle.fbx.meta b/Assets/Model/第一章/精锐守卫士兵/Great Sword Idle.fbx.meta similarity index 100% rename from Assets/Model/精锐守卫士兵/Great Sword Idle.fbx.meta rename to Assets/Model/第一章/精锐守卫士兵/Great Sword Idle.fbx.meta diff --git a/Assets/Model/精锐守卫士兵/Great Sword Slash.fbx b/Assets/Model/第一章/精锐守卫士兵/Great Sword Slash.fbx similarity index 100% rename from Assets/Model/精锐守卫士兵/Great Sword Slash.fbx rename to Assets/Model/第一章/精锐守卫士兵/Great Sword Slash.fbx diff --git a/Assets/Model/精锐守卫士兵/Great Sword Slash.fbx.meta b/Assets/Model/第一章/精锐守卫士兵/Great Sword Slash.fbx.meta similarity index 100% rename from Assets/Model/精锐守卫士兵/Great Sword Slash.fbx.meta rename to Assets/Model/第一章/精锐守卫士兵/Great Sword Slash.fbx.meta diff --git a/Assets/Model/精锐守卫士兵/Great Sword Walk.fbx b/Assets/Model/第一章/精锐守卫士兵/Great Sword Walk.fbx similarity index 100% rename from Assets/Model/精锐守卫士兵/Great Sword Walk.fbx rename to Assets/Model/第一章/精锐守卫士兵/Great Sword Walk.fbx diff --git a/Assets/Model/精锐守卫士兵/Great Sword Walk.fbx.meta b/Assets/Model/第一章/精锐守卫士兵/Great Sword Walk.fbx.meta similarity index 100% rename from Assets/Model/精锐守卫士兵/Great Sword Walk.fbx.meta rename to Assets/Model/第一章/精锐守卫士兵/Great Sword Walk.fbx.meta diff --git a/Assets/Model/精锐守卫士兵/大剑.fbx b/Assets/Model/第一章/精锐守卫士兵/大剑.fbx similarity index 100% rename from Assets/Model/精锐守卫士兵/大剑.fbx rename to Assets/Model/第一章/精锐守卫士兵/大剑.fbx diff --git a/Assets/Model/精锐守卫士兵/大剑.fbx.meta b/Assets/Model/第一章/精锐守卫士兵/大剑.fbx.meta similarity index 100% rename from Assets/Model/精锐守卫士兵/大剑.fbx.meta rename to Assets/Model/第一章/精锐守卫士兵/大剑.fbx.meta diff --git a/Assets/Model/精锐守卫士兵/大剑材质.mat b/Assets/Model/第一章/精锐守卫士兵/大剑材质.mat similarity index 100% rename from Assets/Model/精锐守卫士兵/大剑材质.mat rename to Assets/Model/第一章/精锐守卫士兵/大剑材质.mat diff --git a/Assets/Model/精锐守卫士兵/大剑材质.mat.meta b/Assets/Model/第一章/精锐守卫士兵/大剑材质.mat.meta similarity index 100% rename from Assets/Model/精锐守卫士兵/大剑材质.mat.meta rename to Assets/Model/第一章/精锐守卫士兵/大剑材质.mat.meta diff --git a/Assets/Model/精锐守卫士兵/大剑贴图.png.meta b/Assets/Model/第一章/精锐守卫士兵/大剑贴图.png.meta similarity index 100% rename from Assets/Model/精锐守卫士兵/大剑贴图.png.meta rename to Assets/Model/第一章/精锐守卫士兵/大剑贴图.png.meta diff --git a/Assets/Model/精锐守卫士兵/精锐士兵.mat b/Assets/Model/第一章/精锐守卫士兵/精锐士兵.mat similarity index 100% rename from Assets/Model/精锐守卫士兵/精锐士兵.mat rename to Assets/Model/第一章/精锐守卫士兵/精锐士兵.mat diff --git a/Assets/Model/精锐守卫士兵/精锐士兵.mat.meta b/Assets/Model/第一章/精锐守卫士兵/精锐士兵.mat.meta similarity index 100% rename from Assets/Model/精锐守卫士兵/精锐士兵.mat.meta rename to Assets/Model/第一章/精锐守卫士兵/精锐士兵.mat.meta diff --git a/Assets/Model/精锐守卫士兵/角色贴图.png b/Assets/Model/第一章/精锐守卫士兵/角色贴图.png similarity index 100% rename from Assets/Model/精锐守卫士兵/角色贴图.png rename to Assets/Model/第一章/精锐守卫士兵/角色贴图.png diff --git a/Assets/Model/精锐守卫士兵/角色贴图.png.meta b/Assets/Model/第一章/精锐守卫士兵/角色贴图.png.meta similarity index 100% rename from Assets/Model/精锐守卫士兵/角色贴图.png.meta rename to Assets/Model/第一章/精锐守卫士兵/角色贴图.png.meta diff --git a/Assets/Model/第二章.meta b/Assets/Model/第二章.meta new file mode 100644 index 0000000..1c751ff --- /dev/null +++ b/Assets/Model/第二章.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: XisbsHuuUSmDhibQZZKDMU7fELDX4aNbze9esbjGsRtaVsHYjS832ps= +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/弓箭猎人 1.meta b/Assets/Model/第二章/弓箭猎人 1.meta similarity index 100% rename from Assets/Model/弓箭猎人 1.meta rename to Assets/Model/第二章/弓箭猎人 1.meta diff --git a/Assets/Model/弓箭猎人 1/New Material.mat b/Assets/Model/第二章/弓箭猎人 1/New Material.mat similarity index 100% rename from Assets/Model/弓箭猎人 1/New Material.mat rename to Assets/Model/第二章/弓箭猎人 1/New Material.mat diff --git a/Assets/Model/弓箭猎人 1/New Material.mat.meta b/Assets/Model/第二章/弓箭猎人 1/New Material.mat.meta similarity index 100% rename from Assets/Model/弓箭猎人 1/New Material.mat.meta rename to Assets/Model/第二章/弓箭猎人 1/New Material.mat.meta diff --git a/Assets/Model/弓箭猎人 1/a739a16a5560a18587d30b3c049409ef.obj b/Assets/Model/第二章/弓箭猎人 1/a739a16a5560a18587d30b3c049409ef.obj similarity index 100% rename from Assets/Model/弓箭猎人 1/a739a16a5560a18587d30b3c049409ef.obj rename to Assets/Model/第二章/弓箭猎人 1/a739a16a5560a18587d30b3c049409ef.obj diff --git a/Assets/Model/弓箭猎人 1/a739a16a5560a18587d30b3c049409ef.obj.meta b/Assets/Model/第二章/弓箭猎人 1/a739a16a5560a18587d30b3c049409ef.obj.meta similarity index 100% rename from Assets/Model/弓箭猎人 1/a739a16a5560a18587d30b3c049409ef.obj.meta rename to Assets/Model/第二章/弓箭猎人 1/a739a16a5560a18587d30b3c049409ef.obj.meta diff --git a/Assets/Model/弓箭猎人 1/texture_pbr_20250901.png.meta b/Assets/Model/第二章/弓箭猎人 1/texture_pbr_20250901.png.meta similarity index 100% rename from Assets/Model/弓箭猎人 1/texture_pbr_20250901.png.meta rename to Assets/Model/第二章/弓箭猎人 1/texture_pbr_20250901.png.meta diff --git a/Assets/Model/弓箭猎人.meta b/Assets/Model/第二章/弓箭猎人.meta similarity index 100% rename from Assets/Model/弓箭猎人.meta rename to Assets/Model/第二章/弓箭猎人.meta diff --git a/Assets/Model/弓箭猎人/弓箭猎人攻击.fbx b/Assets/Model/第二章/弓箭猎人/弓箭猎人攻击.fbx similarity index 100% rename from Assets/Model/弓箭猎人/弓箭猎人攻击.fbx rename to Assets/Model/第二章/弓箭猎人/弓箭猎人攻击.fbx diff --git a/Assets/Model/弓箭猎人/弓箭猎人攻击.fbx.meta b/Assets/Model/第二章/弓箭猎人/弓箭猎人攻击.fbx.meta similarity index 100% rename from Assets/Model/弓箭猎人/弓箭猎人攻击.fbx.meta rename to Assets/Model/第二章/弓箭猎人/弓箭猎人攻击.fbx.meta diff --git a/Assets/Model/弓箭猎人/弓箭猎人材质.mat b/Assets/Model/第二章/弓箭猎人/弓箭猎人材质.mat similarity index 100% rename from Assets/Model/弓箭猎人/弓箭猎人材质.mat rename to Assets/Model/第二章/弓箭猎人/弓箭猎人材质.mat diff --git a/Assets/Model/弓箭猎人/弓箭猎人材质.mat.meta b/Assets/Model/第二章/弓箭猎人/弓箭猎人材质.mat.meta similarity index 100% rename from Assets/Model/弓箭猎人/弓箭猎人材质.mat.meta rename to Assets/Model/第二章/弓箭猎人/弓箭猎人材质.mat.meta diff --git a/Assets/Model/弓箭猎人/弓箭猎人贴图.png.meta b/Assets/Model/第二章/弓箭猎人/弓箭猎人贴图.png.meta similarity index 100% rename from Assets/Model/弓箭猎人/弓箭猎人贴图.png.meta rename to Assets/Model/第二章/弓箭猎人/弓箭猎人贴图.png.meta diff --git a/Assets/Model/弓箭猎人/待机.fbx b/Assets/Model/第二章/弓箭猎人/待机.fbx similarity index 100% rename from Assets/Model/弓箭猎人/待机.fbx rename to Assets/Model/第二章/弓箭猎人/待机.fbx diff --git a/Assets/Model/弓箭猎人/待机.fbx.meta b/Assets/Model/第二章/弓箭猎人/待机.fbx.meta similarity index 100% rename from Assets/Model/弓箭猎人/待机.fbx.meta rename to Assets/Model/第二章/弓箭猎人/待机.fbx.meta diff --git a/Assets/Model/弓箭猎人/移动.fbx b/Assets/Model/第二章/弓箭猎人/移动.fbx similarity index 100% rename from Assets/Model/弓箭猎人/移动.fbx rename to Assets/Model/第二章/弓箭猎人/移动.fbx diff --git a/Assets/Model/弓箭猎人/移动.fbx.meta b/Assets/Model/第二章/弓箭猎人/移动.fbx.meta similarity index 100% rename from Assets/Model/弓箭猎人/移动.fbx.meta rename to Assets/Model/第二章/弓箭猎人/移动.fbx.meta diff --git a/Assets/Model/第二章/狼人.meta b/Assets/Model/第二章/狼人.meta new file mode 100644 index 0000000..ca6f24f --- /dev/null +++ b/Assets/Model/第二章/狼人.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: DnsbvHj/U32erdS7D+7G2VmQkok8Rmwm9dLHXeVio2xOF8NDq3iruJE= +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/第二章/狼人/待机.fbx b/Assets/Model/第二章/狼人/待机.fbx new file mode 100644 index 0000000..f03d6fa Binary files /dev/null and b/Assets/Model/第二章/狼人/待机.fbx differ diff --git a/Assets/Model/第二章/狼人/待机.fbx.meta b/Assets/Model/第二章/狼人/待机.fbx.meta new file mode 100644 index 0000000..89c00ef --- /dev/null +++ b/Assets/Model/第二章/狼人/待机.fbx.meta @@ -0,0 +1,545 @@ +fileFormatVersion: 2 +guid: WX4XtnmrUXmOSb9g1UlF4C2YXTqFPX1Y8//xRzdz1Y0T2kwblzoX2eY= +ModelImporter: + serializedVersion: 22361 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 3 + aCLCompressionLevel: 3 + aCLCurvePrecision: 0.01 + aCLFastSampleMode: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: + - serializedVersion: 18 + name: "\u72FC\u4EBA\u5F85\u673A" + takeName: mixamo.com + internalID: -203655887218126122 + firstFrame: 0 + lastFrame: 110 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + lockToRoot: 0 + loopTime: 1 + loopBlend: 0 + loopBlendOrientation: 0 + loopBlendPositionY: 0 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + intervals: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + additiveType: 0 + basePoseType: 0 + additiveSelectedAnimation: {instanceID: 0} + additiveSelectedAnimationFrameIndex: 0 + isReadable: 0 + tuanjieGIEnable: 0 + tuanjieGIGenSDFFactor: 1 + tuanjieGIGenSDFBias: 0.25 + tuanjieGIDoubleSidedMode: 0 + tuanjieGIGenFacetNums: 12 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + totalVerticesCount: 0 + totalTrianglesCount: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + virtualGeometry: + virtualGeometry: 0 + useTransparent: 0 + setVGForeachMesh: 0 + isFirstUse: 1 + virtualGeometrySettings: + generateGeometryBuffer: 0 + surfaceCompensation: 0 + allMeshUse: 1 + ignoreSimpleMesh: 0 + transformScaleState: 0 + isPossibleOverflow: 0 + hasBoneData: 0 + isBoneCountOverflow: 0 + virtualGeometryPlatformSettings: + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: DefaultVirtualGeometryPlatform + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: Standalone + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: iPhone + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: Android + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + selectedVGMeshes: [] + supportVGMeshes: [] + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + overrideDefaultPose: 0 + humanDescription: + serializedVersion: 3 + human: + - boneName: mixamorig:Hips + humanName: Hips + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftUpLeg + humanName: LeftUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightUpLeg + humanName: RightUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftLeg + humanName: LeftLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightLeg + humanName: RightLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftFoot + humanName: LeftFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightFoot + humanName: RightFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Spine + humanName: Spine + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Spine1 + humanName: Chest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Neck + humanName: Neck + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Head + humanName: Head + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftShoulder + humanName: LeftShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightShoulder + humanName: RightShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftArm + humanName: LeftUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightArm + humanName: RightUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftForeArm + humanName: LeftLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightForeArm + humanName: RightLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftHand + humanName: LeftHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightHand + humanName: RightHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftToeBase + humanName: LeftToes + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightToeBase + humanName: RightToes + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Spine2 + humanName: UpperChest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + skeleton: + - name: "\u72FC\u4EBA\u653B\u51FB(Clone)" + parentName: + position: {x: 0, y: 0, z: 0} + rotation: {x: 0, y: 0, z: 0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: node_0 + parentName: "\u72FC\u4EBA\u653B\u51FB(Clone)" + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:Hips + parentName: "\u72FC\u4EBA\u653B\u51FB(Clone)" + position: {x: 0.0000030950084, y: 0.004629153, z: 0.000005088742} + rotation: {x: 1.8189897e-10, y: -8.613506e-20, z: -4.735324e-10, w: 1} + scale: {x: 1, y: 1, z: 0.99999994} + - name: mixamorig:LeftUpLeg + parentName: mixamorig:Hips + position: {x: -0.000790362, y: -0.0003312543, z: 0.000034110675} + rotation: {x: 0.002323065, y: -0.053081393, z: 0.99763256, w: 0.043660242} + scale: {x: 1.0000002, y: 1.0000002, z: 1} + - name: mixamorig:LeftLeg + parentName: mixamorig:LeftUpLeg + position: {x: -0, y: 0.0021154366, z: 0} + rotation: {x: -0.029839756, y: 0.0006429597, z: -0.021532256, w: 0.99932253} + scale: {x: 1.0000005, y: 1.0000002, z: 1.0000004} + - name: mixamorig:LeftFoot + parentName: mixamorig:LeftLeg + position: {x: -0, y: 0.0014739624, z: 3.469447e-20} + rotation: {x: 0.54529315, y: 0.112672314, z: -0.0742639, w: 0.82731205} + scale: {x: 1.000001, y: 1.0000005, z: 1.0000006} + - name: mixamorig:LeftToeBase + parentName: mixamorig:LeftFoot + position: {x: -1.3877787e-19, y: 0.0012729976, z: -1.3877787e-19} + rotation: {x: 0.24118778, y: 0.014663992, z: -0.0036448347, w: 0.9703608} + scale: {x: 0.9999996, y: 0.99999994, z: 0.9999997} + - name: mixamorig:LeftToe_End + parentName: mixamorig:LeftToeBase + position: {x: -0, y: 0.0005232207, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:RightUpLeg + parentName: mixamorig:Hips + position: {x: 0.000790362, y: -0.0003312543, z: 0.000022844877} + rotation: {x: -0.002111477, y: -0.048199356, z: 0.9978785, w: -0.043714385} + scale: {x: 1.0000002, y: 1.0000002, z: 1.0000002} + - name: mixamorig:RightLeg + parentName: mixamorig:RightUpLeg + position: {x: -0, y: 0.002113347, z: -5.2041703e-20} + rotation: {x: -0.03781653, y: -0.0008132118, z: 0.021484528, w: 0.9990534} + scale: {x: 1.0000006, y: 1.0000004, z: 1.0000001} + - name: mixamorig:RightFoot + parentName: mixamorig:RightLeg + position: {x: -0, y: 0.0014755143, z: 0} + rotation: {x: 0.55099493, y: -0.10983675, z: 0.073447585, w: 0.8239818} + scale: {x: 1, y: 0.99999994, z: 0.99999994} + - name: mixamorig:RightToeBase + parentName: mixamorig:RightFoot + position: {x: 2.7755575e-19, y: 0.0012875077, z: -6.938894e-20} + rotation: {x: 0.23677067, y: -0.026426762, z: 0.0064427033, w: 0.9711848} + scale: {x: 0.9999996, y: 0.9999997, z: 0.9999997} + - name: mixamorig:RightToe_End + parentName: mixamorig:RightToeBase + position: {x: -0, y: 0.0005113923, z: -8.673617e-21} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:Spine + parentName: mixamorig:Hips + position: {x: -0, y: 0.00059655996, z: -0.00008161151} + rotation: {x: -0.06792743, y: -7.6570514e-11, z: -2.1428481e-10, w: 0.99769026} + scale: {x: 1, y: 1, z: 1.0000001} + - name: mixamorig:Spine1 + parentName: mixamorig:Spine + position: {x: -0, y: 0.00070246926, z: 0} + rotation: {x: -0.00000010430813, y: -3.0716246e-10, z: 0.0000000010710126, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:Spine2 + parentName: mixamorig:Spine1 + position: {x: -0, y: 0.00080282125, z: 0} + rotation: {x: 0.000000022351742, y: 0.0000000011889004, z: 0.000000001206832, + w: 1} + scale: {x: 0.99999994, y: 1.0000001, z: 1.0000001} + - name: mixamorig:Neck + parentName: mixamorig:Spine2 + position: {x: -0, y: 0.00090317446, z: 1.31821e-10} + rotation: {x: 0.06792751, y: -0.0000000017159403, z: -0.0000000015753894, w: 0.99769026} + scale: {x: 1, y: 0.9999998, z: 0.9999999} + - name: mixamorig:Head + parentName: mixamorig:Neck + position: {x: -0, y: 0.000726347, z: 0.00020070502} + rotation: {x: -0.000000044703484, y: 0.0000000021827875, z: 7.2759593e-10, w: 1} + scale: {x: 1, y: 1.0000001, z: 1} + - name: mixamorig:HeadTop_End + parentName: mixamorig:Head + position: {x: -0, y: 0.0018354492, z: 0.0005071735} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:LeftShoulder + parentName: mixamorig:Spine2 + position: {x: -0.00042965537, y: 0.0007664637, z: -0.00002153463} + rotation: {x: 0.55490446, y: -0.42961565, z: 0.5831107, w: 0.4092596} + scale: {x: 1.0000001, y: 1.0000001, z: 1.0000002} + - name: mixamorig:LeftArm + parentName: mixamorig:LeftShoulder + position: {x: 1.3877787e-19, y: 0.0008919958, z: -1.110223e-18} + rotation: {x: -0.13368575, y: -0.07338428, z: -0.012510804, w: 0.98822385} + scale: {x: 1.0000001, y: 1.0000004, z: 1.0000004} + - name: mixamorig:LeftForeArm + parentName: mixamorig:LeftArm + position: {x: -0, y: 0.0019093632, z: 0} + rotation: {x: -0.006329544, y: -0.296342, z: -0.022776976, w: 0.95478934} + scale: {x: 0.9999996, y: 1.0000007, z: 1.0000005} + - name: mixamorig:LeftHand + parentName: mixamorig:LeftForeArm + position: {x: -2.0816681e-19, y: 0.0013553266, z: 0} + rotation: {x: -0, y: -0, z: -0.0000000037252899, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:RightShoulder + parentName: mixamorig:Spine2 + position: {x: 0.00042965537, y: 0.000765703, z: -0.00001597427} + rotation: {x: -0.5590448, y: -0.42640686, z: 0.57987845, w: -0.41156673} + scale: {x: 1.0000001, y: 1.0000001, z: 1.0000002} + - name: mixamorig:RightArm + parentName: mixamorig:RightShoulder + position: {x: -0, y: 0.0008919958, z: 0} + rotation: {x: 0.13425338, y: -0.09040197, z: -0.0030925567, w: -0.98680997} + scale: {x: 1.0000002, y: 1.0000002, z: 1.0000006} + - name: mixamorig:RightForeArm + parentName: mixamorig:RightArm + position: {x: -0, y: 0.0019096407, z: 5.551115e-19} + rotation: {x: -0.0071950112, y: 0.2715749, z: 0.02268568, w: 0.962123} + scale: {x: 0.99999994, y: 0.99999994, z: 0.99999994} + - name: mixamorig:RightHand + parentName: mixamorig:RightForeArm + position: {x: -0, y: 0.001360782, z: 5.551115e-19} + rotation: {x: -0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + namedPoseList: + - name: Default + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + defaultPoseIndex: -1 + hasTranslationDoF: 0 + hasExtraRoot: 1 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 3 + humanoidOversampling: 1 + avatarSetup: 2 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/第二章/狼人/狼人.mat b/Assets/Model/第二章/狼人/狼人.mat new file mode 100644 index 0000000..4f21ce9 --- /dev/null +++ b/Assets/Model/第二章/狼人/狼人.mat @@ -0,0 +1,83 @@ +%YAML 1.1 +%TAG !u! tag:yousandi.cn,2023: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: "\u72FC\u4EBA" + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: de475f70575c12b4ba2328e3fc7efbf6, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Assets/Model/第二章/狼人/狼人.mat.meta b/Assets/Model/第二章/狼人/狼人.mat.meta new file mode 100644 index 0000000..353e522 --- /dev/null +++ b/Assets/Model/第二章/狼人/狼人.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: CHxOtXuuAnyKdNN19YYdafhi60UD3fZ6MH/FPbbxDmOUZ1cK/Dc5RnI= +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/第二章/狼人/狼人攻击.fbx b/Assets/Model/第二章/狼人/狼人攻击.fbx new file mode 100644 index 0000000..2ecaca1 Binary files /dev/null and b/Assets/Model/第二章/狼人/狼人攻击.fbx differ diff --git a/Assets/Model/第二章/狼人/狼人攻击.fbx.meta b/Assets/Model/第二章/狼人/狼人攻击.fbx.meta new file mode 100644 index 0000000..8b1b161 --- /dev/null +++ b/Assets/Model/第二章/狼人/狼人攻击.fbx.meta @@ -0,0 +1,564 @@ +fileFormatVersion: 2 +guid: DC4ftiv8B36YFEf060FTCbVewLQ4KIBZenkYRS9wLsjftuobQzEsTx4= +ModelImporter: + serializedVersion: 22361 + internalIDToNameTable: [] + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: No Name + second: {fileID: 2100000, guid: 76a0a3a74d370a14496770720328663e, type: 2} + materials: + materialImportMode: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 3 + aCLCompressionLevel: 3 + aCLCurvePrecision: 0.01 + aCLFastSampleMode: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: + - serializedVersion: 18 + name: "\u72FC\u4EBA\u653B\u51FB" + takeName: mixamo.com + internalID: -203655887218126122 + firstFrame: 0 + lastFrame: 33 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + lockToRoot: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 0 + loopBlendPositionY: 0 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: + - time: 0.54800594 + functionName: OnAttackEffect + data: + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + intervals: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + additiveType: 0 + basePoseType: 0 + additiveSelectedAnimation: {instanceID: 0} + additiveSelectedAnimationFrameIndex: 0 + isReadable: 0 + tuanjieGIEnable: 0 + tuanjieGIGenSDFFactor: 1 + tuanjieGIGenSDFBias: 0.25 + tuanjieGIDoubleSidedMode: 0 + tuanjieGIGenFacetNums: 12 + meshes: + lODScreenPercentages: [] + globalScale: 200 + meshCompression: 0 + totalVerticesCount: 8075 + totalTrianglesCount: 5000 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + virtualGeometry: + virtualGeometry: 0 + useTransparent: 0 + setVGForeachMesh: 0 + isFirstUse: 1 + virtualGeometrySettings: + generateGeometryBuffer: 0 + surfaceCompensation: 0 + allMeshUse: 1 + ignoreSimpleMesh: 0 + transformScaleState: 0 + isPossibleOverflow: 0 + hasBoneData: 0 + isBoneCountOverflow: 0 + virtualGeometryPlatformSettings: + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: DefaultVirtualGeometryPlatform + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: Standalone + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: iPhone + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: Android + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + selectedVGMeshes: + - index: 0 + meshName: node_0 + lodLevel: 0 + meshGeometryBuffer: 0 + supportVGMeshes: + - index: 0 + meshName: node_0 + lodLevel: 0 + meshGeometryBuffer: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + overrideDefaultPose: 0 + humanDescription: + serializedVersion: 3 + human: + - boneName: mixamorig:Hips + humanName: Hips + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftUpLeg + humanName: LeftUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightUpLeg + humanName: RightUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftLeg + humanName: LeftLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightLeg + humanName: RightLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftFoot + humanName: LeftFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightFoot + humanName: RightFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Spine + humanName: Spine + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Spine1 + humanName: Chest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Neck + humanName: Neck + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Head + humanName: Head + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftShoulder + humanName: LeftShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightShoulder + humanName: RightShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftArm + humanName: LeftUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightArm + humanName: RightUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftForeArm + humanName: LeftLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightForeArm + humanName: RightLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftHand + humanName: LeftHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightHand + humanName: RightHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftToeBase + humanName: LeftToes + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightToeBase + humanName: RightToes + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Spine2 + humanName: UpperChest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + skeleton: + - name: "\u72FC\u4EBA\u653B\u51FB(Clone)" + parentName: + position: {x: 0, y: 0, z: 0} + rotation: {x: 0, y: 0, z: 0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: node_0 + parentName: "\u72FC\u4EBA\u653B\u51FB(Clone)" + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:Hips + parentName: "\u72FC\u4EBA\u653B\u51FB(Clone)" + position: {x: 0.000006190017, y: 0.009258306, z: 0.000010177484} + rotation: {x: 1.8189897e-10, y: -8.613506e-20, z: -4.735324e-10, w: 1} + scale: {x: 1, y: 1, z: 0.99999994} + - name: mixamorig:LeftUpLeg + parentName: mixamorig:Hips + position: {x: -0.001580724, y: -0.0006625086, z: 0.00006822136} + rotation: {x: 0.002323065, y: -0.053081393, z: 0.99763256, w: 0.043660242} + scale: {x: 1.0000002, y: 1.0000002, z: 1} + - name: mixamorig:LeftLeg + parentName: mixamorig:LeftUpLeg + position: {x: -0, y: 0.0042308737, z: 0} + rotation: {x: -0.029839756, y: 0.0006429597, z: -0.021532256, w: 0.99932253} + scale: {x: 1.0000005, y: 1.0000002, z: 1.0000004} + - name: mixamorig:LeftFoot + parentName: mixamorig:LeftLeg + position: {x: -0, y: 0.0029479251, z: 6.9388944e-20} + rotation: {x: 0.54529315, y: 0.112672314, z: -0.0742639, w: 0.82731205} + scale: {x: 1.000001, y: 1.0000005, z: 1.0000006} + - name: mixamorig:LeftToeBase + parentName: mixamorig:LeftFoot + position: {x: -2.7755578e-19, y: 0.0025459952, z: -2.7755578e-19} + rotation: {x: 0.24118778, y: 0.014663992, z: -0.0036448347, w: 0.9703608} + scale: {x: 0.9999996, y: 0.99999994, z: 0.9999997} + - name: mixamorig:LeftToe_End + parentName: mixamorig:LeftToeBase + position: {x: -0, y: 0.0010464414, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:RightUpLeg + parentName: mixamorig:Hips + position: {x: 0.001580724, y: -0.0006625086, z: 0.000045689758} + rotation: {x: -0.002111477, y: -0.048199356, z: 0.9978785, w: -0.043714385} + scale: {x: 1.0000002, y: 1.0000002, z: 1.0000002} + - name: mixamorig:RightLeg + parentName: mixamorig:RightUpLeg + position: {x: -0, y: 0.004226694, z: -1.04083406e-19} + rotation: {x: -0.03781653, y: -0.0008132118, z: 0.021484528, w: 0.9990534} + scale: {x: 1.0000006, y: 1.0000004, z: 1.0000001} + - name: mixamorig:RightFoot + parentName: mixamorig:RightLeg + position: {x: -0, y: 0.0029510285, z: 0} + rotation: {x: 0.55099493, y: -0.10983675, z: 0.073447585, w: 0.8239818} + scale: {x: 1, y: 0.99999994, z: 0.99999994} + - name: mixamorig:RightToeBase + parentName: mixamorig:RightFoot + position: {x: 5.5511155e-19, y: 0.0025750154, z: -1.3877789e-19} + rotation: {x: 0.23677067, y: -0.026426762, z: 0.0064427033, w: 0.9711848} + scale: {x: 0.9999996, y: 0.9999997, z: 0.9999997} + - name: mixamorig:RightToe_End + parentName: mixamorig:RightToeBase + position: {x: -0, y: 0.0010227846, z: -1.7347236e-20} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:Spine + parentName: mixamorig:Hips + position: {x: -0, y: 0.0011931198, z: -0.00016322303} + rotation: {x: -0.06792743, y: -7.6570514e-11, z: -2.1428481e-10, w: 0.99769026} + scale: {x: 1, y: 1, z: 1.0000001} + - name: mixamorig:Spine1 + parentName: mixamorig:Spine + position: {x: -0, y: 0.0014049385, z: 0} + rotation: {x: -0.00000010430813, y: -3.0716246e-10, z: 0.0000000010710126, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:Spine2 + parentName: mixamorig:Spine1 + position: {x: -0, y: 0.0016056426, z: 0} + rotation: {x: 0.000000022351742, y: 0.0000000011889004, z: 0.000000001206832, + w: 1} + scale: {x: 0.99999994, y: 1.0000001, z: 1.0000001} + - name: mixamorig:Neck + parentName: mixamorig:Spine2 + position: {x: -0, y: 0.0018063488, z: 2.63642e-10} + rotation: {x: 0.06792751, y: -0.0000000017159403, z: -0.0000000015753894, w: 0.99769026} + scale: {x: 1, y: 0.9999998, z: 0.9999999} + - name: mixamorig:Head + parentName: mixamorig:Neck + position: {x: -0, y: 0.001452694, z: 0.00040141007} + rotation: {x: -0.000000044703484, y: 0.0000000021827875, z: 7.2759593e-10, w: 1} + scale: {x: 1, y: 1.0000001, z: 1} + - name: mixamorig:HeadTop_End + parentName: mixamorig:Head + position: {x: -0, y: 0.0036708983, z: 0.0010143471} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:LeftShoulder + parentName: mixamorig:Spine2 + position: {x: -0.0008593107, y: 0.0015329275, z: -0.000043069263} + rotation: {x: 0.55490446, y: -0.42961565, z: 0.5831107, w: 0.4092596} + scale: {x: 1.0000001, y: 1.0000001, z: 1.0000002} + - name: mixamorig:LeftArm + parentName: mixamorig:LeftShoulder + position: {x: 2.7755578e-19, y: 0.0017839916, z: -2.2204462e-18} + rotation: {x: -0.13368575, y: -0.07338428, z: -0.012510804, w: 0.98822385} + scale: {x: 1.0000001, y: 1.0000004, z: 1.0000004} + - name: mixamorig:LeftForeArm + parentName: mixamorig:LeftArm + position: {x: -0, y: 0.0038187266, z: 0} + rotation: {x: -0.006329544, y: -0.296342, z: -0.022776976, w: 0.95478934} + scale: {x: 0.9999996, y: 1.0000007, z: 1.0000005} + - name: mixamorig:LeftHand + parentName: mixamorig:LeftForeArm + position: {x: -4.1633362e-19, y: 0.0027106532, z: 0} + rotation: {x: -0, y: -0, z: -0.0000000037252899, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:RightShoulder + parentName: mixamorig:Spine2 + position: {x: 0.0008593107, y: 0.001531406, z: -0.00003194854} + rotation: {x: -0.5590448, y: -0.42640686, z: 0.57987845, w: -0.41156673} + scale: {x: 1.0000001, y: 1.0000001, z: 1.0000002} + - name: mixamorig:RightArm + parentName: mixamorig:RightShoulder + position: {x: -0, y: 0.0017839916, z: 0} + rotation: {x: 0.13425338, y: -0.09040197, z: -0.0030925567, w: -0.98680997} + scale: {x: 1.0000002, y: 1.0000002, z: 1.0000006} + - name: mixamorig:RightForeArm + parentName: mixamorig:RightArm + position: {x: -0, y: 0.0038192812, z: 1.1102231e-18} + rotation: {x: -0.0071950112, y: 0.2715749, z: 0.02268568, w: 0.962123} + scale: {x: 0.99999994, y: 0.99999994, z: 0.99999994} + - name: mixamorig:RightHand + parentName: mixamorig:RightForeArm + position: {x: -0, y: 0.0027215641, z: 1.1102231e-18} + rotation: {x: -0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + namedPoseList: + - name: Default + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 2 + rootMotionBoneName: + defaultPoseIndex: -1 + hasTranslationDoF: 0 + hasExtraRoot: 1 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 3 + humanoidOversampling: 1 + avatarSetup: 1 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/第二章/狼人/狼人贴图.png.meta b/Assets/Model/第二章/狼人/狼人贴图.png.meta new file mode 100644 index 0000000..dd58631 --- /dev/null +++ b/Assets/Model/第二章/狼人/狼人贴图.png.meta @@ -0,0 +1,177 @@ +fileFormatVersion: 2 +guid: Wy8bsi/7VHuTgYChRDfjoZIYRHTfSo6HNrqNNALqxunn7/ub5TjqJZg= +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 14 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + webStreaming: 0 + priorityLevel: 0 + uploadedMode: 2 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 512 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WeixinMiniGame + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: PlayableAds + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + doOverrideTextureManagerOperations: 0 + platformOperationGroupSettings: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/第二章/狼人/移动.fbx b/Assets/Model/第二章/狼人/移动.fbx new file mode 100644 index 0000000..4abad2a Binary files /dev/null and b/Assets/Model/第二章/狼人/移动.fbx differ diff --git a/Assets/Model/第二章/狼人/移动.fbx.meta b/Assets/Model/第二章/狼人/移动.fbx.meta new file mode 100644 index 0000000..c244187 --- /dev/null +++ b/Assets/Model/第二章/狼人/移动.fbx.meta @@ -0,0 +1,545 @@ +fileFormatVersion: 2 +guid: XiwWsC/5AnNGBPHfYTA/h4ajYhD/Mb+6Hw2PqkFuBjtlSqV66ioFUiQ= +ModelImporter: + serializedVersion: 22361 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 3 + aCLCompressionLevel: 3 + aCLCurvePrecision: 0.01 + aCLFastSampleMode: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: + - serializedVersion: 18 + name: "\u72FC\u4EBA\u79FB\u52A8" + takeName: mixamo.com + internalID: -203655887218126122 + firstFrame: 0 + lastFrame: 40 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + lockToRoot: 0 + loopTime: 1 + loopBlend: 0 + loopBlendOrientation: 0 + loopBlendPositionY: 0 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + intervals: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + additiveType: 0 + basePoseType: 0 + additiveSelectedAnimation: {instanceID: 0} + additiveSelectedAnimationFrameIndex: 0 + isReadable: 0 + tuanjieGIEnable: 0 + tuanjieGIGenSDFFactor: 1 + tuanjieGIGenSDFBias: 0.25 + tuanjieGIDoubleSidedMode: 0 + tuanjieGIGenFacetNums: 12 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + totalVerticesCount: 0 + totalTrianglesCount: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + virtualGeometry: + virtualGeometry: 0 + useTransparent: 0 + setVGForeachMesh: 0 + isFirstUse: 1 + virtualGeometrySettings: + generateGeometryBuffer: 0 + surfaceCompensation: 0 + allMeshUse: 1 + ignoreSimpleMesh: 0 + transformScaleState: 0 + isPossibleOverflow: 0 + hasBoneData: 0 + isBoneCountOverflow: 0 + virtualGeometryPlatformSettings: + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: DefaultVirtualGeometryPlatform + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: Standalone + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: iPhone + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + - serializedVersion: 0 + overridden: 0 + ignorePlatformSupport: 0 + buildTarget: Android + positionPrecision: -2147483648 + normalPrecision: -2147483648 + tangentPrecision: -2147483648 + boneWeightPrecision: -2147483648 + detailedTriangleCount: 0 + detailedVertexCount: 0 + rootPageSize: 0 + streamablePageSize: 0 + reserveTrianglePercent: 100 + reserveDetailLevel: 0 + selectedVGMeshes: [] + supportVGMeshes: [] + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + overrideDefaultPose: 0 + humanDescription: + serializedVersion: 3 + human: + - boneName: mixamorig:Hips + humanName: Hips + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftUpLeg + humanName: LeftUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightUpLeg + humanName: RightUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftLeg + humanName: LeftLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightLeg + humanName: RightLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftFoot + humanName: LeftFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightFoot + humanName: RightFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Spine + humanName: Spine + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Spine1 + humanName: Chest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Neck + humanName: Neck + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Head + humanName: Head + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftShoulder + humanName: LeftShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightShoulder + humanName: RightShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftArm + humanName: LeftUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightArm + humanName: RightUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftForeArm + humanName: LeftLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightForeArm + humanName: RightLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftHand + humanName: LeftHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightHand + humanName: RightHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:LeftToeBase + humanName: LeftToes + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:RightToeBase + humanName: RightToes + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: mixamorig:Spine2 + humanName: UpperChest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + skeleton: + - name: "\u72FC\u4EBA\u653B\u51FB(Clone)" + parentName: + position: {x: 0, y: 0, z: 0} + rotation: {x: 0, y: 0, z: 0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: node_0 + parentName: "\u72FC\u4EBA\u653B\u51FB(Clone)" + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:Hips + parentName: "\u72FC\u4EBA\u653B\u51FB(Clone)" + position: {x: 0.0000030950084, y: 0.004629153, z: 0.000005088742} + rotation: {x: 1.8189897e-10, y: -8.613506e-20, z: -4.735324e-10, w: 1} + scale: {x: 1, y: 1, z: 0.99999994} + - name: mixamorig:LeftUpLeg + parentName: mixamorig:Hips + position: {x: -0.000790362, y: -0.0003312543, z: 0.000034110675} + rotation: {x: 0.002323065, y: -0.053081393, z: 0.99763256, w: 0.043660242} + scale: {x: 1.0000002, y: 1.0000002, z: 1} + - name: mixamorig:LeftLeg + parentName: mixamorig:LeftUpLeg + position: {x: -0, y: 0.0021154366, z: 0} + rotation: {x: -0.029839756, y: 0.0006429597, z: -0.021532256, w: 0.99932253} + scale: {x: 1.0000005, y: 1.0000002, z: 1.0000004} + - name: mixamorig:LeftFoot + parentName: mixamorig:LeftLeg + position: {x: -0, y: 0.0014739624, z: 3.469447e-20} + rotation: {x: 0.54529315, y: 0.112672314, z: -0.0742639, w: 0.82731205} + scale: {x: 1.000001, y: 1.0000005, z: 1.0000006} + - name: mixamorig:LeftToeBase + parentName: mixamorig:LeftFoot + position: {x: -1.3877787e-19, y: 0.0012729976, z: -1.3877787e-19} + rotation: {x: 0.24118778, y: 0.014663992, z: -0.0036448347, w: 0.9703608} + scale: {x: 0.9999996, y: 0.99999994, z: 0.9999997} + - name: mixamorig:LeftToe_End + parentName: mixamorig:LeftToeBase + position: {x: -0, y: 0.0005232207, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:RightUpLeg + parentName: mixamorig:Hips + position: {x: 0.000790362, y: -0.0003312543, z: 0.000022844877} + rotation: {x: -0.002111477, y: -0.048199356, z: 0.9978785, w: -0.043714385} + scale: {x: 1.0000002, y: 1.0000002, z: 1.0000002} + - name: mixamorig:RightLeg + parentName: mixamorig:RightUpLeg + position: {x: -0, y: 0.002113347, z: -5.2041703e-20} + rotation: {x: -0.03781653, y: -0.0008132118, z: 0.021484528, w: 0.9990534} + scale: {x: 1.0000006, y: 1.0000004, z: 1.0000001} + - name: mixamorig:RightFoot + parentName: mixamorig:RightLeg + position: {x: -0, y: 0.0014755143, z: 0} + rotation: {x: 0.55099493, y: -0.10983675, z: 0.073447585, w: 0.8239818} + scale: {x: 1, y: 0.99999994, z: 0.99999994} + - name: mixamorig:RightToeBase + parentName: mixamorig:RightFoot + position: {x: 2.7755575e-19, y: 0.0012875077, z: -6.938894e-20} + rotation: {x: 0.23677067, y: -0.026426762, z: 0.0064427033, w: 0.9711848} + scale: {x: 0.9999996, y: 0.9999997, z: 0.9999997} + - name: mixamorig:RightToe_End + parentName: mixamorig:RightToeBase + position: {x: -0, y: 0.0005113923, z: -8.673617e-21} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:Spine + parentName: mixamorig:Hips + position: {x: -0, y: 0.00059655996, z: -0.00008161151} + rotation: {x: -0.06792743, y: -7.6570514e-11, z: -2.1428481e-10, w: 0.99769026} + scale: {x: 1, y: 1, z: 1.0000001} + - name: mixamorig:Spine1 + parentName: mixamorig:Spine + position: {x: -0, y: 0.00070246926, z: 0} + rotation: {x: -0.00000010430813, y: -3.0716246e-10, z: 0.0000000010710126, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:Spine2 + parentName: mixamorig:Spine1 + position: {x: -0, y: 0.00080282125, z: 0} + rotation: {x: 0.000000022351742, y: 0.0000000011889004, z: 0.000000001206832, + w: 1} + scale: {x: 0.99999994, y: 1.0000001, z: 1.0000001} + - name: mixamorig:Neck + parentName: mixamorig:Spine2 + position: {x: -0, y: 0.00090317446, z: 1.31821e-10} + rotation: {x: 0.06792751, y: -0.0000000017159403, z: -0.0000000015753894, w: 0.99769026} + scale: {x: 1, y: 0.9999998, z: 0.9999999} + - name: mixamorig:Head + parentName: mixamorig:Neck + position: {x: -0, y: 0.000726347, z: 0.00020070502} + rotation: {x: -0.000000044703484, y: 0.0000000021827875, z: 7.2759593e-10, w: 1} + scale: {x: 1, y: 1.0000001, z: 1} + - name: mixamorig:HeadTop_End + parentName: mixamorig:Head + position: {x: -0, y: 0.0018354492, z: 0.0005071735} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:LeftShoulder + parentName: mixamorig:Spine2 + position: {x: -0.00042965537, y: 0.0007664637, z: -0.00002153463} + rotation: {x: 0.55490446, y: -0.42961565, z: 0.5831107, w: 0.4092596} + scale: {x: 1.0000001, y: 1.0000001, z: 1.0000002} + - name: mixamorig:LeftArm + parentName: mixamorig:LeftShoulder + position: {x: 1.3877787e-19, y: 0.0008919958, z: -1.110223e-18} + rotation: {x: -0.13368575, y: -0.07338428, z: -0.012510804, w: 0.98822385} + scale: {x: 1.0000001, y: 1.0000004, z: 1.0000004} + - name: mixamorig:LeftForeArm + parentName: mixamorig:LeftArm + position: {x: -0, y: 0.0019093632, z: 0} + rotation: {x: -0.006329544, y: -0.296342, z: -0.022776976, w: 0.95478934} + scale: {x: 0.9999996, y: 1.0000007, z: 1.0000005} + - name: mixamorig:LeftHand + parentName: mixamorig:LeftForeArm + position: {x: -2.0816681e-19, y: 0.0013553266, z: 0} + rotation: {x: -0, y: -0, z: -0.0000000037252899, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: mixamorig:RightShoulder + parentName: mixamorig:Spine2 + position: {x: 0.00042965537, y: 0.000765703, z: -0.00001597427} + rotation: {x: -0.5590448, y: -0.42640686, z: 0.57987845, w: -0.41156673} + scale: {x: 1.0000001, y: 1.0000001, z: 1.0000002} + - name: mixamorig:RightArm + parentName: mixamorig:RightShoulder + position: {x: -0, y: 0.0008919958, z: 0} + rotation: {x: 0.13425338, y: -0.09040197, z: -0.0030925567, w: -0.98680997} + scale: {x: 1.0000002, y: 1.0000002, z: 1.0000006} + - name: mixamorig:RightForeArm + parentName: mixamorig:RightArm + position: {x: -0, y: 0.0019096407, z: 5.551115e-19} + rotation: {x: -0.0071950112, y: 0.2715749, z: 0.02268568, w: 0.962123} + scale: {x: 0.99999994, y: 0.99999994, z: 0.99999994} + - name: mixamorig:RightHand + parentName: mixamorig:RightForeArm + position: {x: -0, y: 0.001360782, z: 5.551115e-19} + rotation: {x: -0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + namedPoseList: + - name: Default + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + defaultPoseIndex: -1 + hasTranslationDoF: 0 + hasExtraRoot: 1 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 3 + humanoidOversampling: 1 + avatarSetup: 2 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/第二章/荒野流寇.meta b/Assets/Model/第二章/荒野流寇.meta new file mode 100644 index 0000000..bae3f33 --- /dev/null +++ b/Assets/Model/第二章/荒野流寇.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: C3JKtSmpAnPvGVr7w+A19FElHIFrKeMM24PSIpyHa+yb+rR3bbZxCAE= +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Model/蓝色怪物.meta b/Assets/Model/第二章/蓝色怪物.meta similarity index 100% rename from Assets/Model/蓝色怪物.meta rename to Assets/Model/第二章/蓝色怪物.meta diff --git a/Assets/Model/蓝色怪物/蓝色怪物-怒吼.fbx b/Assets/Model/第二章/蓝色怪物/蓝色怪物-怒吼.fbx similarity index 100% rename from Assets/Model/蓝色怪物/蓝色怪物-怒吼.fbx rename to Assets/Model/第二章/蓝色怪物/蓝色怪物-怒吼.fbx diff --git a/Assets/Model/蓝色怪物/蓝色怪物-怒吼.fbx.meta b/Assets/Model/第二章/蓝色怪物/蓝色怪物-怒吼.fbx.meta similarity index 100% rename from Assets/Model/蓝色怪物/蓝色怪物-怒吼.fbx.meta rename to Assets/Model/第二章/蓝色怪物/蓝色怪物-怒吼.fbx.meta diff --git a/Assets/Model/蓝色怪物/蓝色怪物动作-待命.fbx b/Assets/Model/第二章/蓝色怪物/蓝色怪物动作-待命.fbx similarity index 100% rename from Assets/Model/蓝色怪物/蓝色怪物动作-待命.fbx rename to Assets/Model/第二章/蓝色怪物/蓝色怪物动作-待命.fbx diff --git a/Assets/Model/蓝色怪物/蓝色怪物动作-待命.fbx.meta b/Assets/Model/第二章/蓝色怪物/蓝色怪物动作-待命.fbx.meta similarity index 100% rename from Assets/Model/蓝色怪物/蓝色怪物动作-待命.fbx.meta rename to Assets/Model/第二章/蓝色怪物/蓝色怪物动作-待命.fbx.meta diff --git a/Assets/Model/蓝色怪物/蓝色怪物动作-挥剑.fbx b/Assets/Model/第二章/蓝色怪物/蓝色怪物动作-挥剑.fbx similarity index 100% rename from Assets/Model/蓝色怪物/蓝色怪物动作-挥剑.fbx rename to Assets/Model/第二章/蓝色怪物/蓝色怪物动作-挥剑.fbx diff --git a/Assets/Model/蓝色怪物/蓝色怪物动作-挥剑.fbx.meta b/Assets/Model/第二章/蓝色怪物/蓝色怪物动作-挥剑.fbx.meta similarity index 100% rename from Assets/Model/蓝色怪物/蓝色怪物动作-挥剑.fbx.meta rename to Assets/Model/第二章/蓝色怪物/蓝色怪物动作-挥剑.fbx.meta diff --git a/Assets/Model/蓝色怪物/蓝色怪物动作-行走.fbx b/Assets/Model/第二章/蓝色怪物/蓝色怪物动作-行走.fbx similarity index 100% rename from Assets/Model/蓝色怪物/蓝色怪物动作-行走.fbx rename to Assets/Model/第二章/蓝色怪物/蓝色怪物动作-行走.fbx diff --git a/Assets/Model/蓝色怪物/蓝色怪物动作-行走.fbx.meta b/Assets/Model/第二章/蓝色怪物/蓝色怪物动作-行走.fbx.meta similarity index 100% rename from Assets/Model/蓝色怪物/蓝色怪物动作-行走.fbx.meta rename to Assets/Model/第二章/蓝色怪物/蓝色怪物动作-行走.fbx.meta diff --git a/Assets/Scenes/CoreScene.scene b/Assets/Scenes/CoreScene.scene index 4b3404b..cd4f4a6 100644 --- a/Assets/Scenes/CoreScene.scene +++ b/Assets/Scenes/CoreScene.scene @@ -398,6 +398,18 @@ Transform: - {fileID: 2128711033} m_Father: {fileID: 1930960144} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!134 &179357613 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ' (Instance) (Instance) (Instance)' + dynamicFriction: 0.6 + staticFriction: 0.6 + bounciness: 0 + frictionCombine: 0 + bounceCombine: 0 --- !u!1 &198448602 GameObject: m_ObjectHideFlags: 0 @@ -594,7 +606,7 @@ CharacterController: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 357323599} - m_Material: {fileID: 1255655232} + m_Material: {fileID: 179357613} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 @@ -725,6 +737,86 @@ Transform: - {fileID: 293757549} m_Father: {fileID: 505716641} m_LocalEulerAnglesHint: {x: 98.2, y: 1.88, z: -57.08} +--- !u!1001 &396423440 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalPosition.x + value: -0.682 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalPosition.z + value: 1.367 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 3d031ad534e512e45bb7fe10237e6286, + type: 3} + propertyPath: m_Name + value: "\u72FC\u4EBA\u653B\u51FB" + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3d031ad534e512e45bb7fe10237e6286, type: 3} +--- !u!134 &443265567 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ' (Instance) (Instance) (Instance) (Instance)' + dynamicFriction: 0.6 + staticFriction: 0.6 + bounciness: 0 + frictionCombine: 0 + bounceCombine: 0 --- !u!1 &452343420 GameObject: m_ObjectHideFlags: 0 @@ -807,7 +899,7 @@ PrefabInstance: - target: {fileID: -8679921383154817045, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} propertyPath: m_LocalPosition.x - value: -1.0007424 + value: 1.66 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} @@ -817,7 +909,7 @@ PrefabInstance: - target: {fileID: -8679921383154817045, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} propertyPath: m_LocalPosition.z - value: 2.9990788 + value: 8.35 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} @@ -854,16 +946,155 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: -3001758849199531384, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + propertyPath: m_LocalPosition.x + value: 5.87 + objectReference: {fileID: 0} + - target: {fileID: -3001758849199531384, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + propertyPath: m_LocalPosition.z + value: -12.62 + objectReference: {fileID: 0} - target: {fileID: 919132149155446097, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} propertyPath: m_Name value: "\u4EBA\u7C7B\u58EB\u5175" objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + propertyPath: m_TagString + value: Friend + objectReference: {fileID: 0} + - target: {fileID: 5866666021909216657, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + propertyPath: m_Controller + value: + objectReference: {fileID: 9100000, guid: 040acc435cecb4b16b965a1136ce6834, type: 2} m_RemovedComponents: [] m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 1852576806548013000, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + insertIndex: -1 + addedObject: {fileID: 1560533277} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + insertIndex: -1 + addedObject: {fileID: 483660739} + - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + insertIndex: -1 + addedObject: {fileID: 483660738} + - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + insertIndex: -1 + addedObject: {fileID: 483660737} + - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + insertIndex: -1 + addedObject: {fileID: 483660736} m_SourcePrefab: {fileID: 100100000, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} +--- !u!4 &483660734 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1852576806548013000, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + m_PrefabInstance: {fileID: 483660733} + m_PrefabAsset: {fileID: 0} +--- !u!1 &483660735 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + m_PrefabInstance: {fileID: 483660733} + m_PrefabAsset: {fileID: 0} +--- !u!114 &483660736 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 483660735} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d40e5f2a7b5f78a4aa139e4ddcdd559b, type: 3} + m_Name: + m_EditorClassIdentifier: + bonusAttackMultiplier: 0.5 + skillAnimationDuration: 1 +--- !u!114 &483660737 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 483660735} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9355c53f591d4459ea620fc8191efa17, type: 3} + m_Name: + m_EditorClassIdentifier: + maxHealth: 220 + currentHealth: 220 + maxEnergy: 100 + currentEnergy: 0 + heightOffset: 0.25 + barWidth: 1.2 + borderColor: {r: 0.03, g: 0.03, b: 0.03, a: 0.95} + deathEffectDuration: 1.1 + deathEffectColor: {r: 0.55, g: 0.9, b: 1, a: 1} +--- !u!114 &483660738 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 483660735} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b91aa6ae607324ce19fc46225a44e70a, type: 3} + m_Name: + m_EditorClassIdentifier: + speed: 3 + gravity: -20 + range: 500 + detectRange: 200 + attackRange: 1 + attackPower: 28 + attackDuration: 1 + attackType: 0 + projectilePrefab: {fileID: 0} + projectileSpawnPoint: {fileID: 0} + projectileSpeed: 20 + projectileLifetime: 5 + energyPerAttack: 25 + target: {fileID: 0} +--- !u!143 &483660739 +CharacterController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 483660735} + m_Material: {fileID: 531988292} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Height: 2 + m_Radius: 0.35 + m_SlopeLimit: 45 + m_StepOffset: 0.3 + m_SkinWidth: 0.08 + m_MinMoveDistance: 0.001 + m_Center: {x: 0, y: 1, z: 0} --- !u!1 &485246434 GameObject: m_ObjectHideFlags: 0 @@ -952,6 +1183,18 @@ Transform: - {fileID: 371704312} m_Father: {fileID: 1648295920} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!134 &531988292 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ' (Instance) (Instance)' + dynamicFriction: 0.6 + staticFriction: 0.6 + bounciness: 0 + frictionCombine: 0 + bounceCombine: 0 --- !u!1 &594269734 GameObject: m_ObjectHideFlags: 0 @@ -1497,7 +1740,7 @@ PrefabInstance: - target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a, type: 3} propertyPath: m_LocalPosition.x - value: -1.5394614 + value: -0.85 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a, type: 3} @@ -1507,7 +1750,7 @@ PrefabInstance: - target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a, type: 3} propertyPath: m_LocalPosition.z - value: 8.682767 + value: 15.93 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a, type: 3} @@ -2034,7 +2277,7 @@ Transform: m_GameObject: {fileID: 1178637744} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: -0.25, z: 0} + m_LocalPosition: {x: -0.018, y: -0.111, z: 0} m_LocalScale: {x: 29.9, y: 0.18964075, z: 44.85} m_ConstrainProportionsScale: 1 m_Children: [] @@ -2101,7 +2344,7 @@ CharacterController: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1202167643} - m_Material: {fileID: 2099474686} + m_Material: {fileID: 443265567} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 @@ -2155,18 +2398,6 @@ Transform: - {fileID: 2041369494} m_Father: {fileID: 469567532} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!134 &1255655232 -PhysicMaterial: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: ' (Instance) (Instance)' - dynamicFriction: 0.6 - staticFriction: 0.6 - bounciness: 0 - frictionCombine: 0 - bounceCombine: 0 --- !u!134 &1274809881 PhysicMaterial: m_ObjectHideFlags: 0 @@ -2261,7 +2492,7 @@ PrefabInstance: - target: {fileID: -8679921383154817045, guid: 2ac38f68ec4f85341b423b5e8defd47e, type: 3} propertyPath: m_LocalPosition.x - value: 3.703074 + value: -5.7 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 2ac38f68ec4f85341b423b5e8defd47e, type: 3} @@ -2271,7 +2502,7 @@ PrefabInstance: - target: {fileID: -8679921383154817045, guid: 2ac38f68ec4f85341b423b5e8defd47e, type: 3} propertyPath: m_LocalPosition.z - value: 3.4877257 + value: 8.04 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 2ac38f68ec4f85341b423b5e8defd47e, type: 3} @@ -2308,6 +2539,16 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: -3081994679161391779, guid: 2ac38f68ec4f85341b423b5e8defd47e, + type: 3} + propertyPath: m_LocalPosition.x + value: 3.45 + objectReference: {fileID: 0} + - target: {fileID: -3081994679161391779, guid: 2ac38f68ec4f85341b423b5e8defd47e, + type: 3} + propertyPath: m_LocalPosition.z + value: -0.84 + objectReference: {fileID: 0} - target: {fileID: 919132149155446097, guid: 2ac38f68ec4f85341b423b5e8defd47e, type: 3} propertyPath: m_Name @@ -2652,6 +2893,100 @@ Transform: m_Children: [] m_Father: {fileID: 966954453} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1504271833 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1560533277} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalScale.y + value: 1.0000001 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalPosition.x + value: -0.60000056 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.9100008 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalPosition.z + value: 0.05999977 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.21002673 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalRotation.x + value: -0.6915032 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.22507879 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalRotation.z + value: -0.65349185 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -35.778 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 94.077 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: -182.599 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_ConstrainProportionsScale + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + propertyPath: m_Name + value: "\u4EBA\u7C7B\u58EB\u5175\u77ED\u5251" + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 81c3ca29ca6b10849a8810e299d4ab57, type: 3} +--- !u!4 &1504271834 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 81c3ca29ca6b10849a8810e299d4ab57, + type: 3} + m_PrefabInstance: {fileID: 1504271833} + m_PrefabAsset: {fileID: 0} --- !u!1 &1519714724 GameObject: m_ObjectHideFlags: 0 @@ -2670,6 +3005,39 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 +--- !u!1 &1560533276 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 7 + m_Component: + - component: {fileID: 1560533277} + m_Layer: 0 + m_HasEditorInfo: 1 + m_Name: WeaponSocket + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1560533277 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1560533276} + 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: 1504271834} + m_Father: {fileID: 483660734} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!134 &1585789246 PhysicMaterial: m_ObjectHideFlags: 0 @@ -3156,18 +3524,6 @@ Transform: - {fileID: 198448603} m_Father: {fileID: 1244039458} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!134 &2099474686 -PhysicMaterial: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: ' (Instance) (Instance) (Instance)' - dynamicFriction: 0.6 - staticFriction: 0.6 - bounciness: 0 - frictionCombine: 0 - bounceCombine: 0 --- !u!1 &2119723178 GameObject: m_ObjectHideFlags: 0 @@ -3596,3 +3952,4 @@ SceneRoots: - {fileID: 1334052347} - {fileID: 94111206} - {fileID: 483660733} + - {fileID: 396423440} diff --git a/Assets/Script/HumanSoldierSkill.cs b/Assets/Script/HumanSoldierSkill.cs new file mode 100644 index 0000000..1a451a7 --- /dev/null +++ b/Assets/Script/HumanSoldierSkill.cs @@ -0,0 +1,47 @@ +using UnityEngine; + +public class HumanSoldierSkill : UnitSkill +{ + [Min(0f)] + public float bonusAttackMultiplier = 0.5f; + + [Header("技能动画")] + [Min(0f)] + public float skillAnimationDuration = 0f; + + private bool isSkillReady; + + public override void ReleaseSkill() + { + isSkillReady = true; + unit.PlaySkillAnimation(OnSkillFinished, skillAnimationDuration); + } + + // 添加到技能攻击动画的第一段命中帧。 + public void OnSkillHit1() + { + if (!isSkillReady) + { + return; + } + + unit.ApplySkillHit(1f, true); + } + + // 添加到技能攻击动画的第二段命中帧。 + public void OnSkillHit2() + { + if (!isSkillReady) + { + return; + } + + unit.ApplySkillHit(bonusAttackMultiplier, false); + isSkillReady = false; + } + + private void OnSkillFinished() + { + isSkillReady = false; + } +} diff --git a/Assets/Script/HumanSoldierSkill.cs.meta b/Assets/Script/HumanSoldierSkill.cs.meta new file mode 100644 index 0000000..03c685a --- /dev/null +++ b/Assets/Script/HumanSoldierSkill.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: W34f4C/7USoWR/R5rwP9HkjbiTWMMxMnlwTiCpclEAjSKp6tZ2xZ9HQ= +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Script/ShieldBarrier.cs b/Assets/Script/ShieldBarrier.cs new file mode 100644 index 0000000..4c0174a --- /dev/null +++ b/Assets/Script/ShieldBarrier.cs @@ -0,0 +1,138 @@ +using UnityEngine; + +public class ShieldBarrier : MonoBehaviour +{ + [Header("盾牌状态")] + [Min(0f)] + public float maxDurability = 220f; + + [Min(0f)] + public float currentDurability; + + [Min(0f)] + public float duration = 6f; + + [Range(-1f, 1f)] + public float frontDotThreshold = 0.15f; + + private UnitBase owner; + private Collider barrierCollider; + private float remainingTime; + + public UnitBase Owner => owner; + + public float CurrentDurability => currentDurability; + + public bool IsActive => + isActiveAndEnabled && + barrierCollider != null && + barrierCollider.enabled && + currentDurability > 0f && + remainingTime > 0f; + + public void Configure(UnitBase shieldOwner, Collider shieldCollider) + { + owner = shieldOwner; + barrierCollider = shieldCollider; + } + + public void Refresh(float durability, float activeDuration, Vector3 localPosition, Vector3 localSize) + { + if (barrierCollider == null) + { + barrierCollider = GetComponent(); + } + + if (owner == null) + { + owner = GetComponentInParent(); + } + + transform.localPosition = localPosition; + transform.localRotation = Quaternion.identity; + + BoxCollider boxCollider = barrierCollider as BoxCollider; + if (boxCollider != null) + { + boxCollider.center = Vector3.zero; + boxCollider.size = localSize; + boxCollider.isTrigger = true; + } + + maxDurability = Mathf.Max(0.01f, durability); + currentDurability = maxDurability; + duration = Mathf.Max(0.01f, activeDuration); + remainingTime = duration; + + gameObject.SetActive(true); + if (barrierCollider != null) + { + barrierCollider.enabled = true; + } + } + + public bool TryBlock(GameObject attacker, float damage) + { + if (!IsActive || damage <= 0f) + { + return false; + } + + if (attacker != null && !IsIncomingFromFront(attacker)) + { + return false; + } + + currentDurability -= damage; + if (currentDurability <= 0f) + { + DisableBarrier(); + } + + return true; + } + + public void DisableBarrier() + { + currentDurability = 0f; + remainingTime = 0f; + + if (barrierCollider != null) + { + barrierCollider.enabled = false; + } + + gameObject.SetActive(false); + } + + private void Update() + { + if (!IsActive) + { + return; + } + + remainingTime -= Time.deltaTime; + if (remainingTime <= 0f) + { + DisableBarrier(); + } + } + + private bool IsIncomingFromFront(GameObject attacker) + { + if (owner == null) + { + return true; + } + + Vector3 direction = attacker.transform.position - owner.transform.position; + direction.y = 0f; + if (direction.sqrMagnitude <= 0.0001f) + { + return true; + } + + return Vector3.Dot(owner.transform.forward, direction.normalized) >= frontDotThreshold; + } +} diff --git a/Assets/Script/ShieldBarrier.cs.meta b/Assets/Script/ShieldBarrier.cs.meta new file mode 100644 index 0000000..fb95c30 --- /dev/null +++ b/Assets/Script/ShieldBarrier.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: By8es3n/Vn8vDFRRNcUcF3DWUozAHLqfoGKYkWDk0WblebrKYNoIno8= +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Script/ShieldGuardSkill.cs b/Assets/Script/ShieldGuardSkill.cs new file mode 100644 index 0000000..631eccd --- /dev/null +++ b/Assets/Script/ShieldGuardSkill.cs @@ -0,0 +1,44 @@ +using UnityEngine; + +public class ShieldGuardSkill : UnitSkill +{ + [Header("盾牌参数")] + [Min(1f)] + public float shieldDurability = 220f; + + [Min(0.1f)] + public float shieldDuration = 6f; + + public Vector3 shieldLocalPosition = new Vector3(0f, 1f, 0.7f); + + public Vector3 shieldSize = new Vector3(1.5f, 1.8f, 0.12f); + + private ShieldBarrier shield; + + public ShieldBarrier ActiveShield => shield; + + public override void ReleaseSkill() + { + EnsureShield(); + shield.Refresh(shieldDurability, shieldDuration, shieldLocalPosition, shieldSize); + } + + private void EnsureShield() + { + if (shield != null) + { + return; + } + + GameObject shieldObject = new GameObject("ShieldBarrier"); + shieldObject.transform.SetParent(unit.transform, false); + + BoxCollider boxCollider = shieldObject.AddComponent(); + boxCollider.isTrigger = true; + boxCollider.size = shieldSize; + + shield = shieldObject.AddComponent(); + shield.Configure(unit, boxCollider); + shieldObject.SetActive(false); + } +} diff --git a/Assets/Script/ShieldGuardSkill.cs.meta b/Assets/Script/ShieldGuardSkill.cs.meta new file mode 100644 index 0000000..262ea6c --- /dev/null +++ b/Assets/Script/ShieldGuardSkill.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: XCkWsHz7Wn/4PQyuRdHqOq4UICVTHToo6q2RmJrNHMtmqcPpJ27eVZY= +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Script/UnitBase.cs b/Assets/Script/UnitBase.cs index a7dfc76..446ded7 100644 --- a/Assets/Script/UnitBase.cs +++ b/Assets/Script/UnitBase.cs @@ -290,6 +290,53 @@ public class UnitBase : MonoBehaviour return 0f; } + // 查找当前 Animator 中使用的技能动画时长。 + private float GetSkillAnimationDuration() + { + if (animator == null || animator.runtimeAnimatorController == null) + { + return 0f; + } + + var overrideController = animator.runtimeAnimatorController as AnimatorOverrideController; + if (overrideController != null) + { + var overrides = new List>(); + overrideController.GetOverrides(overrides); + + foreach (var pair in overrides) + { + if (IsSkillAnimation(pair.Key)) + { + return pair.Value != null ? pair.Value.length : pair.Key.length; + } + } + } + + foreach (var clip in animator.runtimeAnimatorController.animationClips) + { + if (IsSkillAnimation(clip)) + { + return clip.length; + } + } + + return 0f; + } + + // 根据动画名称判断是否为技能动画。 + private bool IsSkillAnimation(AnimationClip clip) + { + if (clip == null) + { + return false; + } + + string clipName = clip.name.ToLowerInvariant(); + return clipName.Contains("skill") + || clipName.Contains("技能"); + } + //根据动画名称判断是否为攻击动画 private bool IsAttackAnimation(AnimationClip clip) { @@ -322,6 +369,8 @@ public class UnitBase : MonoBehaviour { target = friend; + FaceTarget(friend); + //根据目标攻击时长加速或减速完整攻击动画 SetAttackAnimationSpeed(); @@ -331,6 +380,24 @@ public class UnitBase : MonoBehaviour attackStartTime = Time.time; } + private void FaceTarget(GameObject opponent) + { + if (opponent == null) + { + return; + } + + Vector3 direction = opponent.transform.position - transform.position; + direction.y = 0f; + if (direction.sqrMagnitude <= 0.0001f) + { + return; + } + + Quaternion targetRotation = Quaternion.LookRotation(direction, Vector3.up); + transform.rotation = Quaternion.Euler(0f, targetRotation.eulerAngles.y, 0f); + } + //由攻击动画中最合适的帧通过 Animation Event 调用。 public void OnAttackEffect() { @@ -365,6 +432,26 @@ public class UnitBase : MonoBehaviour RegisterAttackHit(); } + public void ApplySkillHit(float damageMultiplier, bool registerEnergy) + { + if (target == null) + { + return; + } + + WorldHealthBar healthBar = target.GetComponentInParent(); + if (healthBar == null) + { + return; + } + + healthBar.TakeDamage(attackPower * Mathf.Max(0f, damageMultiplier)); + if (registerEnergy) + { + RegisterAttackHit(); + } + } + public void RegisterAttackHit() { AddAttackEnergy(); @@ -432,7 +519,18 @@ public class UnitBase : MonoBehaviour } } - public void PlaySkillAnimation(System.Action onFinished) + private float GetSkillAnimationSpeed(float targetDuration) + { + float animationDuration = GetSkillAnimationDuration(); + if (animationDuration <= 0f || targetDuration <= 0f) + { + return 1f; + } + + return animationDuration / targetDuration; + } + + public void PlaySkillAnimation(System.Action onFinished, float targetDuration = 0f) { if (isPlayingSkill) { @@ -442,7 +540,7 @@ public class UnitBase : MonoBehaviour skillFinishedCallback = onFinished; isPlayingSkill = true; state = State.Skill; - animator.speed = 1f; + animator.speed = GetSkillAnimationSpeed(targetDuration); animator.SetInteger("speed", 0); animator.SetTrigger("skill"); attackStartTime = Time.time; @@ -520,6 +618,8 @@ public class UnitBase : MonoBehaviour target = FindNearestOpponent(); if (target != null && IsWithinAttackReach(target)) { + // 攻击结束后可能已切换到新的近距离目标,先更新朝向再开始下一次攻击。 + FaceTarget(target); attack(target); return; } diff --git a/CODELY.md b/CODELY.md index bc6d4fa..234c25e 100644 --- a/CODELY.md +++ b/CODELY.md @@ -9,6 +9,7 @@ - [2026-08-30 22:44:50] 每实现一个角色技能,都要同步更新《场景和角色设计.md》文档末尾的角色与技能描述表格。**Why:** 用户希望实现进度与设计文档保持同步。**How to apply:** 后续新增或修改角色技能时,在同一任务中追加或更新对应表格行。 - [2026-08-31 14:52:17] 角色配色应以自然、克制的主体色为主,每个角色加入一到两处对比度较强的颜色作为识别点,避免整体过于花哨或过于朴素。**Why:** 用户希望角色既有视觉记忆点,又保持统一、易建模的造型。**How to apply:** 后续角色提示词使用材质和种族决定主体配色,仅在围巾、护腕、局部毛色等少量位置加入强对比色。 - [2026-08-31 15:30:02] 角色技能表中的攻击速度应以“普攻间隔(秒/次)”展示,而不是“次/秒”。**Why:** 用户更直观地关注单位每隔多少秒攻击一次。**How to apply:** 后续新增或调整角色数值时统一使用秒/次,并按间隔数值维护平衡。 +- [2026-09-01 14:10:12] 用户在 Unity 脚本或 Animator 问题排查中可优先要求“先改、不运行验证”,此时只执行读取、针对性修改和必要的编译/配置确认。**Why:** Play Mode 或视频验证容易触发 Stream idle timeout。**How to apply:** 除非用户明确要求运行验证,否则遇到类似超时后先不进入 Play Mode。 ### Project - [2026-08-28 14:26:56] 弓箭手远程箭矢的设计要求:保持发射时高度水平飞行,命中目标后直接结算伤害并销毁,不产生实体物理击退。**Why:** 当前玩法希望远程攻击是命中判定而非物理推动。**How to apply:** 后续调整箭矢、Projectile 或弓箭手攻击逻辑时保持这一行为。 diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 0a4c150..7dfdebf 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -91,7 +91,7 @@ PlayerSettings: androidPredictiveBackSupport: 1 defaultIsNativeResolution: 1 macRetinaSupport: 1 - runInBackground: 0 + runInBackground: 1 captureSingleScreen: 0 muteOtherAudioSources: 0 Prepare IOS For Recording: 0 diff --git a/动画Event函数配置说明.md b/动画Event函数配置说明.md new file mode 100644 index 0000000..2968847 --- /dev/null +++ b/动画Event函数配置说明.md @@ -0,0 +1,198 @@ +# Unity 动画 Event 函数配置说明 + +本文档记录《召唤之战》当前动画片段需要配置的 Animation Event 函数名。 + +## 一、快速结论 + +当前项目实际使用的动画 Event 函数只有以下 3 个: + +```text +OnAttackEffect +OnSkillHit1 +OnSkillHit2 +``` + +在 Animation Event 的 Function 下拉框中填写函数名时,**只填写名称,不要填写括号**。 + +--- + +## 二、普通攻击命中 Event + +### 函数名 + +```text +OnAttackEffect +``` + +### 函数定义 + +```csharp +public void OnAttackEffect() +``` + +### 所属脚本 + +```text +Assets/Script/UnitBase.cs +``` + +### 用途 + +在普通攻击真正命中的那一帧调用一次,`UnitBase` 会根据单位的 `AttackType` 执行对应逻辑: + +- 近战攻击:直接给目标造成伤害 +- 远程攻击:生成并发射飞行物 +- 攻击命中后:增加技能能量 + +### 当前已配置该 Event 的攻击动画 + +| 动画片段 | Event 函数名 | 当前 Event 时间(约) | +|---|---|---:| +| `Assets/Model/第一章/人类士兵/人类士兵-attack.fbx` | `OnAttackEffect` | 0.365 秒 | +| `Assets/Model/第一章/人类士兵新/人类士兵-攻击.fbx` | `OnAttackEffect` | 0.343 秒 | +| `Assets/Model/第一章/弓箭手/弓箭手攻击.fbx` | `OnAttackEffect` | 0.987 秒 | +| `Assets/Model/第一章/精锐守卫士兵/Great Sword Slash.fbx` | `OnAttackEffect` | 0.464 秒 | +| `Assets/Model/第二章/弓箭猎人/弓箭猎人攻击.fbx` | `OnAttackEffect` | 0.427 秒 | +| `Assets/Model/第二章/狼人/狼人攻击.fbx` | `OnAttackEffect` | 0.548 秒 | +| `Assets/Model/第二章/蓝色怪物/蓝色怪物动作-挥剑.fbx` | `OnAttackEffect` | 0.367 秒 | + +### 狼人攻击必须配置 + +选择: + +```text +Assets/Model/第二章/狼人/狼人攻击.fbx +``` + +在攻击命中帧添加: + +```text +OnAttackEffect +``` + +参数:无。 + +如果狼人攻击动画没有配置这个 Event,狼人会播放攻击动作,但不会真正结算伤害。 + +--- + +## 三、人类士兵技能攻击 Event + +人类士兵技能动画有两段命中,需要配置两个 Event。 + +### 第一段命中 + +```text +OnSkillHit1 +``` + +函数定义: + +```csharp +public void OnSkillHit1() +``` + +所属脚本: + +```text +Assets/Script/HumanSoldierSkill.cs +``` + +用途: + +- 执行技能第一段伤害 +- 使用 `1.0` 倍攻击力 + +### 第二段命中 + +```text +OnSkillHit2 +``` + +函数定义: + +```csharp +public void OnSkillHit2() +``` + +所属脚本: + +```text +Assets/Script/HumanSoldierSkill.cs +``` + +用途: + +- 执行技能第二段伤害 +- 使用 `bonusAttackMultiplier` 配置的额外倍率 +- 防止第二段重复执行 + +### 当前技能动画配置 + +动画片段: + +```text +Assets/Model/第一章/人类士兵新/技能.fbx +``` + +当前配置顺序: + +| 顺序 | Event 函数名 | 当前 Event 时间(约) | +|---:|---|---:| +| 1 | `OnSkillHit1` | 0.359 秒 | +| 2 | `OnSkillHit2` | 0.573 秒 | + +注意:如果替换了技能动画,必须根据新动作的实际挥击命中帧重新调整两个 Event 的时间。 + +--- + +## 四、不要直接配置的函数 + +以下函数虽然是公开函数或参与技能逻辑,但不应直接作为当前 Animation Event 使用: + +| 函数名 | 原因 | +|---|---| +| `ApplySkillHit` | 需要 `float` 和 `bool` 两个参数,不能按当前技能 Event 方式直接配置 | +| `RegisterAttackHit` | 只负责增加攻击能量,不负责判断具体命中目标 | +| `FireSkillProjectile` | 需要传入目标对象,由技能脚本控制调用 | +| `PlaySkillAnimation` | 负责启动技能状态,不是动画命中回调 | +| `OnRoarFinished` | `BlueMonsterSkill` 中为私有函数,不能作为公开 Animation Event 使用 | +| `OnSkillFinished` | `HumanSoldierSkill` 中为私有函数,技能结束由代码回调处理 | + +--- + +## 五、配置步骤 + +1. 在 Project 窗口选择对应的 `.fbx` 动画文件。 +2. 在 Inspector 的 **Animation** 页签中选择目标动画 Clip。 +3. 在时间轴上移动到实际命中帧。 +4. 点击 **Add Event**。 +5. 在 Event 的 Function 中选择或填写准确的函数名: + - 普通攻击:`OnAttackEffect` + - 人类士兵技能第一段:`OnSkillHit1` + - 人类士兵技能第二段:`OnSkillHit2` +6. 确认 Event 不需要填写参数。 +7. 点击 **Apply** 保存 FBX 动画导入设置。 + +--- + +## 六、Event 不生效时检查 + +Animation Event 会发送给播放该动画的 Animator 所在 GameObject,因此需要确认: + +- Animator 和接收函数所在脚本在同一个角色根节点上 +- 普通攻击角色根节点上有 `UnitBase` +- 人类士兵技能角色根节点上同时有 `UnitBase` 和 `HumanSoldierSkill` +- Function 名称大小写完全一致 +- 普通攻击 Event 只添加一次,避免一次攻击重复结算伤害 +- 不要把普通攻击 Event 添加到待机或移动动画 +- 技能两个 Event 的先后顺序不能颠倒 +- 替换动画后重新检查 Event 是否仍然存在 + +## 七、函数归属速查表 + +| Event 函数 | 所属组件 | 适用动画 | +|---|---|---| +| `OnAttackEffect` | `UnitBase` | 所有普通攻击动画,包括狼人攻击 | +| `OnSkillHit1` | `HumanSoldierSkill` | 人类士兵技能第一段 | +| `OnSkillHit2` | `HumanSoldierSkill` | 人类士兵技能第二段 | diff --git a/场景和角色设计.md b/场景和角色设计.md index b76a94c..719d613 100644 --- a/场景和角色设计.md +++ b/场景和角色设计.md @@ -379,13 +379,13 @@ | 火焰术士 | 人形 | Mixamo 施法、走、受击 | 远程火焰输出 | 火球连射,发射三枚火球 | | 熔岩战士 | 人形 | Mixamo 大剑、走、受击 | 中费近战灼烧 | 灼烧斩,攻击附带持续燃烧 | | 火焰史莱姆 | 非人形 | 跳跃、缩放、自爆特效 | 低费自爆单位 | 接近敌人后自爆,范围火焰伤害 | -| 火焰蝙蝠 | 飞行 | 拍翅、俯冲、死亡 | 低费飞行单位 | 火焰俯冲,对目标造成伤害并点燃 | +| 熔岩甲虫 | 非人形 | 爬行、冲撞、受击、死亡 | 低费地面近战 | 炽热冲撞,短距离冲撞并造成灼烧 | | 矿坑巨魔 | 人形 | Mixamo 大体型锤击、走、受击 | 高费高血量前排 | 地震击,踩地造成范围眩晕 | -| 火焰翼龙 | 飞行 Boss | 拍翅、俯冲、喷火特效 | 高血量飞行精英 | 火焰吐息,前方扇形持续伤害 | +| 熔岩领主 | 人形 Boss | Mixamo 大体型走、重击、受击 | 高血量地面精英 | 熔岩爆发,以自身为中心释放范围火焰伤害 | 说明: -- 火焰蝙蝠是飞行单位,使用简单的拍翅和俯冲动画,可以手搓。 -- 火焰翼龙是 Boss 级飞行单位,体型大,可以使用简单骨骼加特效。 +- 熔岩甲虫是地面非人形单位,使用爬行、冲撞和受击动画,可以与火焰史莱姆形成近战组合。 +- 熔岩领主是地面 Boss,使用大体型人形骨骼和重击动作,不需要飞行或升空机制。 - 熔岩战士引入"持续伤害"概念,攻击后目标会持续燃烧几秒。 - 矿坑巨魔与石巨人/沼泽巨像同属高费用前排系列,但技能侧重控制。 - 火焰史莱姆是自爆型,区别于红色史莱姆的死亡被动。 @@ -415,13 +415,13 @@ - 通关解锁:熔岩战士 - 结算文字:"一个熔岩战士倒下后,身上的火焰熄灭。他的盔甲上刻着'皇家矿卫'的徽记。" -#### 4-4 蝙蝠洞穴 +#### 4-4 熔岩甲虫巢穴 - 时长:约 2.5 分钟 -- 敌人:3 个火焰蝙蝠 + 2 个火焰史莱姆 + 2 个矿工暴徒 -- 新引入:火焰蝙蝠(飞行单位)和火焰史莱姆(自爆单位) -- 通关解锁:火焰蝙蝠、火焰史莱姆 -- 结算文字:"蝙蝠群从洞穴深处涌出。它们的翅膀上附着火焰,像是被魔力点燃的活火把。" +- 敌人:3 个熔岩甲虫 + 2 个火焰史莱姆 + 2 个矿工暴徒 +- 新引入:熔岩甲虫(地面冲撞单位)和火焰史莱姆(自爆单位) +- 通关解锁:熔岩甲虫、火焰史莱姆 +- 结算文字:"岩浆边缘传来密集的甲壳摩擦声。熔岩甲虫从裂缝中钻出,身体像被烧红的矿石。" #### 4-5 挖掘场 @@ -436,16 +436,16 @@ - 时长:约 6 分钟 - 敌人波次: - 第一波:4 个矿工暴徒 + 3 个火焰史莱姆 - - 第二波:2 个熔岩战士 + 2 个火焰术士 + 3 个火焰蝙蝠 - - 第三波:矿坑巨魔 + 2 个熔岩战士 + 2 个火焰术士 - - 第四波:火焰翼龙 + 2 个火焰蝙蝠 + 2 个熔岩战士 -- Boss:火焰翼龙 - - 高血量飞行 Boss,会周期性升空脱离近战范围 - - 技能 1:火焰吐息,前方扇形持续伤害 - - 技能 2:升空俯冲,短暂脱离战场后俯冲造成范围伤害 - - 被击败后落回地面,揭示源豆核心的位置 -- 通关解锁:火焰翼龙(稀有单位) -- 结算文字:"翼龙坠入岩浆。在它消失的瞬间,你看到地底深处有一道裂缝,裂缝中散发着纯白色的光。那是源豆核心。" + - 第二波:2 个熔岩战士 + 2 个火焰术士 + 3 个熔岩甲虫 + - 第三波:矿坑巨魔 + 2 个熔岩战士 + 2 个火焰术士 + - 第四波:熔岩领主 + 2 个熔岩甲虫 + 2 个熔岩战士 + - Boss:熔岩领主 + - 高血量地面 Boss,会缓慢推进并持续压迫前排 + - 技能 1:熔岩爆发,以自身为中心释放范围火焰伤害 + - 技能 2:灼热践踏,短暂蓄力后对周围敌人造成伤害并点燃 + - 被击败后熔岩护甲碎裂,揭示源豆核心的位置 + - 通关解锁:熔岩领主(稀有单位) + - 结算文字:"熔岩领主的护甲在地面上崩裂。在它消失的瞬间,你看到地底深处有一道裂缝,裂缝中散发着纯白色的光。那是源豆核心。" ### 第四章收集总结 @@ -455,9 +455,9 @@ | 火焰术士 | 3 | 远程火焰 | | 熔岩战士 | 4 | 近战灼烧 | | 火焰史莱姆 | 1 | 低费自爆 | -| 火焰蝙蝠 | 3 | 飞行近战 | +| 熔岩甲虫 | 3 | 地面冲撞灼烧 | | 矿坑巨魔 | 7 | 高费前排控制 | -| 火焰翼龙 | 10 | 精英飞行 Boss | +| 熔岩领主 | 10 | 地面范围 Boss | ## 七、第五章:冰封雪峰 @@ -491,8 +491,8 @@ 说明: - 冰甲巨人引入"屏障"概念,可以临时阻挡敌人前进,改变战场布局。 - 冰封守卫是被动光环型单位,靠近它的敌人都会减速,不需要主动施法。 -- 冰霜鸦与火焰蝙蝠共享飞行框架,换颜色和特效。 -- 霜暴贤者是法师型 Boss,不靠近玩家,持续在远处施法,需要玩家用突进单位或飞行单位快速接近。 +- 冰霜鸦是本项目目前唯一的飞行单位,使用简单的拍翅和俯冲动画。 +- 霜暴贤者是法师型 Boss,不靠近玩家,持续在远处施法,需要玩家用突进单位快速接近。 ### 第五章关卡明细 @@ -745,10 +745,10 @@ | 第一章 灰石城堡 | 4 | 1 | 0 | 0 | | 第二章 荒野边境 | 6 | 1 | 0 | 2(蓝色怪物+绿色史莱姆) | | 第三章 沉没沼泽 | 6 | 1 | 0 | 2(史莱姆+水元素) | -| 第四章 熔岩矿坑 | 6 | 1 | 2(蝙蝠+翼龙) | 1(史莱姆) | +| 第四章 熔岩矿坑 | 6 | 1 | 0 | 2(火焰史莱姆+熔岩甲虫) | | 第五章 冰封雪峰 | 6 | 1 | 1(冰鸦) | 0 | | 第六章 源界裂缝 | 0(强化版) | 1 | 0 | 1(触手机关) | -| 合计 | 28 种 + 1 终极 | 6 | 3 | 7 | +| 合计 | 28 种 + 1 终极 | 6 | 1 | 8 | ## 十二、动作复用建议 @@ -764,7 +764,7 @@ | 大体型人形 | 精锐士兵、石巨人、沼泽巨像、矿坑巨魔、冰甲巨人、雪怪 | 走、重击、受击、死亡 | | 施法人形 | 城堡法师、荒野祭司、深渊母体、霜暴贤者 | 施法、走、受击、死亡 | | 突进人形 | 沼泽刺客、狂暴狼人 | 跑、突刺、受击、死亡 | -| 飞行 | 火焰蝙蝠、冰霜鸦、火焰翼龙 | 拍翅、俯冲、死亡 | +| 飞行 | 冰霜鸦 | 拍翅、俯冲、死亡 | ### 史莱姆共享 @@ -777,7 +777,7 @@ | 精锐士兵 | 大剑人形 | | 荒野之王 | 大锤大体型人形 | | 深渊母体 | 施法人形 + 多手特效 | -| 火焰翼龙 | 飞行骨架 + 喷火特效 | +| 熔岩领主 | 大体型人形 + 熔岩爆发特效 | | 霜暴贤者 | 施法人形 + 浮空特效 | | 源豆核心 | 无骨架,纯特效 | @@ -786,3 +786,4 @@ | 角色 | 技能描述 | |---|---| | 蓝色怪物 | 每次技能能量充满后播放怒吼技能动画;怒吼动作完成后,自身攻速提高20%,攻速倍率最高为基础攻速的2.0倍。 | +| 人类士兵 | 技能能量充满后播放大招动作;可在 Inspector 通过“技能动画时长(秒)”控制整段技能动作的完成时间,填 0 保持原速,填 2 时约 2 秒完成。 | diff --git a/角色与技能说明.md b/角色与技能说明.md index 649e930..6966462 100644 --- a/角色与技能说明.md +++ b/角色与技能说明.md @@ -96,6 +96,25 @@ | 沼泽巨像 | 用于游戏角色3D建模的角色正视图建模参考图,orthographic front view,角色正面朝向镜头,正交镜头,完整全身可见。角色采用标准A-pose,双臂自然向身体两侧张开约40度,手掌朝前,手指分开,双腿自然分开,保持清晰的双臂双腿人形骨架。一名高大魁梧的双足沼泽巨像,拥有夸张宽阔的肩膀、厚重的躯干、粗壮的双臂和短而结实的双腿。角色由深色泥土、圆润风化岩石、树根和湿地木质结构组成,身体采用简化的大块几何形体,适合3D建模。整体比例像大型卡通游戏手办,体型沉重但外形圆润亲和。主体颜色为深棕色、灰绿色和暗青色,表面覆盖大块苔藓、藤蔓和少量沼泽植物。胸口和肩部有几条简洁的黄绿色发光裂纹,脸部拥有两个温和的绿色眼睛,头部可以由圆润岩石与树根组合而成。双手为大型圆润石块拳头,双脚厚重稳定,关节连接清晰。正视图清晰展示胸口核心、脸部、厚重的双臂和整体结构。采用强烈的3D卡通游戏风格,stylized 3D cartoon,chibi、toy-like、非写实,手绘PBR材质,哑光泥土、软化岩石和圆润卡通阴影。纯浅灰色建模展示背景,整洁的角色正视图建模参考图排版。 | | 深渊母体 | 用于游戏角色3D建模的角色正视图建模参考图,orthographic front view,角色正面朝向镜头,正交镜头,完整全身可见。角色采用标准多臂A-pose,保持两条腿和四条手臂,四条手臂分别从左右肩部和左右上臂位置对称展开,四只手掌朝前,手指清晰分开,四个肩关节和手臂连接结构完整可见。一名高大而神秘的深渊母体人形Boss,整体采用夸张的3D卡通游戏比例,头部略大,躯干宽厚,四肢修长但圆润,外形像高质量奇幻游戏手办。角色拥有苍白灰紫色与深紫色皮肤,明亮的紫蓝色眼睛,简化的尖角和圆润的深渊生物头部轮廓。身体穿黑紫色和暗青色的有机铠甲,铠甲由圆润的甲壳板、菌体结构和布料组成,胸口有一个简洁的紫色能量核心或深渊眼睛。肩部和腰部加入少量对称的甲壳装饰,四条手臂的肩胛连接结构清晰可见。四只手的大小和造型保持统一,适合后续单独制作多臂施法动画。正视图重点展示四臂布局、胸口核心、Boss轮廓和四个肩部连接点。采用强烈的3D卡通游戏风格,stylized 3D cartoon,chibi、toy-like、非写实,诡异但不过度恐怖,手绘PBR材质,圆润几何块面,柔和卡通阴影,紫色与青色的鲜明配色。纯浅灰色建模展示背景,整洁的角色正视图建模参考图排版。 | +### 第四章:熔岩矿坑 + +> 第四章角色以火山矿坑中的矿工、熔岩生物和火焰 Boss 为主题。所有角色采用单角色正视图,突出矿石、金属、火焰和熔岩材质的差异;不在角色图片中添加手持武器,武器由游戏内单独配置。人形单位使用标准 A-pose,非人形单位使用稳定、简洁的自然姿态。 + +| 角色 | 正视图 3D 建模提示词 | +|---|---| +| 矿工暴徒 | 用于游戏角色3D建模的角色正视图建模参考图,orthographic front view,角色正面朝向镜头,正交镜头,完整全身可见。角色采用标准A-pose,双臂自然向身体两侧下斜约45度,手掌朝前,手指分开,双腿自然分开,脚尖朝前,保持标准双臂双腿人形结构,适合Mixamo人形骨骼绑定。一名成年男性矮人矿工暴徒,身材矮壮,肩膀宽厚,头部略大,浓密短胡须和圆润鼻子清晰可见。穿厚重的棕色皮革围裙、米白色粗布衬衣、深灰色护膝和腰带,身上有少量煤灰与矿尘痕迹;腰间只保留布质工具袋,不出现镐子、武器或手持工具。胸前佩戴一块醒目的橙红色矿石徽章,作为唯一主要对比色,其他配色保持土棕、灰黑和米白。采用3D卡通游戏风格,stylized 3D cartoon,chibi、toy-like、非写实,简洁厚实的大块面造型,适度夸张但便于建模和动画,手绘PBR材质,粗布、皮革和哑光金属质感,柔和圆润阴影。正视图清晰展示矮人面部、胡须、矿工服装、矿石徽章、双臂和双腿轮廓,纯浅灰色建模展示背景,单个角色居中,整洁的角色正视图建模参考图排版。 | + +| 火焰术士 | 用于游戏角色3D建模的单角色正视图参考图,orthographic front view,标准A-pose,双臂下斜,双腿分开,完整全身可见。矮小的火山地精法师,头部略大,耳朵尖,穿简洁的深灰色短法袍,衣摆和袖口有少量烧焦痕迹。胸口佩戴一枚橙红色发光矿石作为唯一醒目标识,双手空置,不携带法杖或任何武器。3D卡通游戏风格,stylized 3D cartoon,chibi、toy-like、非写实,造型简洁,手绘PBR材质,方便建模与Mixamo绑定,纯浅灰背景。 | +| 熔岩战士 | 用于游戏角色3D建模的单角色正视图参考图,orthographic front view,标准A-pose,双臂下斜,双腿分开,完整全身可见。直立双足的人形熔岩战士,身体为深灰色火山岩与暗红色熔岩裂纹,穿简洁的黑色耐热护甲和棕色皮革腰带。肩部有一块醒目的橙色熔岩护甲作为识别点,双手空置,不携带大剑或任何武器。3D卡通游戏风格,stylized 3D cartoon,chibi、toy-like、非写实,圆润岩石块面,手绘PBR材质,适合Mixamo大体型动作,纯浅灰背景。 | + +| 火焰史莱姆 | 用于游戏角色3D建模的单角色正视图参考图,orthographic front view,完整显示角色轮廓。稳定、圆润、饱满的火焰史莱姆球体,非人形,不摊开,不形成流体滩状,底部自然收拢并保持固定球形。主体为深灰红色半透明凝胶,内部有橙黄色发光核心,球体表面贴合少量火焰纹理但不改变外轮廓。正面有简单卡通眼睛,适合跳跃、缩放和自爆动画。3D卡通游戏风格,stylized 3D cartoon,chibi、toy-like、非写实,简洁大块面造型,手绘PBR材质,纯浅灰背景,无角色、无武器、无文字、无水印。 | + +| 熔岩甲虫 | 用于游戏角色3D建模的单角色正视图参考图,orthographic front view,完整显示角色轮廓。低矮的非人形熔岩甲虫,六条短腿与两只前肢结构清晰,身体由深黑色火山岩甲壳组成,甲壳缝隙中有少量橙红色熔岩光。头部有一对短触角和圆润的眼睛,背部有一块醒目的暗红色热源甲片。采用稳定爬行姿态,便于制作爬行、冲撞、受击和死亡动画。3D卡通游戏风格,stylized 3D cartoon,chibi、toy-like、非写实,结构简洁,手绘PBR材质,纯浅灰背景,无武器、无文字、无水印。 | + +| 矿坑巨魔 | 用于游戏角色3D建模的单角色正视图建模参考图,orthographic front view,标准A-pose,双臂下斜,双腿分开,完整全身可见。高大魁梧的地底巨魔,直立双足人形,皮肤为灰褐色岩石质感,头部略大,鼻子和下颌突出,肩膀宽阔。穿厚重的深棕色皮革与矿工布料护具,胸口有一块醒目的橙红色矿石核心,作为主要识别点;双手空置,不携带锤子或任何武器。3D卡通游戏风格,stylized 3D cartoon,chibi、toy-like、非写实,体型厚重,轮廓清晰,适合Mixamo大体型动作,手绘PBR材质,纯浅灰背景。 | + +| 熔岩领主 | 用于游戏角色3D建模的单角色正视图建模参考图,orthographic front view,标准A-pose,双臂自然下斜,双腿分开,完整全身可见。高大魁梧的地面人形Boss,身体由黑色火山岩和暗红色熔岩裂纹组成,头部略大,面部轮廓简洁,双眼和胸口各有一处稳定的橙黄色熔岩光。穿由岩石板甲和厚重皮革构成的简洁护甲,肩部有一块独特的不对称熔岩肩甲,双手空置,不携带大锤、剑、弓、法杖或任何武器。3D卡通游戏风格,stylized 3D cartoon,chibi、toy-like、非写实,Boss级体型,材质和结构清晰,适合Mixamo大体型动作,手绘PBR材质,纯浅灰背景,无飞行、无翅膀、无文字、无水印。 | + ## 文案规则 - 角色描述突出定位和战斗价值,控制在一句话内。