diff --git a/Assets/Prefabs/CharacterMaterial.mat b/Assets/Prefabs/CharacterMaterial.mat new file mode 100644 index 0000000..4925584 --- /dev/null +++ b/Assets/Prefabs/CharacterMaterial.mat @@ -0,0 +1,136 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: CharacterMaterial + m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: + RenderType: Opaque + disabledShaderPasses: + - MOTIONVECTORS + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _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: 0} + 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} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AddPrecomputedVelocity: 0 + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.005 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 +--- !u!114 &5949957933696170527 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 9 diff --git a/Assets/Prefabs/CharacterMaterial.mat.meta b/Assets/Prefabs/CharacterMaterial.mat.meta new file mode 100644 index 0000000..9bf1328 --- /dev/null +++ b/Assets/Prefabs/CharacterMaterial.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6f1392d25de49d34bbb1ae6b583ec7bd +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/FPSPlayer.prefab b/Assets/Prefabs/FPSPlayer.prefab new file mode 100644 index 0000000..a29c325 --- /dev/null +++ b/Assets/Prefabs/FPSPlayer.prefab @@ -0,0 +1,85 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &577874318210893199 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 577874318210893197} + - component: {fileID: 7698645590983583992} + - component: {fileID: 3788593771807550029} + - component: {fileID: 1933375481360013513} + m_Layer: 0 + m_Name: FPSPlayer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &577874318210893197 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 577874318210893199} + 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: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &7698645590983583992 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 577874318210893199} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 98df7776338bbf9418e4d50363a02333, type: 3} + m_Name: + m_EditorClassIdentifier: + ControlledCharacter: {fileID: 0} +--- !u!114 &3788593771807550029 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 577874318210893199} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c16549610bfe4458aa9389201d072bb6, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &1933375481360013513 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 577874318210893199} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7c79d771cedb4794bf100ce60df5f764, type: 3} + m_Name: + m_EditorClassIdentifier: + DefaultGhostMode: 2 + SupportedGhostModes: 3 + OptimizationMode: 0 + Importance: 1 + prefabId: + HasOwner: 1 + SupportAutoCommandTarget: 1 + TrackInterpolationDelay: 0 + GhostGroup: 0 + UsePreSerialization: 0 + RollbackPredictedSpawnedGhostState: 0 + RollbackPredictionOnStructuralChanges: 1 diff --git a/Assets/Prefabs/FPSPlayer.prefab.meta b/Assets/Prefabs/FPSPlayer.prefab.meta new file mode 100644 index 0000000..3dfb632 --- /dev/null +++ b/Assets/Prefabs/FPSPlayer.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fb25bd25e66169c4f83a52201b051ba2 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/FPSPrefab.prefab b/Assets/Prefabs/FPSPrefab.prefab new file mode 100644 index 0000000..8468003 --- /dev/null +++ b/Assets/Prefabs/FPSPrefab.prefab @@ -0,0 +1,327 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1555240849038293811 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1555240849038293810} + - component: {fileID: 6060867110873050882} + - component: {fileID: 6622008125457246999} + - component: {fileID: 4995878257031069448} + - component: {fileID: 8700726934599842024} + - component: {fileID: 1854736588908238760} + - component: {fileID: 3403150522591491636} + - component: {fileID: 5883734756752601847} + m_Layer: 0 + m_Name: FPSPrefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1555240849038293810 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555240849038293811} + 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: 2348594743945901555} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &6060867110873050882 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555240849038293811} + m_Material: {fileID: 0} + 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: 2 + m_Radius: 0.5 + m_Height: 2 + m_Direction: 1 + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &6622008125457246999 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555240849038293811} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c16549610bfe4458aa9389201d072bb6, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &4995878257031069448 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555240849038293811} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7c79d771cedb4794bf100ce60df5f764, type: 3} + m_Name: + m_EditorClassIdentifier: + DefaultGhostMode: 2 + SupportedGhostModes: 3 + OptimizationMode: 0 + Importance: 1000 + prefabId: + HasOwner: 1 + SupportAutoCommandTarget: 1 + TrackInterpolationDelay: 0 + GhostGroup: 0 + UsePreSerialization: 0 + RollbackPredictedSpawnedGhostState: 0 + RollbackPredictionOnStructuralChanges: 1 +--- !u!23 &8700726934599842024 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555240849038293811} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 6f1392d25de49d34bbb1ae6b583ec7bd, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1854736588908238760 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555240849038293811} + m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &3403150522591491636 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555240849038293811} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 544609009a6605d44a92eca2ad0145ad, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &5883734756752601847 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555240849038293811} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 03c9592a80483fd478e45d176ac83132, type: 3} + m_Name: + m_EditorClassIdentifier: + ViewEntity: {fileID: 5307440377108821305} + CharacterProperties: + CustomPhysicsBodyTags: + Tag00: 0 + Tag01: 0 + Tag02: 0 + Tag03: 0 + Tag04: 0 + Tag05: 0 + Tag06: 0 + Tag07: 0 + InterpolatePosition: 1 + InterpolateRotation: 0 + EvaluateGrounding: 1 + SnapToGround: 1 + GroundSnappingDistance: 0.5 + EnhancedGroundPrecision: 0 + MaxGroundedSlopeAngle: 60 + DetectMovementCollisions: 1 + DecollideFromOverlaps: 1 + ProjectVelocityOnInitialOverlaps: 0 + MaxContinuousCollisionsIterations: 8 + MaxOverlapDecollisionIterations: 2 + DiscardMovementWhenExceedMaxIterations: 1 + KillVelocityWhenExceedMaxIterations: 1 + DetectObstructionsForParentBodyMovement: 0 + SimulateDynamicBody: 1 + Mass: 1 + GroundMaxSpeed: 10 + GroundedMovementSharpness: 15 + AirAcceleration: 50 + AirMaxSpeed: 10 + AirDrag: 0 + JumpSpeed: 10 + Gravity: + x: -0 + y: -30 + z: -0 + PreventAirAccelerationAgainstUngroundedHits: 1 + StepAndSlopeHandling: + StepHandling: 0 + MaxStepHeight: 0.5 + ExtraStepChecksDistance: 0.1 + CharacterWidthForStepGroundingCheck: 1 + PreventGroundingWhenMovingTowardsNoGrounding: 1 + HasMaxDownwardSlopeChangeAngle: 0 + MaxDownwardSlopeChangeAngle: 90 + ConstrainVelocityToGroundPlane: 1 + MinViewAngle: -90 + MaxViewAngle: 90 +--- !u!1 &5307440377108821305 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2348594743945901555} + - component: {fileID: 2119331458662122770} + - component: {fileID: 4415356237060297836} + - component: {fileID: 6313547661923461602} + m_Layer: 0 + m_Name: View + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2348594743945901555 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5307440377108821305} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.391, z: 0.419} + m_LocalScale: {x: 0.6016427, y: 0.2015024, z: 0.1763629} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1555240849038293810} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2119331458662122770 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5307440377108821305} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4415356237060297836 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5307440377108821305} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &6313547661923461602 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5307440377108821305} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f3ddd2cb094880b40a1612adcf67e9a2, type: 3} + m_Name: + m_EditorClassIdentifier: + Character: {fileID: 1555240849038293811} diff --git a/Assets/Prefabs/FPSPrefab.prefab.meta b/Assets/Prefabs/FPSPrefab.prefab.meta new file mode 100644 index 0000000..8fbaf07 --- /dev/null +++ b/Assets/Prefabs/FPSPrefab.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3ec06d4b739fd724c83484d1713584a8 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/TD_Scene.unity b/Assets/Scenes/TD_Scene.unity index 04ab924..444e26a 100644 --- a/Assets/Scenes/TD_Scene.unity +++ b/Assets/Scenes/TD_Scene.unity @@ -131,7 +131,6 @@ GameObject: - component: {fileID: 330585545} - component: {fileID: 330585544} - component: {fileID: 330585547} - - component: {fileID: 330585549} - component: {fileID: 330585550} m_Layer: 0 m_Name: Main Camera @@ -258,23 +257,6 @@ MonoBehaviour: m_MipBias: 0 m_VarianceClampScale: 0.9 m_ContrastAdaptiveSharpening: 0 ---- !u!114 &330585549 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 330585543} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 618b0e3f6c65dd247a4a016150006c57, type: 3} - m_Name: - m_EditorClassIdentifier: - m_LookSpeedController: 120 - m_LookSpeedMouse: 4 - m_MoveSpeed: 10 - m_MoveSpeedIncrement: 2.5 - m_Turbo: 10 --- !u!114 &330585550 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/TD_Scene/TD_EntityScene.unity b/Assets/Scenes/TD_Scene/TD_EntityScene.unity index 8c7c79b..493d72b 100644 --- a/Assets/Scenes/TD_Scene/TD_EntityScene.unity +++ b/Assets/Scenes/TD_Scene/TD_EntityScene.unity @@ -163,7 +163,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 8c277d7b8d296f0418bcdc6075f1e394, type: 3} m_Name: m_EditorClassIdentifier: - PrefabCharacter: {fileID: 1555240849038293811, guid: 2c95b1fb964db584b842d4c61dff15c7, type: 3} + PrefabCharacter: {fileID: 1555240849038293811, guid: 3ec06d4b739fd724c83484d1713584a8, type: 3} + PrefabFPSPlayer: {fileID: 577874318210893199, guid: fb25bd25e66169c4f83a52201b051ba2, type: 3} --- !u!1 &1798493387 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Client/InitializeLocallySystem.cs b/Assets/Scripts/Client/InitializeLocallySystem.cs new file mode 100644 index 0000000..a9ea9dc --- /dev/null +++ b/Assets/Scripts/Client/InitializeLocallySystem.cs @@ -0,0 +1,33 @@ +using RpcComponents; +using Unity.Burst; +using Unity.Collections; +using Unity.Entities; +using Unity.NetCode; + +partial struct InitializeLocallySystem : ISystem +{ + [BurstCompile] + public void OnCreate(ref SystemState state) + { + var builder = new EntityQueryBuilder(Allocator.Temp).WithAll().WithNone(); + state.RequireForUpdate(state.GetEntityQuery(builder)); + } + + [BurstCompile] + public void OnUpdate(ref SystemState state) + { + EntityCommandBuffer ecb = SystemAPI.GetSingletonRW().ValueRW.CreateCommandBuffer(state.WorldUnmanaged); + + foreach (var (character, entity) in SystemAPI.Query().WithAll().WithNone().WithEntityAccess()) + { + ecb.AddComponent(character.ViewEntity, new MainEntityCamera()); + ecb.AddComponent(entity, new InitializedLocallyTag()); + } + } + + [BurstCompile] + public void OnDestroy(ref SystemState state) + { + + } +} diff --git a/Assets/Scripts/Client/InitializeLocallySystem.cs.meta b/Assets/Scripts/Client/InitializeLocallySystem.cs.meta new file mode 100644 index 0000000..201eb0e --- /dev/null +++ b/Assets/Scripts/Client/InitializeLocallySystem.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 1b3232746997cb344a18d3986cc1e107 \ No newline at end of file diff --git a/Assets/Scripts/Client/InitializedLocallyTag.cs b/Assets/Scripts/Client/InitializedLocallyTag.cs new file mode 100644 index 0000000..914ef8b --- /dev/null +++ b/Assets/Scripts/Client/InitializedLocallyTag.cs @@ -0,0 +1,6 @@ +using Unity.Entities; + +public struct InitializedLocallyTag : IComponentData +{ + +} diff --git a/Assets/Scripts/Client/InitializedLocallyTag.cs.meta b/Assets/Scripts/Client/InitializedLocallyTag.cs.meta new file mode 100644 index 0000000..8b40ce3 --- /dev/null +++ b/Assets/Scripts/Client/InitializedLocallyTag.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: fe8481b72fe69a249ab201f73028655f \ No newline at end of file diff --git a/Assets/Scripts/Common/TDPrefabsAuthoring.cs b/Assets/Scripts/Common/TDPrefabsAuthoring.cs index 085c06e..a1d7686 100644 --- a/Assets/Scripts/Common/TDPrefabsAuthoring.cs +++ b/Assets/Scripts/Common/TDPrefabsAuthoring.cs @@ -7,6 +7,7 @@ namespace Common { // public GameObject PrefabController; public GameObject PrefabCharacter; + public GameObject PrefabFPSPlayer; public class TdPrefabsAuthoringBaker : Baker { @@ -16,7 +17,7 @@ namespace Common AddComponent(entity, new TdPrefabs() { Character = GetEntity(authoring.PrefabCharacter, TransformUsageFlags.Dynamic), - // Controller = GetEntity(authoring.PrefabController, TransformUsageFlags.Dynamic) + FPSPlayer = GetEntity(authoring.PrefabFPSPlayer, TransformUsageFlags.Dynamic) }); } } diff --git a/Assets/Scripts/Common/TdPrefabs.cs b/Assets/Scripts/Common/TdPrefabs.cs index 2f87e6b..dd79f20 100644 --- a/Assets/Scripts/Common/TdPrefabs.cs +++ b/Assets/Scripts/Common/TdPrefabs.cs @@ -5,6 +5,6 @@ namespace Common public struct TdPrefabs : IComponentData { public Entity Character; - // public Entity Controller; + public Entity FPSPlayer; } } diff --git a/Assets/Scripts/Server/ServerProcessGameEntryRequestSystem.cs b/Assets/Scripts/Server/ServerProcessGameEntryRequestSystem.cs index 314ff78..d504892 100644 --- a/Assets/Scripts/Server/ServerProcessGameEntryRequestSystem.cs +++ b/Assets/Scripts/Server/ServerProcessGameEntryRequestSystem.cs @@ -25,7 +25,9 @@ namespace Server public void OnUpdate(ref SystemState state) { var ecb = new EntityCommandBuffer(Allocator.Temp); - var characterPrefab = SystemAPI.GetSingleton().Character; + var tdPrefabs = SystemAPI.GetSingleton(); + var characterPrefab = tdPrefabs.Character; + var fpsPlayerPrefab = tdPrefabs.FPSPlayer; foreach (var (teamRequest, requestSource, requestEntity) in SystemAPI.Query().WithEntityAccess()) { @@ -55,12 +57,16 @@ namespace Server Debug.Log($"Server is assigning ClientId {clientId} to team {requestedTeam}"); var newCharacter = ecb.Instantiate(characterPrefab); + var newFPSPlayer = ecb.Instantiate(fpsPlayerPrefab); + ecb.SetName(newCharacter, "Character"); var newTransform = LocalTransform.FromPosition(spawnPosition); ecb.SetComponent(newCharacter, newTransform); ecb.SetComponent(newCharacter, new GhostOwner { NetworkId = clientId}); + ecb.SetComponent(newFPSPlayer, new GhostOwner { NetworkId = clientId}); + ecb.SetComponent(newCharacter, new TdTeam { Value = requestedTeam }); ecb.SetComponent(newCharacter, new CharacterConfig @@ -68,8 +74,14 @@ namespace Server Color = requestedColor }); + //Setup connection + FirstPersonPlayer playerComponent = SystemAPI.GetComponent(tdPrefabs.FPSPlayer); + playerComponent.ControlledCharacter = newCharacter; + ecb.SetComponent(newFPSPlayer, playerComponent); + //Destroy character prefab, when client disconnects ecb.AppendToBuffer(requestSource.SourceConnection, new LinkedEntityGroup{Value = newCharacter}); + ecb.AppendToBuffer(requestSource.SourceConnection, new LinkedEntityGroup{Value = newFPSPlayer}); } ecb.Playback(state.EntityManager); diff --git a/Assets/Thirdparty/Ciathyza/Gridbox Prototype Materials/Materials/URP/Prototype_512x512_Purple.mat b/Assets/Thirdparty/Ciathyza/Gridbox Prototype Materials/Materials/URP/Prototype_512x512_Purple.mat index 04fd468..107ecbb 100644 --- a/Assets/Thirdparty/Ciathyza/Gridbox Prototype Materials/Materials/URP/Prototype_512x512_Purple.mat +++ b/Assets/Thirdparty/Ciathyza/Gridbox Prototype Materials/Materials/URP/Prototype_512x512_Purple.mat @@ -29,7 +29,7 @@ MonoBehaviour: --- !u!21 &2100000 Material: serializedVersion: 8 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 32 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -352,9 +352,9 @@ Material: - _ZTestTransparent: 4 - _ZWrite: 1 m_Colors: - - _BaseColor: {r: 1, g: 1, b: 1, a: 0} + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} - _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0} - - _Color: {r: 1, g: 1, b: 1, a: 0} + - _Color: {r: 1, g: 1, b: 1, a: 1} - _DiffusionProfileAsset: {r: 0, g: 0, b: 0, a: 0} - _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0} - _EmissionColor: {r: 1, g: 1, b: 1, a: 1}