feat(assets): 更新蓝色怪物模型导入设置并优化动画配置

- 升级模型导入器版本从2200到22361
- 添加ACL动画压缩配置参数,提升动画性能
- 调整动画循环设置,将loopTime设为1启用循环播放
- 增加虚拟几何体相关配置选项

fix(enemy): 修复敌人AI行为逻辑错误

- 修正敌人在攻击状态下仍会移动的问题
- 改进敌人追踪和巡逻状态转换逻辑
- 修复敌人转向时Y轴旋转导致的异常朝向
- 优化巡逻路径计算,改为水平面内随机移动
- 解决敌人在目标点附近抖动的问题

chore(dependencies): 更新Codely桥接包版本

- 将cn.tuanjie.codely.bridge从1.0.74升级至1.0.75
- 调整依赖包在manifest中的顺序

style(scene): 为场景对象添加物理材质和渲染属性

- 为CharacterController组件分配新的物理材质
- 在多个MeshRenderer组件中添加虚拟几何体和遮挡剔除相关属性
- 配置渲染器遮罩交互参数

config(build): 启用SampleScene场景构建

- 将SampleScene.scene添加到构建设置中
- 设置场景为启用状态以便打包构建
```
This commit is contained in:
huadexuan committed 2026-08-13 15:20:52 +08:00
1 parent 8f7f797691
commit cdae901b96
7 files changed
+247 -40

No files matched your search

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

@@ -1,7 +1,7 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: DnpM5nn5UH9A01K14f7+nducpOiJrZyg8xxB/KHmXNUFRhe8zGAFL7o= guid: DnpM5nn5UH9A01K14f7+nducpOiJrZyg8xxB/KHmXNUFRhe8zGAFL7o=
ModelImporter: ModelImporter:
serializedVersion: 22200 serializedVersion: 22361
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
materials: materials:
@@ -25,6 +25,9 @@ ModelImporter:
importAnimatedCustomProperties: 0 importAnimatedCustomProperties: 0
importConstraints: 0 importConstraints: 0
animationCompression: 3 animationCompression: 3
aCLCompressionLevel: 3
aCLCurvePrecision: 0.01
aCLFastSampleMode: 1
animationRotationError: 0.5 animationRotationError: 0.5
animationPositionError: 0.5 animationPositionError: 0.5
animationScaleError: 0.5 animationScaleError: 0.5
@@ -32,7 +35,7 @@ ModelImporter:
extraExposedTransformPaths: [] extraExposedTransformPaths: []
extraUserProperties: [] extraUserProperties: []
clipAnimations: clipAnimations:
- serializedVersion: 16 - serializedVersion: 18
name: "\u84DD\u8272\u602A\u7269\u884C\u8D70" name: "\u84DD\u8272\u602A\u7269\u884C\u8D70"
takeName: mixamo.com takeName: mixamo.com
internalID: -203655887218126122 internalID: -203655887218126122
@@ -44,7 +47,8 @@ ModelImporter:
cycleOffset: 0 cycleOffset: 0
loop: 0 loop: 0
hasAdditiveReferencePose: 0 hasAdditiveReferencePose: 0
loopTime: 0 lockToRoot: 0
loopTime: 1
loopBlend: 0 loopBlend: 0
loopBlendOrientation: 0 loopBlendOrientation: 0
loopBlendPositionY: 0 loopBlendPositionY: 0
@@ -57,24 +61,27 @@ ModelImporter:
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: [] curves: []
events: [] events: []
intervals: []
transformMask: [] transformMask: []
maskType: 3 maskType: 3
maskSource: {instanceID: 0} maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0 additiveReferencePoseFrame: 0
additiveType: 0
basePoseType: 0
additiveSelectedAnimation: {instanceID: 0}
additiveSelectedAnimationFrameIndex: 0
isReadable: 0 isReadable: 0
virtualGeometry: 0 tuanjieGIEnable: 0
hasBoneWeight: 0 tuanjieGIGenSDFFactor: 1
generateGeometryBuffer: 0 tuanjieGIGenSDFBias: 0.25
positionPrecision: -2147483648 tuanjieGIDoubleSidedMode: 0
normalPrecision: -1 tuanjieGIGenFacetNums: 12
tangentPrecision: -1
surfaceCompensation: 0
allMeshUse: 1
ignoreSimpleMesh: 0
meshes: meshes:
lODScreenPercentages: [] lODScreenPercentages: []
globalScale: 1 globalScale: 1
meshCompression: 0 meshCompression: 0
totalVerticesCount: 0
totalTrianglesCount: 0
addColliders: 0 addColliders: 0
useSRGBMaterialColor: 1 useSRGBMaterialColor: 1
sortHierarchyByName: 1 sortHierarchyByName: 1
@@ -107,6 +114,79 @@ ModelImporter:
secondaryUVPackMargin: 4 secondaryUVPackMargin: 4
useFileScale: 1 useFileScale: 1
strictVertexDataChecks: 0 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: tangentSpace:
normalSmoothAngle: 60 normalSmoothAngle: 60
normalImportMode: 0 normalImportMode: 0
@@ -117,6 +197,7 @@ ModelImporter:
normalSmoothingSource: 0 normalSmoothingSource: 0
referencedClips: [] referencedClips: []
importAnimation: 1 importAnimation: 1
overrideDefaultPose: 0
humanDescription: humanDescription:
serializedVersion: 3 serializedVersion: 3
human: human:
@@ -520,6 +601,9 @@ ModelImporter:
position: {x: 0.08143586, y: 0, z: 0} position: {x: 0.08143586, y: 0, z: 0}
rotation: {x: 0.70710665, y: 0, z: -0, w: 0.7071069} rotation: {x: 0.70710665, y: 0, z: -0, w: 0.7071069}
scale: {x: 100, y: 100, z: 100} scale: {x: 100, y: 100, z: 100}
namedPoseList:
- name: Default
skeleton: []
armTwist: 0.5 armTwist: 0.5
foreArmTwist: 0.5 foreArmTwist: 0.5
upperLegTwist: 0.5 upperLegTwist: 0.5
@@ -529,6 +613,7 @@ ModelImporter:
feetSpacing: 0 feetSpacing: 0
globalScale: 1 globalScale: 1
rootMotionBoneName: rootMotionBoneName:
defaultPoseIndex: -1
hasTranslationDoF: 0 hasTranslationDoF: 0
hasExtraRoot: 1 hasExtraRoot: 1
skeletonHasParents: 1 skeletonHasParents: 1
+99 -7
View File
@@ -124,6 +124,18 @@ NavMeshSettings:
debug: debug:
m_Flags: 0 m_Flags: 0
m_NavMeshData: {fileID: 0} m_NavMeshData: {fileID: 0}
--- !u!134 &14211372
PhysicMaterial:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
dynamicFriction: 0.6
staticFriction: 0.6
bounciness: 0
frictionCombine: 0
bounceCombine: 0
--- !u!1 &46311543 --- !u!1 &46311543
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -224,6 +236,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -249,6 +265,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &49968544 --- !u!65 &49968544
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -330,6 +347,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -355,6 +376,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &52985826 --- !u!65 &52985826
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -436,6 +458,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -461,6 +487,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &191484261 --- !u!65 &191484261
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -623,6 +650,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -648,6 +679,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &348061408 --- !u!65 &348061408
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -729,6 +761,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -754,6 +790,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &418321635 --- !u!65 &418321635
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -835,6 +872,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -860,6 +901,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &447055820 --- !u!65 &447055820
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1037,6 +1079,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -1062,6 +1108,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &934208703 --- !u!65 &934208703
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1254,6 +1301,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -1279,6 +1330,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &986073235 --- !u!65 &986073235
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1324,12 +1376,12 @@ PrefabInstance:
- target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a, - target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a,
type: 3} type: 3}
propertyPath: m_LocalPosition.y propertyPath: m_LocalPosition.y
value: -0.0000009536743 value: 0.1
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a, - target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a,
type: 3} type: 3}
propertyPath: m_LocalPosition.z propertyPath: m_LocalPosition.z
value: -1.429 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a, - target: {fileID: -8679921383154817045, guid: aedf6e849dd924e229c57640f99ff50a,
type: 3} type: 3}
@@ -1403,7 +1455,7 @@ CharacterController:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 989436104} m_GameObject: {fileID: 989436104}
m_Material: {fileID: 0} m_Material: {fileID: 14211372}
m_IncludeLayers: m_IncludeLayers:
serializedVersion: 2 serializedVersion: 2
m_Bits: 0 m_Bits: 0
@@ -1434,11 +1486,11 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b91aa6ae607324ce19fc46225a44e70a, type: 3} m_Script: {fileID: 11500000, guid: b91aa6ae607324ce19fc46225a44e70a, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
speed: 5 speed: 2
range: 500 range: 30
detectRange: 200 detectRange: 20
attackRange: 5 attackRange: 5
target: {fileID: 0} target: {fileID: 989436104}
--- !u!21 &1122778264 --- !u!21 &1122778264
Material: Material:
serializedVersion: 8 serializedVersion: 8
@@ -1653,6 +1705,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -1678,6 +1734,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &1369034732 --- !u!65 &1369034732
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1759,6 +1816,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -1784,6 +1845,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &1489219292 --- !u!65 &1489219292
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1865,6 +1927,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -1890,6 +1956,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &1517159231 --- !u!65 &1517159231
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1971,6 +2038,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -1996,6 +2067,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &1560522223 --- !u!65 &1560522223
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -2077,6 +2149,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -2102,6 +2178,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &1641097996 --- !u!65 &1641097996
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -2183,6 +2260,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -2208,6 +2289,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &1692767929 --- !u!65 &1692767929
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -2370,6 +2452,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -2395,6 +2481,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &2124957280 --- !u!65 &2124957280
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -2476,6 +2563,10 @@ MeshRenderer:
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 1
m_RayTracingMode: 2 m_RayTracingMode: 2
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_virtualGeometry: 0
m_ShadingRate: 0
m_ForceDisableGRD: 0
m_ForceDisableSmallMeshCull: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
@@ -2501,6 +2592,7 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
m_MaskInteraction: 0
--- !u!65 &2142672092 --- !u!65 &2142672092
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
+44 -17
View File
@@ -52,6 +52,7 @@ public class NewBehaviourScript : MonoBehaviour
// Start is called before the first frame update // Start is called before the first frame update
void Start() void Start()
{ {
@@ -71,21 +72,10 @@ public class NewBehaviourScript : MonoBehaviour
//攻击状态直接返回 //攻击状态直接返回
if (state == State.Attack) if (state == State.Attack)
{ {
animator.SetInteger("speed", 0);
return; return;
} }
//角色在攻击状态则返回
if (state == State.Alert)
{
//移动
move(targetPos - transform.position);
//到达目标点时候随机目标点
if (Vector3.Distance(transform.position, targetPos) < 0.1f)
{
randomTargetPos();
}
}
//获取侦查范围内除自己以外的Player层的单位 //获取侦查范围内除自己以外的Player层的单位
var players = Physics.OverlapSphere(transform.position, detectRange, LayerMask.GetMask("Player")); var players = Physics.OverlapSphere(transform.position, detectRange, LayerMask.GetMask("Player"));
//如果存在单位 //如果存在单位
@@ -110,10 +100,32 @@ public class NewBehaviourScript : MonoBehaviour
{ {
attack(player); attack(player);
} }
return;
} }
} }
} }
if (state == State.Track)
{
state = State.Alert;
}
//没有侦查到敌人则回到巡逻
state = State.Alert;
//角色在攻击状态则返回
if (state == State.Alert)
{
//移动
move(targetPos - transform.position);
//到达目标点时候随机目标点,只判断水平距离
Vector3 patrolOffset = transform.position - targetPos;
patrolOffset.y = 0;
if (patrolOffset.sqrMagnitude < 0.01f)
{
randomTargetPos();
}
}
} }
@@ -121,8 +133,14 @@ public class NewBehaviourScript : MonoBehaviour
private void attack(Collider player) private void attack(Collider player)
{ {
//转向攻击目标 //转向攻击目标
transform.rotation = Quaternion.LookRotation(player.transform.position - transform.position, Vector3.up); var direction = player.transform.position - transform.position;
direction.y = 0;
if (direction != Vector3.zero)
{
transform.rotation = Quaternion.LookRotation(direction, Vector3.up);
}
//攻击动画动作 //攻击动画动作
animator.SetInteger("speed", 0);
animator.SetTrigger("attack"); animator.SetTrigger("attack");
state = State.Attack; state = State.Attack;
} }
@@ -134,6 +152,7 @@ public class NewBehaviourScript : MonoBehaviour
//打印 //打印
Debug.Log("攻击结束"); Debug.Log("攻击结束");
state = State.Alert; state = State.Alert;
randomTargetPos();
} }
@@ -141,6 +160,13 @@ public class NewBehaviourScript : MonoBehaviour
//角色移动,持续到目标点 //角色移动,持续到目标点
void move(Vector3 movement) void move(Vector3 movement)
{ {
movement.y = 0;
if (movement == Vector3.zero)
{
animator.SetInteger("speed", 0);
return;
}
//改变动画控制器的参数 //改变动画控制器的参数
animator.SetInteger("speed", 1); animator.SetInteger("speed", 1);
//向目标点移动 //向目标点移动
@@ -154,8 +180,9 @@ public class NewBehaviourScript : MonoBehaviour
//随机目标点 //随机目标点
private void randomTargetPos() private void randomTargetPos()
{ {
//以startPos为中心,range为半径,y为0的圆形内随机一个点复制到targetPos //以startPos为中心,在水平圆形范围内随机一个点
targetPos = new Vector3(Random.Range(-range, range), 0, Random.Range(-range, range)); Vector2 randomOffset = Random.insideUnitCircle * range;
targetPos = startPos + new Vector3(randomOffset.x, 0, randomOffset.y);
} }
} }
+2 -2
View File
@@ -1,7 +1,6 @@
{ {
"dependencies": { "dependencies": {
"cn.tuanjie.ai.generators": "file:../.codely-cli/extensions/TJGenerators/Packages/cn.tuanjie.ai.generators", "cn.tuanjie.ai.generators": "file:../.codely-cli/extensions/TJGenerators/Packages/cn.tuanjie.ai.generators",
"cn.tuanjie.codely.bridge": "1.0.74",
"com.unity.collab-proxy": "2.6.0", "com.unity.collab-proxy": "2.6.0",
"com.unity.feature.mobile": "1.0.0", "com.unity.feature.mobile": "1.0.0",
"com.unity.ide.rider": "3.0.36", "com.unity.ide.rider": "3.0.36",
@@ -42,6 +41,7 @@
"com.unity.modules.video": "1.0.0", "com.unity.modules.video": "1.0.0",
"com.unity.modules.vr": "1.0.0", "com.unity.modules.vr": "1.0.0",
"com.unity.modules.wind": "1.0.0", "com.unity.modules.wind": "1.0.0",
"com.unity.modules.xr": "1.0.0" "com.unity.modules.xr": "1.0.0",
"cn.tuanjie.codely.bridge": "1.0.75"
} }
} }
+1 -1
View File
@@ -13,7 +13,7 @@
} }
}, },
"cn.tuanjie.codely.bridge": { "cn.tuanjie.codely.bridge": {
"version": "1.0.74", "version": "1.0.75",
"depth": 0, "depth": 0,
"source": "registry", "source": "registry",
"dependencies": { "dependencies": {
+4 -1
View File
@@ -4,7 +4,10 @@
EditorBuildSettings: EditorBuildSettings:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
serializedVersion: 2 serializedVersion: 2
m_Scenes: [] m_Scenes:
- enabled: 1
path: Assets/Scenes/SampleScene.scene
guid: 7f8a9209e2c654770b6c8311c7e23e18
m_configObjects: m_configObjects:
com.unity.adaptiveperformance.simulator.provider_settings: {fileID: 11400000, com.unity.adaptiveperformance.simulator.provider_settings: {fileID: 11400000,
guid: b8a7f88d1a5a949a49949bb4bb80f68d, type: 2} guid: b8a7f88d1a5a949a49949bb4bb80f68d, type: 2}