├── .gitignore ├── Assets ├── PhysicsTankExample.meta └── PhysicsTankExample │ ├── Materials.meta │ ├── Materials │ ├── Ground.mat │ ├── Ground.mat.meta │ ├── Textures.meta │ └── Textures │ │ ├── DarkChecker.png │ │ └── DarkChecker.png.meta │ ├── Prefabs.meta │ ├── Prefabs │ ├── DifferentialSteeringTank.prefab │ ├── DifferentialSteeringTank.prefab.meta │ ├── FourWheelTurningTank.prefab │ ├── FourWheelTurningTank.prefab.meta │ ├── MagicSteeringTank.prefab │ ├── MagicSteeringTank.prefab.meta │ ├── WheelDummy.meta │ └── WheelDummy │ │ ├── WheelModel.prefab │ │ └── WheelModel.prefab.meta │ ├── Scene.meta │ ├── Scene │ ├── TankDriving.unity │ └── TankDriving.unity.meta │ ├── Scripts.meta │ ├── Scripts │ ├── FreeCamera.cs │ ├── FreeCamera.cs.meta │ ├── PhysicsTank.cs │ └── PhysicsTank.cs.meta │ ├── Terrain.meta │ └── Terrain │ ├── TankDrivingTerrain.asset │ └── TankDrivingTerrain.asset.meta ├── LICENSE ├── PhysicsTankExample.unitypackage ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset └── UnityConnectSettings.asset ├── README.md ├── Screenshots ├── rotating.png ├── tankrolling.gif └── wheelsuspension.png └── UnityPackageManager └── manifest.json /.gitignore: -------------------------------------------------------------------------------- 1 | /[Ll]ibrary/ 2 | /[Tt]emp/ 3 | /[Oo]bj/ 4 | /[Bb]uild/ 5 | /[Bb]uilds/ 6 | /Assets/AssetStoreTools* 7 | 8 | # Visual Studio 2015 cache directory 9 | /.vs/ 10 | 11 | # Autogenerated VS/MD/Consulo solution and project files 12 | ExportedObj/ 13 | .consulo/ 14 | *.csproj 15 | *.unityproj 16 | *.sln 17 | *.suo 18 | *.tmp 19 | *.user 20 | *.userprefs 21 | *.pidb 22 | *.booproj 23 | *.svd 24 | *.pdb 25 | 26 | # Unity3D generated meta files 27 | *.pidb.meta 28 | 29 | # Unity3D Generated File On Crash Reports 30 | sysinfo.txt 31 | 32 | # Builds 33 | *.apk 34 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 95826c18e1794d644a09772afbf0ee07 3 | folderAsset: yes 4 | timeCreated: 1518755135 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4872565f9070b3458f7d0d404e177a0 3 | folderAsset: yes 4 | timeCreated: 1518755038 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Materials/Ground.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Ground 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0.5 64 | - _GlossyReflections: 1 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 1 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.46323532, g: 0.46323532, b: 0.46323532, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Materials/Ground.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 38eb7160bbe032344a04458330187d50 3 | timeCreated: 1518755047 4 | licenseType: Free 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 2100000 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Materials/Textures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 313e752cc8ec5e04bb4e67577c74448b 3 | folderAsset: yes 4 | timeCreated: 1518756099 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Materials/Textures/DarkChecker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brihernandez/PhysicsTankExample/4d8290ead56d98a9351ad6310f391b29b5a4959c/Assets/PhysicsTankExample/Materials/Textures/DarkChecker.png -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Materials/Textures/DarkChecker.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f8956d9ff764aee4197eff788b121274 3 | timeCreated: 1518756099 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | externalObjects: {} 8 | serializedVersion: 4 9 | mipmaps: 10 | mipMapMode: 0 11 | enableMipMap: 1 12 | sRGBTexture: 1 13 | linearTexture: 0 14 | fadeOut: 0 15 | borderMipMap: 0 16 | mipMapsPreserveCoverage: 0 17 | alphaTestReferenceValue: 0.5 18 | mipMapFadeDistanceStart: 1 19 | mipMapFadeDistanceEnd: 3 20 | bumpmap: 21 | convertToNormalMap: 0 22 | externalNormalMap: 0 23 | heightScale: 0.25 24 | normalMapFilter: 0 25 | isReadable: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -1 37 | wrapU: -1 38 | wrapV: -1 39 | wrapW: -1 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 49 | spritePixelsToUnits: 100 50 | alphaUsage: 1 51 | alphaIsTransparency: 0 52 | spriteTessellationDetail: -1 53 | textureType: 0 54 | textureShape: 1 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - buildTarget: DefaultTexturePlatform 60 | maxTextureSize: 2048 61 | resizeAlgorithm: 0 62 | textureFormat: -1 63 | textureCompression: 1 64 | compressionQuality: 50 65 | crunchedCompression: 0 66 | allowsAlphaSplitting: 0 67 | overridden: 0 68 | androidETC2FallbackOverride: 0 69 | spriteSheet: 70 | serializedVersion: 2 71 | sprites: [] 72 | outline: [] 73 | physicsShape: [] 74 | spritePackingTag: 75 | userData: 76 | assetBundleName: 77 | assetBundleVariant: 78 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ac1be4446bc9a848bfbc6d8e815b683 3 | folderAsset: yes 4 | timeCreated: 1518757249 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs/DifferentialSteeringTank.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_ParentPrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1431859253861506} 13 | m_IsPrefabParent: 1 14 | --- !u!1 &1050936516120142 15 | GameObject: 16 | m_ObjectHideFlags: 1 17 | m_PrefabParentObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 5 20 | m_Component: 21 | - component: {fileID: 4009689464159746} 22 | - component: {fileID: 146766176499726984} 23 | m_Layer: 0 24 | m_Name: MidR 25 | m_TagString: Untagged 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!1 &1187456021696478 31 | GameObject: 32 | m_ObjectHideFlags: 1 33 | m_PrefabParentObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | serializedVersion: 5 36 | m_Component: 37 | - component: {fileID: 4082802804879650} 38 | - component: {fileID: 33711360357416120} 39 | - component: {fileID: 23387294149563736} 40 | m_Layer: 0 41 | m_Name: Cube 42 | m_TagString: Untagged 43 | m_Icon: {fileID: 0} 44 | m_NavMeshLayer: 0 45 | m_StaticEditorFlags: 0 46 | m_IsActive: 1 47 | --- !u!1 &1228090606528886 48 | GameObject: 49 | m_ObjectHideFlags: 1 50 | m_PrefabParentObject: {fileID: 0} 51 | m_PrefabInternal: {fileID: 100100000} 52 | serializedVersion: 5 53 | m_Component: 54 | - component: {fileID: 4870441517341588} 55 | - component: {fileID: 146669689204416998} 56 | m_Layer: 0 57 | m_Name: FrontL 58 | m_TagString: Untagged 59 | m_Icon: {fileID: 0} 60 | m_NavMeshLayer: 0 61 | m_StaticEditorFlags: 0 62 | m_IsActive: 1 63 | --- !u!1 &1237238605544538 64 | GameObject: 65 | m_ObjectHideFlags: 1 66 | m_PrefabParentObject: {fileID: 0} 67 | m_PrefabInternal: {fileID: 100100000} 68 | serializedVersion: 5 69 | m_Component: 70 | - component: {fileID: 4732101180776498} 71 | - component: {fileID: 146754198569597324} 72 | m_Layer: 0 73 | m_Name: MidL (1) 74 | m_TagString: Untagged 75 | m_Icon: {fileID: 0} 76 | m_NavMeshLayer: 0 77 | m_StaticEditorFlags: 0 78 | m_IsActive: 1 79 | --- !u!1 &1327979782895992 80 | GameObject: 81 | m_ObjectHideFlags: 1 82 | m_PrefabParentObject: {fileID: 0} 83 | m_PrefabInternal: {fileID: 100100000} 84 | serializedVersion: 5 85 | m_Component: 86 | - component: {fileID: 4900337071895672} 87 | - component: {fileID: 33321609908857492} 88 | - component: {fileID: 23715712526524338} 89 | m_Layer: 0 90 | m_Name: Cube (2) 91 | m_TagString: Untagged 92 | m_Icon: {fileID: 0} 93 | m_NavMeshLayer: 0 94 | m_StaticEditorFlags: 0 95 | m_IsActive: 1 96 | --- !u!1 &1431859253861506 97 | GameObject: 98 | m_ObjectHideFlags: 0 99 | m_PrefabParentObject: {fileID: 0} 100 | m_PrefabInternal: {fileID: 100100000} 101 | serializedVersion: 5 102 | m_Component: 103 | - component: {fileID: 4985708407099390} 104 | - component: {fileID: 54821083627250054} 105 | - component: {fileID: 114859605102470222} 106 | m_Layer: 0 107 | m_Name: DifferentialSteeringTank 108 | m_TagString: Untagged 109 | m_Icon: {fileID: 0} 110 | m_NavMeshLayer: 0 111 | m_StaticEditorFlags: 0 112 | m_IsActive: 1 113 | --- !u!1 &1437007351173146 114 | GameObject: 115 | m_ObjectHideFlags: 0 116 | m_PrefabParentObject: {fileID: 0} 117 | m_PrefabInternal: {fileID: 100100000} 118 | serializedVersion: 5 119 | m_Component: 120 | - component: {fileID: 4499558306923636} 121 | m_Layer: 0 122 | m_Name: Wheels 123 | m_TagString: Untagged 124 | m_Icon: {fileID: 0} 125 | m_NavMeshLayer: 0 126 | m_StaticEditorFlags: 0 127 | m_IsActive: 1 128 | --- !u!1 &1438433361633014 129 | GameObject: 130 | m_ObjectHideFlags: 0 131 | m_PrefabParentObject: {fileID: 0} 132 | m_PrefabInternal: {fileID: 100100000} 133 | serializedVersion: 5 134 | m_Component: 135 | - component: {fileID: 4942901326069204} 136 | - component: {fileID: 20091997885043896} 137 | - component: {fileID: 124912703719097526} 138 | - component: {fileID: 81946772977106880} 139 | - component: {fileID: 114431299140869114} 140 | m_Layer: 0 141 | m_Name: Main Camera 142 | m_TagString: MainCamera 143 | m_Icon: {fileID: 0} 144 | m_NavMeshLayer: 0 145 | m_StaticEditorFlags: 0 146 | m_IsActive: 1 147 | --- !u!1 &1484559805866428 148 | GameObject: 149 | m_ObjectHideFlags: 1 150 | m_PrefabParentObject: {fileID: 0} 151 | m_PrefabInternal: {fileID: 100100000} 152 | serializedVersion: 5 153 | m_Component: 154 | - component: {fileID: 4986737396941476} 155 | - component: {fileID: 146366712899600120} 156 | m_Layer: 0 157 | m_Name: MidL 158 | m_TagString: Untagged 159 | m_Icon: {fileID: 0} 160 | m_NavMeshLayer: 0 161 | m_StaticEditorFlags: 0 162 | m_IsActive: 1 163 | --- !u!1 &1513157692673870 164 | GameObject: 165 | m_ObjectHideFlags: 1 166 | m_PrefabParentObject: {fileID: 0} 167 | m_PrefabInternal: {fileID: 100100000} 168 | serializedVersion: 5 169 | m_Component: 170 | - component: {fileID: 4823300776681922} 171 | - component: {fileID: 146059346404442106} 172 | m_Layer: 0 173 | m_Name: MidR (2) 174 | m_TagString: Untagged 175 | m_Icon: {fileID: 0} 176 | m_NavMeshLayer: 0 177 | m_StaticEditorFlags: 0 178 | m_IsActive: 1 179 | --- !u!1 &1521769694657396 180 | GameObject: 181 | m_ObjectHideFlags: 1 182 | m_PrefabParentObject: {fileID: 0} 183 | m_PrefabInternal: {fileID: 100100000} 184 | serializedVersion: 5 185 | m_Component: 186 | - component: {fileID: 4345671181568092} 187 | - component: {fileID: 146577326406905150} 188 | m_Layer: 0 189 | m_Name: RearL 190 | m_TagString: Untagged 191 | m_Icon: {fileID: 0} 192 | m_NavMeshLayer: 0 193 | m_StaticEditorFlags: 0 194 | m_IsActive: 1 195 | --- !u!1 &1603464523802202 196 | GameObject: 197 | m_ObjectHideFlags: 1 198 | m_PrefabParentObject: {fileID: 0} 199 | m_PrefabInternal: {fileID: 100100000} 200 | serializedVersion: 5 201 | m_Component: 202 | - component: {fileID: 4183840150493048} 203 | - component: {fileID: 146961494628575400} 204 | m_Layer: 0 205 | m_Name: MidR (1) 206 | m_TagString: Untagged 207 | m_Icon: {fileID: 0} 208 | m_NavMeshLayer: 0 209 | m_StaticEditorFlags: 0 210 | m_IsActive: 1 211 | --- !u!1 &1689451930033944 212 | GameObject: 213 | m_ObjectHideFlags: 0 214 | m_PrefabParentObject: {fileID: 0} 215 | m_PrefabInternal: {fileID: 100100000} 216 | serializedVersion: 5 217 | m_Component: 218 | - component: {fileID: 4795057186260270} 219 | - component: {fileID: 65202113211103896} 220 | m_Layer: 0 221 | m_Name: Collision 222 | m_TagString: Untagged 223 | m_Icon: {fileID: 0} 224 | m_NavMeshLayer: 0 225 | m_StaticEditorFlags: 0 226 | m_IsActive: 1 227 | --- !u!1 &1691147948062782 228 | GameObject: 229 | m_ObjectHideFlags: 1 230 | m_PrefabParentObject: {fileID: 0} 231 | m_PrefabInternal: {fileID: 100100000} 232 | serializedVersion: 5 233 | m_Component: 234 | - component: {fileID: 4822496926077644} 235 | - component: {fileID: 33994630379631186} 236 | - component: {fileID: 23363991563483870} 237 | m_Layer: 0 238 | m_Name: Cube (1) 239 | m_TagString: Untagged 240 | m_Icon: {fileID: 0} 241 | m_NavMeshLayer: 0 242 | m_StaticEditorFlags: 0 243 | m_IsActive: 1 244 | --- !u!1 &1724674621363988 245 | GameObject: 246 | m_ObjectHideFlags: 0 247 | m_PrefabParentObject: {fileID: 0} 248 | m_PrefabInternal: {fileID: 100100000} 249 | serializedVersion: 5 250 | m_Component: 251 | - component: {fileID: 4158090409638136} 252 | m_Layer: 0 253 | m_Name: CenterOfMass 254 | m_TagString: Untagged 255 | m_Icon: {fileID: 0} 256 | m_NavMeshLayer: 0 257 | m_StaticEditorFlags: 0 258 | m_IsActive: 1 259 | --- !u!1 &1846247565549514 260 | GameObject: 261 | m_ObjectHideFlags: 1 262 | m_PrefabParentObject: {fileID: 0} 263 | m_PrefabInternal: {fileID: 100100000} 264 | serializedVersion: 5 265 | m_Component: 266 | - component: {fileID: 4165914314309738} 267 | - component: {fileID: 146862077890143654} 268 | m_Layer: 0 269 | m_Name: FrontR 270 | m_TagString: Untagged 271 | m_Icon: {fileID: 0} 272 | m_NavMeshLayer: 0 273 | m_StaticEditorFlags: 0 274 | m_IsActive: 1 275 | --- !u!1 &1864310277458380 276 | GameObject: 277 | m_ObjectHideFlags: 0 278 | m_PrefabParentObject: {fileID: 0} 279 | m_PrefabInternal: {fileID: 100100000} 280 | serializedVersion: 5 281 | m_Component: 282 | - component: {fileID: 4633061600077526} 283 | m_Layer: 0 284 | m_Name: Visual 285 | m_TagString: Untagged 286 | m_Icon: {fileID: 0} 287 | m_NavMeshLayer: 0 288 | m_StaticEditorFlags: 0 289 | m_IsActive: 1 290 | --- !u!1 &1890708428023554 291 | GameObject: 292 | m_ObjectHideFlags: 1 293 | m_PrefabParentObject: {fileID: 0} 294 | m_PrefabInternal: {fileID: 100100000} 295 | serializedVersion: 5 296 | m_Component: 297 | - component: {fileID: 4542958673946702} 298 | - component: {fileID: 146271028200284650} 299 | m_Layer: 0 300 | m_Name: MidL (2) 301 | m_TagString: Untagged 302 | m_Icon: {fileID: 0} 303 | m_NavMeshLayer: 0 304 | m_StaticEditorFlags: 0 305 | m_IsActive: 1 306 | --- !u!1 &1939018749441906 307 | GameObject: 308 | m_ObjectHideFlags: 1 309 | m_PrefabParentObject: {fileID: 0} 310 | m_PrefabInternal: {fileID: 100100000} 311 | serializedVersion: 5 312 | m_Component: 313 | - component: {fileID: 4957771235709042} 314 | - component: {fileID: 146209132695027112} 315 | m_Layer: 0 316 | m_Name: RearR 317 | m_TagString: Untagged 318 | m_Icon: {fileID: 0} 319 | m_NavMeshLayer: 0 320 | m_StaticEditorFlags: 0 321 | m_IsActive: 1 322 | --- !u!4 &4009689464159746 323 | Transform: 324 | m_ObjectHideFlags: 1 325 | m_PrefabParentObject: {fileID: 0} 326 | m_PrefabInternal: {fileID: 100100000} 327 | m_GameObject: {fileID: 1050936516120142} 328 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 329 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: 0} 330 | m_LocalScale: {x: 1, y: 1, z: 1} 331 | m_Children: [] 332 | m_Father: {fileID: 4499558306923636} 333 | m_RootOrder: 1 334 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 335 | --- !u!4 &4082802804879650 336 | Transform: 337 | m_ObjectHideFlags: 1 338 | m_PrefabParentObject: {fileID: 0} 339 | m_PrefabInternal: {fileID: 100100000} 340 | m_GameObject: {fileID: 1187456021696478} 341 | m_LocalRotation: {x: -0, y: 1, z: -0, w: 0.0000029504295} 342 | m_LocalPosition: {x: 0.000002861023, y: 0.3369998, z: -0.2500019} 343 | m_LocalScale: {x: 3.66, y: 0.80684286, z: 7.8} 344 | m_Children: [] 345 | m_Father: {fileID: 4633061600077526} 346 | m_RootOrder: 0 347 | m_LocalEulerAnglesHint: {x: 0, y: 180.00002, z: 0} 348 | --- !u!4 &4158090409638136 349 | Transform: 350 | m_ObjectHideFlags: 1 351 | m_PrefabParentObject: {fileID: 0} 352 | m_PrefabInternal: {fileID: 100100000} 353 | m_GameObject: {fileID: 1724674621363988} 354 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 355 | m_LocalPosition: {x: 0, y: -0.6, z: 0} 356 | m_LocalScale: {x: 1, y: 1, z: 1} 357 | m_Children: [] 358 | m_Father: {fileID: 4985708407099390} 359 | m_RootOrder: 4 360 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 361 | --- !u!4 &4165914314309738 362 | Transform: 363 | m_ObjectHideFlags: 1 364 | m_PrefabParentObject: {fileID: 0} 365 | m_PrefabInternal: {fileID: 100100000} 366 | m_GameObject: {fileID: 1846247565549514} 367 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 368 | m_LocalPosition: {x: 1.5319996, y: -0.26000023, z: 3.2999997} 369 | m_LocalScale: {x: 1, y: 1, z: 1} 370 | m_Children: [] 371 | m_Father: {fileID: 4499558306923636} 372 | m_RootOrder: 5 373 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 374 | --- !u!4 &4183840150493048 375 | Transform: 376 | m_ObjectHideFlags: 1 377 | m_PrefabParentObject: {fileID: 0} 378 | m_PrefabInternal: {fileID: 100100000} 379 | m_GameObject: {fileID: 1603464523802202} 380 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 381 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: 1.81} 382 | m_LocalScale: {x: 1, y: 1, z: 1} 383 | m_Children: [] 384 | m_Father: {fileID: 4499558306923636} 385 | m_RootOrder: 7 386 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 387 | --- !u!4 &4345671181568092 388 | Transform: 389 | m_ObjectHideFlags: 1 390 | m_PrefabParentObject: {fileID: 0} 391 | m_PrefabInternal: {fileID: 100100000} 392 | m_GameObject: {fileID: 1521769694657396} 393 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 394 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: -3.52} 395 | m_LocalScale: {x: 1, y: 1, z: 1} 396 | m_Children: [] 397 | m_Father: {fileID: 4499558306923636} 398 | m_RootOrder: 2 399 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 400 | --- !u!4 &4499558306923636 401 | Transform: 402 | m_ObjectHideFlags: 1 403 | m_PrefabParentObject: {fileID: 0} 404 | m_PrefabInternal: {fileID: 100100000} 405 | m_GameObject: {fileID: 1437007351173146} 406 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 407 | m_LocalPosition: {x: 0, y: 0, z: 0} 408 | m_LocalScale: {x: 1, y: 1, z: 1} 409 | m_Children: 410 | - {fileID: 4986737396941476} 411 | - {fileID: 4009689464159746} 412 | - {fileID: 4345671181568092} 413 | - {fileID: 4957771235709042} 414 | - {fileID: 4870441517341588} 415 | - {fileID: 4165914314309738} 416 | - {fileID: 4732101180776498} 417 | - {fileID: 4183840150493048} 418 | - {fileID: 4542958673946702} 419 | - {fileID: 4823300776681922} 420 | m_Father: {fileID: 4985708407099390} 421 | m_RootOrder: 2 422 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 423 | --- !u!4 &4542958673946702 424 | Transform: 425 | m_ObjectHideFlags: 1 426 | m_PrefabParentObject: {fileID: 0} 427 | m_PrefabInternal: {fileID: 100100000} 428 | m_GameObject: {fileID: 1890708428023554} 429 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 430 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: -1.77} 431 | m_LocalScale: {x: 1, y: 1, z: 1} 432 | m_Children: [] 433 | m_Father: {fileID: 4499558306923636} 434 | m_RootOrder: 8 435 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 436 | --- !u!4 &4633061600077526 437 | Transform: 438 | m_ObjectHideFlags: 1 439 | m_PrefabParentObject: {fileID: 0} 440 | m_PrefabInternal: {fileID: 100100000} 441 | m_GameObject: {fileID: 1864310277458380} 442 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 443 | m_LocalPosition: {x: 0, y: 0, z: 0} 444 | m_LocalScale: {x: 1, y: 1, z: 1} 445 | m_Children: 446 | - {fileID: 4082802804879650} 447 | - {fileID: 4822496926077644} 448 | - {fileID: 4900337071895672} 449 | m_Father: {fileID: 4985708407099390} 450 | m_RootOrder: 0 451 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 452 | --- !u!4 &4732101180776498 453 | Transform: 454 | m_ObjectHideFlags: 1 455 | m_PrefabParentObject: {fileID: 0} 456 | m_PrefabInternal: {fileID: 100100000} 457 | m_GameObject: {fileID: 1237238605544538} 458 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 459 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: 1.81} 460 | m_LocalScale: {x: 1, y: 1, z: 1} 461 | m_Children: [] 462 | m_Father: {fileID: 4499558306923636} 463 | m_RootOrder: 6 464 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 465 | --- !u!4 &4795057186260270 466 | Transform: 467 | m_ObjectHideFlags: 1 468 | m_PrefabParentObject: {fileID: 0} 469 | m_PrefabInternal: {fileID: 100100000} 470 | m_GameObject: {fileID: 1689451930033944} 471 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 472 | m_LocalPosition: {x: 0, y: 0.19999981, z: 0} 473 | m_LocalScale: {x: 1, y: 1, z: 1} 474 | m_Children: [] 475 | m_Father: {fileID: 4985708407099390} 476 | m_RootOrder: 1 477 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 478 | --- !u!4 &4822496926077644 479 | Transform: 480 | m_ObjectHideFlags: 1 481 | m_PrefabParentObject: {fileID: 0} 482 | m_PrefabInternal: {fileID: 100100000} 483 | m_GameObject: {fileID: 1691147948062782} 484 | m_LocalRotation: {x: -0, y: 1, z: -0, w: 0.0000029504295} 485 | m_LocalPosition: {x: 0.000005722046, y: 1.04, z: -0.81} 486 | m_LocalScale: {x: 2.5759895, y: 0.8046773, z: 3.2887259} 487 | m_Children: [] 488 | m_Father: {fileID: 4633061600077526} 489 | m_RootOrder: 1 490 | m_LocalEulerAnglesHint: {x: 0, y: 180.00002, z: 0} 491 | --- !u!4 &4823300776681922 492 | Transform: 493 | m_ObjectHideFlags: 1 494 | m_PrefabParentObject: {fileID: 0} 495 | m_PrefabInternal: {fileID: 100100000} 496 | m_GameObject: {fileID: 1513157692673870} 497 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 498 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: -1.77} 499 | m_LocalScale: {x: 1, y: 1, z: 1} 500 | m_Children: [] 501 | m_Father: {fileID: 4499558306923636} 502 | m_RootOrder: 9 503 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 504 | --- !u!4 &4870441517341588 505 | Transform: 506 | m_ObjectHideFlags: 1 507 | m_PrefabParentObject: {fileID: 0} 508 | m_PrefabInternal: {fileID: 100100000} 509 | m_GameObject: {fileID: 1228090606528886} 510 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 511 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: 3.3} 512 | m_LocalScale: {x: 1, y: 1, z: 1} 513 | m_Children: [] 514 | m_Father: {fileID: 4499558306923636} 515 | m_RootOrder: 4 516 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 517 | --- !u!4 &4900337071895672 518 | Transform: 519 | m_ObjectHideFlags: 1 520 | m_PrefabParentObject: {fileID: 0} 521 | m_PrefabInternal: {fileID: 100100000} 522 | m_GameObject: {fileID: 1327979782895992} 523 | m_LocalRotation: {x: -0.3826827, y: 0.92387986, z: -0.0000011175871, w: 0.0000025629997} 524 | m_LocalPosition: {x: -0.000009536743, y: 1.0399997, z: 2.41} 525 | m_LocalScale: {x: 0.2564105, y: 0.2564105, z: 3.2238731} 526 | m_Children: [] 527 | m_Father: {fileID: 4633061600077526} 528 | m_RootOrder: 2 529 | m_LocalEulerAnglesHint: {x: 0, y: 180.00002, z: -45.000004} 530 | --- !u!4 &4942901326069204 531 | Transform: 532 | m_ObjectHideFlags: 1 533 | m_PrefabParentObject: {fileID: 0} 534 | m_PrefabInternal: {fileID: 100100000} 535 | m_GameObject: {fileID: 1438433361633014} 536 | m_LocalRotation: {x: 0.053685226, y: -0.87737113, z: 0.029120289, w: 0.47590944} 537 | m_LocalPosition: {x: 6.63, y: 0.52, z: 4.59} 538 | m_LocalScale: {x: 1, y: 1, z: 1} 539 | m_Children: [] 540 | m_Father: {fileID: 4985708407099390} 541 | m_RootOrder: 3 542 | m_LocalEulerAnglesHint: {x: 5.866, y: -123.243004, z: -3.8320003} 543 | --- !u!4 &4957771235709042 544 | Transform: 545 | m_ObjectHideFlags: 1 546 | m_PrefabParentObject: {fileID: 0} 547 | m_PrefabInternal: {fileID: 100100000} 548 | m_GameObject: {fileID: 1939018749441906} 549 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 550 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: -3.52} 551 | m_LocalScale: {x: 1, y: 1, z: 1} 552 | m_Children: [] 553 | m_Father: {fileID: 4499558306923636} 554 | m_RootOrder: 3 555 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 556 | --- !u!4 &4985708407099390 557 | Transform: 558 | m_ObjectHideFlags: 1 559 | m_PrefabParentObject: {fileID: 0} 560 | m_PrefabInternal: {fileID: 100100000} 561 | m_GameObject: {fileID: 1431859253861506} 562 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 563 | m_LocalPosition: {x: 0, y: 5.21, z: 0} 564 | m_LocalScale: {x: 1, y: 1, z: 1} 565 | m_Children: 566 | - {fileID: 4633061600077526} 567 | - {fileID: 4795057186260270} 568 | - {fileID: 4499558306923636} 569 | - {fileID: 4942901326069204} 570 | - {fileID: 4158090409638136} 571 | m_Father: {fileID: 0} 572 | m_RootOrder: 0 573 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 574 | --- !u!4 &4986737396941476 575 | Transform: 576 | m_ObjectHideFlags: 1 577 | m_PrefabParentObject: {fileID: 0} 578 | m_PrefabInternal: {fileID: 100100000} 579 | m_GameObject: {fileID: 1484559805866428} 580 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 581 | m_LocalPosition: {x: -1.532, y: -0.26, z: 0} 582 | m_LocalScale: {x: 1, y: 1, z: 1} 583 | m_Children: [] 584 | m_Father: {fileID: 4499558306923636} 585 | m_RootOrder: 0 586 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 587 | --- !u!20 &20091997885043896 588 | Camera: 589 | m_ObjectHideFlags: 1 590 | m_PrefabParentObject: {fileID: 0} 591 | m_PrefabInternal: {fileID: 100100000} 592 | m_GameObject: {fileID: 1438433361633014} 593 | m_Enabled: 1 594 | serializedVersion: 2 595 | m_ClearFlags: 1 596 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} 597 | m_NormalizedViewPortRect: 598 | serializedVersion: 2 599 | x: 0 600 | y: 0 601 | width: 1 602 | height: 1 603 | near clip plane: 0.3 604 | far clip plane: 1000 605 | field of view: 60 606 | orthographic: 0 607 | orthographic size: 5 608 | m_Depth: -1 609 | m_CullingMask: 610 | serializedVersion: 2 611 | m_Bits: 4294967295 612 | m_RenderingPath: -1 613 | m_TargetTexture: {fileID: 0} 614 | m_TargetDisplay: 0 615 | m_TargetEye: 3 616 | m_HDR: 1 617 | m_AllowMSAA: 1 618 | m_AllowDynamicResolution: 0 619 | m_ForceIntoRT: 0 620 | m_OcclusionCulling: 1 621 | m_StereoConvergence: 10 622 | m_StereoSeparation: 0.022 623 | --- !u!23 &23363991563483870 624 | MeshRenderer: 625 | m_ObjectHideFlags: 1 626 | m_PrefabParentObject: {fileID: 0} 627 | m_PrefabInternal: {fileID: 100100000} 628 | m_GameObject: {fileID: 1691147948062782} 629 | m_Enabled: 1 630 | m_CastShadows: 1 631 | m_ReceiveShadows: 1 632 | m_DynamicOccludee: 1 633 | m_MotionVectors: 1 634 | m_LightProbeUsage: 1 635 | m_ReflectionProbeUsage: 1 636 | m_Materials: 637 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 638 | m_StaticBatchInfo: 639 | firstSubMesh: 0 640 | subMeshCount: 0 641 | m_StaticBatchRoot: {fileID: 0} 642 | m_ProbeAnchor: {fileID: 0} 643 | m_LightProbeVolumeOverride: {fileID: 0} 644 | m_ScaleInLightmap: 1 645 | m_PreserveUVs: 1 646 | m_IgnoreNormalsForChartDetection: 0 647 | m_ImportantGI: 0 648 | m_StitchLightmapSeams: 0 649 | m_SelectedEditorRenderState: 3 650 | m_MinimumChartSize: 4 651 | m_AutoUVMaxDistance: 0.5 652 | m_AutoUVMaxAngle: 89 653 | m_LightmapParameters: {fileID: 0} 654 | m_SortingLayerID: 0 655 | m_SortingLayer: 0 656 | m_SortingOrder: 0 657 | --- !u!23 &23387294149563736 658 | MeshRenderer: 659 | m_ObjectHideFlags: 1 660 | m_PrefabParentObject: {fileID: 0} 661 | m_PrefabInternal: {fileID: 100100000} 662 | m_GameObject: {fileID: 1187456021696478} 663 | m_Enabled: 1 664 | m_CastShadows: 1 665 | m_ReceiveShadows: 1 666 | m_DynamicOccludee: 1 667 | m_MotionVectors: 1 668 | m_LightProbeUsage: 1 669 | m_ReflectionProbeUsage: 1 670 | m_Materials: 671 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 672 | m_StaticBatchInfo: 673 | firstSubMesh: 0 674 | subMeshCount: 0 675 | m_StaticBatchRoot: {fileID: 0} 676 | m_ProbeAnchor: {fileID: 0} 677 | m_LightProbeVolumeOverride: {fileID: 0} 678 | m_ScaleInLightmap: 1 679 | m_PreserveUVs: 1 680 | m_IgnoreNormalsForChartDetection: 0 681 | m_ImportantGI: 0 682 | m_StitchLightmapSeams: 0 683 | m_SelectedEditorRenderState: 3 684 | m_MinimumChartSize: 4 685 | m_AutoUVMaxDistance: 0.5 686 | m_AutoUVMaxAngle: 89 687 | m_LightmapParameters: {fileID: 0} 688 | m_SortingLayerID: 0 689 | m_SortingLayer: 0 690 | m_SortingOrder: 0 691 | --- !u!23 &23715712526524338 692 | MeshRenderer: 693 | m_ObjectHideFlags: 1 694 | m_PrefabParentObject: {fileID: 0} 695 | m_PrefabInternal: {fileID: 100100000} 696 | m_GameObject: {fileID: 1327979782895992} 697 | m_Enabled: 1 698 | m_CastShadows: 1 699 | m_ReceiveShadows: 1 700 | m_DynamicOccludee: 1 701 | m_MotionVectors: 1 702 | m_LightProbeUsage: 1 703 | m_ReflectionProbeUsage: 1 704 | m_Materials: 705 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 706 | m_StaticBatchInfo: 707 | firstSubMesh: 0 708 | subMeshCount: 0 709 | m_StaticBatchRoot: {fileID: 0} 710 | m_ProbeAnchor: {fileID: 0} 711 | m_LightProbeVolumeOverride: {fileID: 0} 712 | m_ScaleInLightmap: 1 713 | m_PreserveUVs: 1 714 | m_IgnoreNormalsForChartDetection: 0 715 | m_ImportantGI: 0 716 | m_StitchLightmapSeams: 0 717 | m_SelectedEditorRenderState: 3 718 | m_MinimumChartSize: 4 719 | m_AutoUVMaxDistance: 0.5 720 | m_AutoUVMaxAngle: 89 721 | m_LightmapParameters: {fileID: 0} 722 | m_SortingLayerID: 0 723 | m_SortingLayer: 0 724 | m_SortingOrder: 0 725 | --- !u!33 &33321609908857492 726 | MeshFilter: 727 | m_ObjectHideFlags: 1 728 | m_PrefabParentObject: {fileID: 0} 729 | m_PrefabInternal: {fileID: 100100000} 730 | m_GameObject: {fileID: 1327979782895992} 731 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} 732 | --- !u!33 &33711360357416120 733 | MeshFilter: 734 | m_ObjectHideFlags: 1 735 | m_PrefabParentObject: {fileID: 0} 736 | m_PrefabInternal: {fileID: 100100000} 737 | m_GameObject: {fileID: 1187456021696478} 738 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} 739 | --- !u!33 &33994630379631186 740 | MeshFilter: 741 | m_ObjectHideFlags: 1 742 | m_PrefabParentObject: {fileID: 0} 743 | m_PrefabInternal: {fileID: 100100000} 744 | m_GameObject: {fileID: 1691147948062782} 745 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} 746 | --- !u!54 &54821083627250054 747 | Rigidbody: 748 | m_ObjectHideFlags: 1 749 | m_PrefabParentObject: {fileID: 0} 750 | m_PrefabInternal: {fileID: 100100000} 751 | m_GameObject: {fileID: 1431859253861506} 752 | serializedVersion: 2 753 | m_Mass: 100 754 | m_Drag: 0 755 | m_AngularDrag: 1 756 | m_UseGravity: 1 757 | m_IsKinematic: 0 758 | m_Interpolate: 0 759 | m_Constraints: 0 760 | m_CollisionDetection: 0 761 | --- !u!65 &65202113211103896 762 | BoxCollider: 763 | m_ObjectHideFlags: 1 764 | m_PrefabParentObject: {fileID: 0} 765 | m_PrefabInternal: {fileID: 100100000} 766 | m_GameObject: {fileID: 1689451930033944} 767 | m_Material: {fileID: 0} 768 | m_IsTrigger: 0 769 | m_Enabled: 1 770 | serializedVersion: 2 771 | m_Size: {x: 3.8, y: 2.2755275, z: 8} 772 | m_Center: {x: 0, y: 0.6647117, z: 0} 773 | --- !u!81 &81946772977106880 774 | AudioListener: 775 | m_ObjectHideFlags: 1 776 | m_PrefabParentObject: {fileID: 0} 777 | m_PrefabInternal: {fileID: 100100000} 778 | m_GameObject: {fileID: 1438433361633014} 779 | m_Enabled: 1 780 | --- !u!114 &114431299140869114 781 | MonoBehaviour: 782 | m_ObjectHideFlags: 1 783 | m_PrefabParentObject: {fileID: 0} 784 | m_PrefabInternal: {fileID: 100100000} 785 | m_GameObject: {fileID: 1438433361633014} 786 | m_Enabled: 1 787 | m_EditorHideFlags: 0 788 | m_Script: {fileID: 11500000, guid: 8eb09424443e6d64fb2c827645780888, type: 3} 789 | m_Name: 790 | m_EditorClassIdentifier: 791 | useFixedUpdate: 0 792 | invert: 1 793 | sensitivity: 20 794 | speed: 0 795 | modSpeed: 60 796 | zoomFov: 20 797 | visible: 1 798 | --- !u!114 &114859605102470222 799 | MonoBehaviour: 800 | m_ObjectHideFlags: 1 801 | m_PrefabParentObject: {fileID: 0} 802 | m_PrefabInternal: {fileID: 100100000} 803 | m_GameObject: {fileID: 1431859253861506} 804 | m_Enabled: 1 805 | m_EditorHideFlags: 0 806 | m_Script: {fileID: 11500000, guid: 0d84f955e93eae344b8af410d738b87d, type: 3} 807 | m_Name: 808 | m_EditorClassIdentifier: 809 | topSpeed: 10 810 | steeringAngle: 30 811 | motorTorque: 30 812 | magicTurnRate: 0 813 | centerOfMass: {fileID: 4158090409638136} 814 | wheelModelPrefab: {fileID: 4339269679154178, guid: 07216a712257a1e459f116450fda489c, 815 | type: 2} 816 | front: [] 817 | rear: [] 818 | poweredWheels: 819 | - {fileID: 146366712899600120} 820 | - {fileID: 146766176499726984} 821 | - {fileID: 146577326406905150} 822 | - {fileID: 146209132695027112} 823 | - {fileID: 146669689204416998} 824 | - {fileID: 146862077890143654} 825 | - {fileID: 146754198569597324} 826 | - {fileID: 146961494628575400} 827 | - {fileID: 146271028200284650} 828 | - {fileID: 146059346404442106} 829 | left: 830 | - {fileID: 146366712899600120} 831 | - {fileID: 146577326406905150} 832 | - {fileID: 146669689204416998} 833 | - {fileID: 146754198569597324} 834 | - {fileID: 146271028200284650} 835 | right: 836 | - {fileID: 146766176499726984} 837 | - {fileID: 146209132695027112} 838 | - {fileID: 146862077890143654} 839 | - {fileID: 146961494628575400} 840 | - {fileID: 146059346404442106} 841 | --- !u!124 &124912703719097526 842 | Behaviour: 843 | m_ObjectHideFlags: 1 844 | m_PrefabParentObject: {fileID: 0} 845 | m_PrefabInternal: {fileID: 100100000} 846 | m_GameObject: {fileID: 1438433361633014} 847 | m_Enabled: 1 848 | --- !u!146 &146059346404442106 849 | WheelCollider: 850 | m_ObjectHideFlags: 1 851 | m_PrefabParentObject: {fileID: 0} 852 | m_PrefabInternal: {fileID: 100100000} 853 | m_GameObject: {fileID: 1513157692673870} 854 | m_Center: {x: 0, y: 0, z: 0} 855 | m_Radius: 0.3 856 | m_SuspensionSpring: 857 | spring: 2000 858 | damper: 50 859 | targetPosition: 0.5 860 | m_SuspensionDistance: 0.5 861 | m_ForceAppPointDistance: 0 862 | m_Mass: 20 863 | m_WheelDampingRate: 0.25 864 | m_ForwardFriction: 865 | m_ExtremumSlip: 0.4 866 | m_ExtremumValue: 1 867 | m_AsymptoteSlip: 0.8 868 | m_AsymptoteValue: 0.5 869 | m_Stiffness: 1 870 | m_SidewaysFriction: 871 | m_ExtremumSlip: 0.2 872 | m_ExtremumValue: 1 873 | m_AsymptoteSlip: 0.5 874 | m_AsymptoteValue: 0.75 875 | m_Stiffness: 0 876 | m_Enabled: 1 877 | --- !u!146 &146209132695027112 878 | WheelCollider: 879 | m_ObjectHideFlags: 1 880 | m_PrefabParentObject: {fileID: 0} 881 | m_PrefabInternal: {fileID: 100100000} 882 | m_GameObject: {fileID: 1939018749441906} 883 | m_Center: {x: 0, y: 0, z: 0} 884 | m_Radius: 0.3 885 | m_SuspensionSpring: 886 | spring: 2000 887 | damper: 50 888 | targetPosition: 0.5 889 | m_SuspensionDistance: 0.5 890 | m_ForceAppPointDistance: 0 891 | m_Mass: 20 892 | m_WheelDampingRate: 0.25 893 | m_ForwardFriction: 894 | m_ExtremumSlip: 0.4 895 | m_ExtremumValue: 1 896 | m_AsymptoteSlip: 0.8 897 | m_AsymptoteValue: 0.5 898 | m_Stiffness: 1 899 | m_SidewaysFriction: 900 | m_ExtremumSlip: 0.2 901 | m_ExtremumValue: 1 902 | m_AsymptoteSlip: 0.5 903 | m_AsymptoteValue: 0.75 904 | m_Stiffness: 0 905 | m_Enabled: 1 906 | --- !u!146 &146271028200284650 907 | WheelCollider: 908 | m_ObjectHideFlags: 1 909 | m_PrefabParentObject: {fileID: 0} 910 | m_PrefabInternal: {fileID: 100100000} 911 | m_GameObject: {fileID: 1890708428023554} 912 | m_Center: {x: 0, y: 0, z: 0} 913 | m_Radius: 0.3 914 | m_SuspensionSpring: 915 | spring: 2000 916 | damper: 50 917 | targetPosition: 0.5 918 | m_SuspensionDistance: 0.5 919 | m_ForceAppPointDistance: 0 920 | m_Mass: 20 921 | m_WheelDampingRate: 0.25 922 | m_ForwardFriction: 923 | m_ExtremumSlip: 0.4 924 | m_ExtremumValue: 1 925 | m_AsymptoteSlip: 0.8 926 | m_AsymptoteValue: 0.5 927 | m_Stiffness: 1 928 | m_SidewaysFriction: 929 | m_ExtremumSlip: 0.2 930 | m_ExtremumValue: 1 931 | m_AsymptoteSlip: 0.5 932 | m_AsymptoteValue: 0.75 933 | m_Stiffness: 0 934 | m_Enabled: 1 935 | --- !u!146 &146366712899600120 936 | WheelCollider: 937 | m_ObjectHideFlags: 1 938 | m_PrefabParentObject: {fileID: 0} 939 | m_PrefabInternal: {fileID: 100100000} 940 | m_GameObject: {fileID: 1484559805866428} 941 | m_Center: {x: 0, y: 0, z: 0} 942 | m_Radius: 0.3 943 | m_SuspensionSpring: 944 | spring: 2000 945 | damper: 50 946 | targetPosition: 0.5 947 | m_SuspensionDistance: 0.5 948 | m_ForceAppPointDistance: 0 949 | m_Mass: 20 950 | m_WheelDampingRate: 0.25 951 | m_ForwardFriction: 952 | m_ExtremumSlip: 0.4 953 | m_ExtremumValue: 1 954 | m_AsymptoteSlip: 0.8 955 | m_AsymptoteValue: 0.5 956 | m_Stiffness: 0 957 | m_SidewaysFriction: 958 | m_ExtremumSlip: 0.2 959 | m_ExtremumValue: 1 960 | m_AsymptoteSlip: 0.5 961 | m_AsymptoteValue: 0.75 962 | m_Stiffness: 10 963 | m_Enabled: 1 964 | --- !u!146 &146577326406905150 965 | WheelCollider: 966 | m_ObjectHideFlags: 1 967 | m_PrefabParentObject: {fileID: 0} 968 | m_PrefabInternal: {fileID: 100100000} 969 | m_GameObject: {fileID: 1521769694657396} 970 | m_Center: {x: 0, y: 0, z: 0} 971 | m_Radius: 0.3 972 | m_SuspensionSpring: 973 | spring: 2000 974 | damper: 50 975 | targetPosition: 0.5 976 | m_SuspensionDistance: 0.5 977 | m_ForceAppPointDistance: 0 978 | m_Mass: 20 979 | m_WheelDampingRate: 0.25 980 | m_ForwardFriction: 981 | m_ExtremumSlip: 0.4 982 | m_ExtremumValue: 1 983 | m_AsymptoteSlip: 0.8 984 | m_AsymptoteValue: 0.5 985 | m_Stiffness: 1 986 | m_SidewaysFriction: 987 | m_ExtremumSlip: 0.2 988 | m_ExtremumValue: 1 989 | m_AsymptoteSlip: 0.5 990 | m_AsymptoteValue: 0.75 991 | m_Stiffness: 0 992 | m_Enabled: 1 993 | --- !u!146 &146669689204416998 994 | WheelCollider: 995 | m_ObjectHideFlags: 1 996 | m_PrefabParentObject: {fileID: 0} 997 | m_PrefabInternal: {fileID: 100100000} 998 | m_GameObject: {fileID: 1228090606528886} 999 | m_Center: {x: 0, y: 0, z: 0} 1000 | m_Radius: 0.3 1001 | m_SuspensionSpring: 1002 | spring: 2000 1003 | damper: 50 1004 | targetPosition: 0.5 1005 | m_SuspensionDistance: 0.5 1006 | m_ForceAppPointDistance: 0 1007 | m_Mass: 20 1008 | m_WheelDampingRate: 0.25 1009 | m_ForwardFriction: 1010 | m_ExtremumSlip: 0.4 1011 | m_ExtremumValue: 1 1012 | m_AsymptoteSlip: 0.8 1013 | m_AsymptoteValue: 0.5 1014 | m_Stiffness: 1 1015 | m_SidewaysFriction: 1016 | m_ExtremumSlip: 0.2 1017 | m_ExtremumValue: 1 1018 | m_AsymptoteSlip: 0.5 1019 | m_AsymptoteValue: 0.75 1020 | m_Stiffness: 0 1021 | m_Enabled: 1 1022 | --- !u!146 &146754198569597324 1023 | WheelCollider: 1024 | m_ObjectHideFlags: 1 1025 | m_PrefabParentObject: {fileID: 0} 1026 | m_PrefabInternal: {fileID: 100100000} 1027 | m_GameObject: {fileID: 1237238605544538} 1028 | m_Center: {x: 0, y: 0, z: 0} 1029 | m_Radius: 0.3 1030 | m_SuspensionSpring: 1031 | spring: 2000 1032 | damper: 50 1033 | targetPosition: 0.5 1034 | m_SuspensionDistance: 0.5 1035 | m_ForceAppPointDistance: 0 1036 | m_Mass: 20 1037 | m_WheelDampingRate: 0.25 1038 | m_ForwardFriction: 1039 | m_ExtremumSlip: 0.4 1040 | m_ExtremumValue: 1 1041 | m_AsymptoteSlip: 0.8 1042 | m_AsymptoteValue: 0.5 1043 | m_Stiffness: 1 1044 | m_SidewaysFriction: 1045 | m_ExtremumSlip: 0.2 1046 | m_ExtremumValue: 1 1047 | m_AsymptoteSlip: 0.5 1048 | m_AsymptoteValue: 0.75 1049 | m_Stiffness: 0 1050 | m_Enabled: 1 1051 | --- !u!146 &146766176499726984 1052 | WheelCollider: 1053 | m_ObjectHideFlags: 1 1054 | m_PrefabParentObject: {fileID: 0} 1055 | m_PrefabInternal: {fileID: 100100000} 1056 | m_GameObject: {fileID: 1050936516120142} 1057 | m_Center: {x: 0, y: 0, z: 0} 1058 | m_Radius: 0.3 1059 | m_SuspensionSpring: 1060 | spring: 2000 1061 | damper: 50 1062 | targetPosition: 0.5 1063 | m_SuspensionDistance: 0.5 1064 | m_ForceAppPointDistance: 0 1065 | m_Mass: 20 1066 | m_WheelDampingRate: 0.25 1067 | m_ForwardFriction: 1068 | m_ExtremumSlip: 0.4 1069 | m_ExtremumValue: 1 1070 | m_AsymptoteSlip: 0.8 1071 | m_AsymptoteValue: 0.5 1072 | m_Stiffness: 0 1073 | m_SidewaysFriction: 1074 | m_ExtremumSlip: 0.2 1075 | m_ExtremumValue: 1 1076 | m_AsymptoteSlip: 0.5 1077 | m_AsymptoteValue: 0.75 1078 | m_Stiffness: 10 1079 | m_Enabled: 1 1080 | --- !u!146 &146862077890143654 1081 | WheelCollider: 1082 | m_ObjectHideFlags: 1 1083 | m_PrefabParentObject: {fileID: 0} 1084 | m_PrefabInternal: {fileID: 100100000} 1085 | m_GameObject: {fileID: 1846247565549514} 1086 | m_Center: {x: 0, y: 0, z: 0} 1087 | m_Radius: 0.3 1088 | m_SuspensionSpring: 1089 | spring: 2000 1090 | damper: 50 1091 | targetPosition: 0.5 1092 | m_SuspensionDistance: 0.5 1093 | m_ForceAppPointDistance: 0 1094 | m_Mass: 20 1095 | m_WheelDampingRate: 0.25 1096 | m_ForwardFriction: 1097 | m_ExtremumSlip: 0.4 1098 | m_ExtremumValue: 1 1099 | m_AsymptoteSlip: 0.8 1100 | m_AsymptoteValue: 0.5 1101 | m_Stiffness: 1 1102 | m_SidewaysFriction: 1103 | m_ExtremumSlip: 0.2 1104 | m_ExtremumValue: 1 1105 | m_AsymptoteSlip: 0.5 1106 | m_AsymptoteValue: 0.75 1107 | m_Stiffness: 0 1108 | m_Enabled: 1 1109 | --- !u!146 &146961494628575400 1110 | WheelCollider: 1111 | m_ObjectHideFlags: 1 1112 | m_PrefabParentObject: {fileID: 0} 1113 | m_PrefabInternal: {fileID: 100100000} 1114 | m_GameObject: {fileID: 1603464523802202} 1115 | m_Center: {x: 0, y: 0, z: 0} 1116 | m_Radius: 0.3 1117 | m_SuspensionSpring: 1118 | spring: 2000 1119 | damper: 50 1120 | targetPosition: 0.5 1121 | m_SuspensionDistance: 0.5 1122 | m_ForceAppPointDistance: 0 1123 | m_Mass: 20 1124 | m_WheelDampingRate: 0.25 1125 | m_ForwardFriction: 1126 | m_ExtremumSlip: 0.4 1127 | m_ExtremumValue: 1 1128 | m_AsymptoteSlip: 0.8 1129 | m_AsymptoteValue: 0.5 1130 | m_Stiffness: 1 1131 | m_SidewaysFriction: 1132 | m_ExtremumSlip: 0.2 1133 | m_ExtremumValue: 1 1134 | m_AsymptoteSlip: 0.5 1135 | m_AsymptoteValue: 0.75 1136 | m_Stiffness: 0 1137 | m_Enabled: 1 1138 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs/DifferentialSteeringTank.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4fd68192bf694944598fdc064cbbc177 3 | timeCreated: 1518843108 4 | licenseType: Free 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 100100000 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs/FourWheelTurningTank.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_ParentPrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1234516292667460} 13 | m_IsPrefabParent: 1 14 | --- !u!1 &1009365560627332 15 | GameObject: 16 | m_ObjectHideFlags: 1 17 | m_PrefabParentObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 5 20 | m_Component: 21 | - component: {fileID: 4333609520482376} 22 | - component: {fileID: 146949321256239348} 23 | m_Layer: 0 24 | m_Name: MidL (1) 25 | m_TagString: Untagged 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!1 &1036114824363482 31 | GameObject: 32 | m_ObjectHideFlags: 0 33 | m_PrefabParentObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | serializedVersion: 5 36 | m_Component: 37 | - component: {fileID: 4019283861051456} 38 | - component: {fileID: 20141974057291482} 39 | - component: {fileID: 124631223408999470} 40 | - component: {fileID: 81032921052146698} 41 | - component: {fileID: 114297118445597002} 42 | m_Layer: 0 43 | m_Name: Main Camera 44 | m_TagString: MainCamera 45 | m_Icon: {fileID: 0} 46 | m_NavMeshLayer: 0 47 | m_StaticEditorFlags: 0 48 | m_IsActive: 1 49 | --- !u!1 &1063078524758586 50 | GameObject: 51 | m_ObjectHideFlags: 1 52 | m_PrefabParentObject: {fileID: 0} 53 | m_PrefabInternal: {fileID: 100100000} 54 | serializedVersion: 5 55 | m_Component: 56 | - component: {fileID: 4420827779597918} 57 | - component: {fileID: 146459490054574554} 58 | m_Layer: 0 59 | m_Name: MidR 60 | m_TagString: Untagged 61 | m_Icon: {fileID: 0} 62 | m_NavMeshLayer: 0 63 | m_StaticEditorFlags: 0 64 | m_IsActive: 1 65 | --- !u!1 &1093665263383318 66 | GameObject: 67 | m_ObjectHideFlags: 1 68 | m_PrefabParentObject: {fileID: 0} 69 | m_PrefabInternal: {fileID: 100100000} 70 | serializedVersion: 5 71 | m_Component: 72 | - component: {fileID: 4502966249324362} 73 | - component: {fileID: 146219604400820752} 74 | m_Layer: 0 75 | m_Name: FrontL 76 | m_TagString: Untagged 77 | m_Icon: {fileID: 0} 78 | m_NavMeshLayer: 0 79 | m_StaticEditorFlags: 0 80 | m_IsActive: 1 81 | --- !u!1 &1178135425271210 82 | GameObject: 83 | m_ObjectHideFlags: 1 84 | m_PrefabParentObject: {fileID: 0} 85 | m_PrefabInternal: {fileID: 100100000} 86 | serializedVersion: 5 87 | m_Component: 88 | - component: {fileID: 4626157207252838} 89 | - component: {fileID: 33808784445155946} 90 | - component: {fileID: 23036739418722814} 91 | m_Layer: 0 92 | m_Name: Cube 93 | m_TagString: Untagged 94 | m_Icon: {fileID: 0} 95 | m_NavMeshLayer: 0 96 | m_StaticEditorFlags: 0 97 | m_IsActive: 1 98 | --- !u!1 &1223910651948902 99 | GameObject: 100 | m_ObjectHideFlags: 0 101 | m_PrefabParentObject: {fileID: 0} 102 | m_PrefabInternal: {fileID: 100100000} 103 | serializedVersion: 5 104 | m_Component: 105 | - component: {fileID: 4398673747682764} 106 | - component: {fileID: 65703564397014102} 107 | m_Layer: 0 108 | m_Name: Collision 109 | m_TagString: Untagged 110 | m_Icon: {fileID: 0} 111 | m_NavMeshLayer: 0 112 | m_StaticEditorFlags: 0 113 | m_IsActive: 1 114 | --- !u!1 &1234516292667460 115 | GameObject: 116 | m_ObjectHideFlags: 0 117 | m_PrefabParentObject: {fileID: 0} 118 | m_PrefabInternal: {fileID: 100100000} 119 | serializedVersion: 5 120 | m_Component: 121 | - component: {fileID: 4318392802981672} 122 | - component: {fileID: 54645902747846010} 123 | - component: {fileID: 114214424558794950} 124 | m_Layer: 0 125 | m_Name: FourWheelTurningTank 126 | m_TagString: Untagged 127 | m_Icon: {fileID: 0} 128 | m_NavMeshLayer: 0 129 | m_StaticEditorFlags: 0 130 | m_IsActive: 1 131 | --- !u!1 &1281072361832404 132 | GameObject: 133 | m_ObjectHideFlags: 1 134 | m_PrefabParentObject: {fileID: 0} 135 | m_PrefabInternal: {fileID: 100100000} 136 | serializedVersion: 5 137 | m_Component: 138 | - component: {fileID: 4032861485548270} 139 | - component: {fileID: 146637010436582134} 140 | m_Layer: 0 141 | m_Name: MidL (2) 142 | m_TagString: Untagged 143 | m_Icon: {fileID: 0} 144 | m_NavMeshLayer: 0 145 | m_StaticEditorFlags: 0 146 | m_IsActive: 1 147 | --- !u!1 &1288051695453132 148 | GameObject: 149 | m_ObjectHideFlags: 1 150 | m_PrefabParentObject: {fileID: 0} 151 | m_PrefabInternal: {fileID: 100100000} 152 | serializedVersion: 5 153 | m_Component: 154 | - component: {fileID: 4923590633588814} 155 | - component: {fileID: 33932099962273030} 156 | - component: {fileID: 23887302339115330} 157 | m_Layer: 0 158 | m_Name: Cube (1) 159 | m_TagString: Untagged 160 | m_Icon: {fileID: 0} 161 | m_NavMeshLayer: 0 162 | m_StaticEditorFlags: 0 163 | m_IsActive: 1 164 | --- !u!1 &1332631034574808 165 | GameObject: 166 | m_ObjectHideFlags: 0 167 | m_PrefabParentObject: {fileID: 0} 168 | m_PrefabInternal: {fileID: 100100000} 169 | serializedVersion: 5 170 | m_Component: 171 | - component: {fileID: 4491983322153240} 172 | m_Layer: 0 173 | m_Name: Visual 174 | m_TagString: Untagged 175 | m_Icon: {fileID: 0} 176 | m_NavMeshLayer: 0 177 | m_StaticEditorFlags: 0 178 | m_IsActive: 1 179 | --- !u!1 &1337351755310028 180 | GameObject: 181 | m_ObjectHideFlags: 1 182 | m_PrefabParentObject: {fileID: 0} 183 | m_PrefabInternal: {fileID: 100100000} 184 | serializedVersion: 5 185 | m_Component: 186 | - component: {fileID: 4424243169706256} 187 | - component: {fileID: 146524767103666282} 188 | m_Layer: 0 189 | m_Name: MidR (2) 190 | m_TagString: Untagged 191 | m_Icon: {fileID: 0} 192 | m_NavMeshLayer: 0 193 | m_StaticEditorFlags: 0 194 | m_IsActive: 1 195 | --- !u!1 &1403561730350888 196 | GameObject: 197 | m_ObjectHideFlags: 1 198 | m_PrefabParentObject: {fileID: 0} 199 | m_PrefabInternal: {fileID: 100100000} 200 | serializedVersion: 5 201 | m_Component: 202 | - component: {fileID: 4991449763165322} 203 | - component: {fileID: 33366623130773998} 204 | - component: {fileID: 23273239345770776} 205 | m_Layer: 0 206 | m_Name: Cube (2) 207 | m_TagString: Untagged 208 | m_Icon: {fileID: 0} 209 | m_NavMeshLayer: 0 210 | m_StaticEditorFlags: 0 211 | m_IsActive: 1 212 | --- !u!1 &1611333720626458 213 | GameObject: 214 | m_ObjectHideFlags: 1 215 | m_PrefabParentObject: {fileID: 0} 216 | m_PrefabInternal: {fileID: 100100000} 217 | serializedVersion: 5 218 | m_Component: 219 | - component: {fileID: 4717470202822272} 220 | - component: {fileID: 146389563562314238} 221 | m_Layer: 0 222 | m_Name: MidR (1) 223 | m_TagString: Untagged 224 | m_Icon: {fileID: 0} 225 | m_NavMeshLayer: 0 226 | m_StaticEditorFlags: 0 227 | m_IsActive: 1 228 | --- !u!1 &1704136679695692 229 | GameObject: 230 | m_ObjectHideFlags: 0 231 | m_PrefabParentObject: {fileID: 0} 232 | m_PrefabInternal: {fileID: 100100000} 233 | serializedVersion: 5 234 | m_Component: 235 | - component: {fileID: 4926764114401696} 236 | m_Layer: 0 237 | m_Name: Wheels 238 | m_TagString: Untagged 239 | m_Icon: {fileID: 0} 240 | m_NavMeshLayer: 0 241 | m_StaticEditorFlags: 0 242 | m_IsActive: 1 243 | --- !u!1 &1704941770134806 244 | GameObject: 245 | m_ObjectHideFlags: 1 246 | m_PrefabParentObject: {fileID: 0} 247 | m_PrefabInternal: {fileID: 100100000} 248 | serializedVersion: 5 249 | m_Component: 250 | - component: {fileID: 4599975170133950} 251 | - component: {fileID: 146146179428848040} 252 | m_Layer: 0 253 | m_Name: RearR 254 | m_TagString: Untagged 255 | m_Icon: {fileID: 0} 256 | m_NavMeshLayer: 0 257 | m_StaticEditorFlags: 0 258 | m_IsActive: 1 259 | --- !u!1 &1709637365487882 260 | GameObject: 261 | m_ObjectHideFlags: 1 262 | m_PrefabParentObject: {fileID: 0} 263 | m_PrefabInternal: {fileID: 100100000} 264 | serializedVersion: 5 265 | m_Component: 266 | - component: {fileID: 4106163776160470} 267 | - component: {fileID: 146294980886653592} 268 | m_Layer: 0 269 | m_Name: RearL 270 | m_TagString: Untagged 271 | m_Icon: {fileID: 0} 272 | m_NavMeshLayer: 0 273 | m_StaticEditorFlags: 0 274 | m_IsActive: 1 275 | --- !u!1 &1904200606716160 276 | GameObject: 277 | m_ObjectHideFlags: 1 278 | m_PrefabParentObject: {fileID: 0} 279 | m_PrefabInternal: {fileID: 100100000} 280 | serializedVersion: 5 281 | m_Component: 282 | - component: {fileID: 4141347896142178} 283 | - component: {fileID: 146292386569906728} 284 | m_Layer: 0 285 | m_Name: FrontR 286 | m_TagString: Untagged 287 | m_Icon: {fileID: 0} 288 | m_NavMeshLayer: 0 289 | m_StaticEditorFlags: 0 290 | m_IsActive: 1 291 | --- !u!1 &1905135996852040 292 | GameObject: 293 | m_ObjectHideFlags: 0 294 | m_PrefabParentObject: {fileID: 0} 295 | m_PrefabInternal: {fileID: 100100000} 296 | serializedVersion: 5 297 | m_Component: 298 | - component: {fileID: 4514232585702520} 299 | m_Layer: 0 300 | m_Name: CenterOfMass 301 | m_TagString: Untagged 302 | m_Icon: {fileID: 0} 303 | m_NavMeshLayer: 0 304 | m_StaticEditorFlags: 0 305 | m_IsActive: 1 306 | --- !u!1 &1934662158235296 307 | GameObject: 308 | m_ObjectHideFlags: 1 309 | m_PrefabParentObject: {fileID: 0} 310 | m_PrefabInternal: {fileID: 100100000} 311 | serializedVersion: 5 312 | m_Component: 313 | - component: {fileID: 4198992700242790} 314 | - component: {fileID: 146923148938686852} 315 | m_Layer: 0 316 | m_Name: MidL 317 | m_TagString: Untagged 318 | m_Icon: {fileID: 0} 319 | m_NavMeshLayer: 0 320 | m_StaticEditorFlags: 0 321 | m_IsActive: 1 322 | --- !u!4 &4019283861051456 323 | Transform: 324 | m_ObjectHideFlags: 1 325 | m_PrefabParentObject: {fileID: 0} 326 | m_PrefabInternal: {fileID: 100100000} 327 | m_GameObject: {fileID: 1036114824363482} 328 | m_LocalRotation: {x: 0.053685226, y: -0.87737113, z: 0.029120289, w: 0.47590944} 329 | m_LocalPosition: {x: 6.63, y: 0.52, z: 4.59} 330 | m_LocalScale: {x: 1, y: 1, z: 1} 331 | m_Children: [] 332 | m_Father: {fileID: 4318392802981672} 333 | m_RootOrder: 3 334 | m_LocalEulerAnglesHint: {x: 5.866, y: -123.243004, z: -3.8320003} 335 | --- !u!4 &4032861485548270 336 | Transform: 337 | m_ObjectHideFlags: 1 338 | m_PrefabParentObject: {fileID: 0} 339 | m_PrefabInternal: {fileID: 100100000} 340 | m_GameObject: {fileID: 1281072361832404} 341 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 342 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: -1.77} 343 | m_LocalScale: {x: 1, y: 1, z: 1} 344 | m_Children: [] 345 | m_Father: {fileID: 4926764114401696} 346 | m_RootOrder: 8 347 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 348 | --- !u!4 &4106163776160470 349 | Transform: 350 | m_ObjectHideFlags: 1 351 | m_PrefabParentObject: {fileID: 0} 352 | m_PrefabInternal: {fileID: 100100000} 353 | m_GameObject: {fileID: 1709637365487882} 354 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 355 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: -3.52} 356 | m_LocalScale: {x: 1, y: 1, z: 1} 357 | m_Children: [] 358 | m_Father: {fileID: 4926764114401696} 359 | m_RootOrder: 2 360 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 361 | --- !u!4 &4141347896142178 362 | Transform: 363 | m_ObjectHideFlags: 1 364 | m_PrefabParentObject: {fileID: 0} 365 | m_PrefabInternal: {fileID: 100100000} 366 | m_GameObject: {fileID: 1904200606716160} 367 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 368 | m_LocalPosition: {x: 1.5319996, y: -0.26000023, z: 3.2999997} 369 | m_LocalScale: {x: 1, y: 1, z: 1} 370 | m_Children: [] 371 | m_Father: {fileID: 4926764114401696} 372 | m_RootOrder: 5 373 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 374 | --- !u!4 &4198992700242790 375 | Transform: 376 | m_ObjectHideFlags: 1 377 | m_PrefabParentObject: {fileID: 0} 378 | m_PrefabInternal: {fileID: 100100000} 379 | m_GameObject: {fileID: 1934662158235296} 380 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 381 | m_LocalPosition: {x: -1.532, y: -0.26, z: 0} 382 | m_LocalScale: {x: 1, y: 1, z: 1} 383 | m_Children: [] 384 | m_Father: {fileID: 4926764114401696} 385 | m_RootOrder: 0 386 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 387 | --- !u!4 &4318392802981672 388 | Transform: 389 | m_ObjectHideFlags: 1 390 | m_PrefabParentObject: {fileID: 0} 391 | m_PrefabInternal: {fileID: 100100000} 392 | m_GameObject: {fileID: 1234516292667460} 393 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 394 | m_LocalPosition: {x: 0, y: 5.21, z: 0} 395 | m_LocalScale: {x: 1, y: 1, z: 1} 396 | m_Children: 397 | - {fileID: 4491983322153240} 398 | - {fileID: 4398673747682764} 399 | - {fileID: 4926764114401696} 400 | - {fileID: 4019283861051456} 401 | - {fileID: 4514232585702520} 402 | m_Father: {fileID: 0} 403 | m_RootOrder: 0 404 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 405 | --- !u!4 &4333609520482376 406 | Transform: 407 | m_ObjectHideFlags: 1 408 | m_PrefabParentObject: {fileID: 0} 409 | m_PrefabInternal: {fileID: 100100000} 410 | m_GameObject: {fileID: 1009365560627332} 411 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 412 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: 1.81} 413 | m_LocalScale: {x: 1, y: 1, z: 1} 414 | m_Children: [] 415 | m_Father: {fileID: 4926764114401696} 416 | m_RootOrder: 6 417 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 418 | --- !u!4 &4398673747682764 419 | Transform: 420 | m_ObjectHideFlags: 1 421 | m_PrefabParentObject: {fileID: 0} 422 | m_PrefabInternal: {fileID: 100100000} 423 | m_GameObject: {fileID: 1223910651948902} 424 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 425 | m_LocalPosition: {x: 0, y: 0.19999981, z: 0} 426 | m_LocalScale: {x: 1, y: 1, z: 1} 427 | m_Children: [] 428 | m_Father: {fileID: 4318392802981672} 429 | m_RootOrder: 1 430 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 431 | --- !u!4 &4420827779597918 432 | Transform: 433 | m_ObjectHideFlags: 1 434 | m_PrefabParentObject: {fileID: 0} 435 | m_PrefabInternal: {fileID: 100100000} 436 | m_GameObject: {fileID: 1063078524758586} 437 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 438 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: 0} 439 | m_LocalScale: {x: 1, y: 1, z: 1} 440 | m_Children: [] 441 | m_Father: {fileID: 4926764114401696} 442 | m_RootOrder: 1 443 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 444 | --- !u!4 &4424243169706256 445 | Transform: 446 | m_ObjectHideFlags: 1 447 | m_PrefabParentObject: {fileID: 0} 448 | m_PrefabInternal: {fileID: 100100000} 449 | m_GameObject: {fileID: 1337351755310028} 450 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 451 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: -1.77} 452 | m_LocalScale: {x: 1, y: 1, z: 1} 453 | m_Children: [] 454 | m_Father: {fileID: 4926764114401696} 455 | m_RootOrder: 9 456 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 457 | --- !u!4 &4491983322153240 458 | Transform: 459 | m_ObjectHideFlags: 1 460 | m_PrefabParentObject: {fileID: 0} 461 | m_PrefabInternal: {fileID: 100100000} 462 | m_GameObject: {fileID: 1332631034574808} 463 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 464 | m_LocalPosition: {x: 0, y: 0, z: 0} 465 | m_LocalScale: {x: 1, y: 1, z: 1} 466 | m_Children: 467 | - {fileID: 4626157207252838} 468 | - {fileID: 4923590633588814} 469 | - {fileID: 4991449763165322} 470 | m_Father: {fileID: 4318392802981672} 471 | m_RootOrder: 0 472 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 473 | --- !u!4 &4502966249324362 474 | Transform: 475 | m_ObjectHideFlags: 1 476 | m_PrefabParentObject: {fileID: 0} 477 | m_PrefabInternal: {fileID: 100100000} 478 | m_GameObject: {fileID: 1093665263383318} 479 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 480 | m_LocalPosition: {x: -1.5319996, y: -0.26000023, z: 3.3} 481 | m_LocalScale: {x: 1, y: 1, z: 1} 482 | m_Children: [] 483 | m_Father: {fileID: 4926764114401696} 484 | m_RootOrder: 4 485 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 486 | --- !u!4 &4514232585702520 487 | Transform: 488 | m_ObjectHideFlags: 1 489 | m_PrefabParentObject: {fileID: 0} 490 | m_PrefabInternal: {fileID: 100100000} 491 | m_GameObject: {fileID: 1905135996852040} 492 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 493 | m_LocalPosition: {x: 0, y: -0.6, z: 0} 494 | m_LocalScale: {x: 1, y: 1, z: 1} 495 | m_Children: [] 496 | m_Father: {fileID: 4318392802981672} 497 | m_RootOrder: 4 498 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 499 | --- !u!4 &4599975170133950 500 | Transform: 501 | m_ObjectHideFlags: 1 502 | m_PrefabParentObject: {fileID: 0} 503 | m_PrefabInternal: {fileID: 100100000} 504 | m_GameObject: {fileID: 1704941770134806} 505 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 506 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: -3.52} 507 | m_LocalScale: {x: 1, y: 1, z: 1} 508 | m_Children: [] 509 | m_Father: {fileID: 4926764114401696} 510 | m_RootOrder: 3 511 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 512 | --- !u!4 &4626157207252838 513 | Transform: 514 | m_ObjectHideFlags: 1 515 | m_PrefabParentObject: {fileID: 0} 516 | m_PrefabInternal: {fileID: 100100000} 517 | m_GameObject: {fileID: 1178135425271210} 518 | m_LocalRotation: {x: -0, y: 1, z: -0, w: 0.0000029504295} 519 | m_LocalPosition: {x: 0.000002861023, y: 0.3369998, z: -0.2500019} 520 | m_LocalScale: {x: 3.66, y: 0.80684286, z: 7.8} 521 | m_Children: [] 522 | m_Father: {fileID: 4491983322153240} 523 | m_RootOrder: 0 524 | m_LocalEulerAnglesHint: {x: 0, y: 180.00002, z: 0} 525 | --- !u!4 &4717470202822272 526 | Transform: 527 | m_ObjectHideFlags: 1 528 | m_PrefabParentObject: {fileID: 0} 529 | m_PrefabInternal: {fileID: 100100000} 530 | m_GameObject: {fileID: 1611333720626458} 531 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 532 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: 1.81} 533 | m_LocalScale: {x: 1, y: 1, z: 1} 534 | m_Children: [] 535 | m_Father: {fileID: 4926764114401696} 536 | m_RootOrder: 7 537 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 538 | --- !u!4 &4923590633588814 539 | Transform: 540 | m_ObjectHideFlags: 1 541 | m_PrefabParentObject: {fileID: 0} 542 | m_PrefabInternal: {fileID: 100100000} 543 | m_GameObject: {fileID: 1288051695453132} 544 | m_LocalRotation: {x: -0, y: 1, z: -0, w: 0.0000029504295} 545 | m_LocalPosition: {x: 0.000005722046, y: 1.04, z: -0.81} 546 | m_LocalScale: {x: 2.5759895, y: 0.8046773, z: 3.2887259} 547 | m_Children: [] 548 | m_Father: {fileID: 4491983322153240} 549 | m_RootOrder: 1 550 | m_LocalEulerAnglesHint: {x: 0, y: 180.00002, z: 0} 551 | --- !u!4 &4926764114401696 552 | Transform: 553 | m_ObjectHideFlags: 1 554 | m_PrefabParentObject: {fileID: 0} 555 | m_PrefabInternal: {fileID: 100100000} 556 | m_GameObject: {fileID: 1704136679695692} 557 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 558 | m_LocalPosition: {x: 0, y: 0, z: 0} 559 | m_LocalScale: {x: 1, y: 1, z: 1} 560 | m_Children: 561 | - {fileID: 4198992700242790} 562 | - {fileID: 4420827779597918} 563 | - {fileID: 4106163776160470} 564 | - {fileID: 4599975170133950} 565 | - {fileID: 4502966249324362} 566 | - {fileID: 4141347896142178} 567 | - {fileID: 4333609520482376} 568 | - {fileID: 4717470202822272} 569 | - {fileID: 4032861485548270} 570 | - {fileID: 4424243169706256} 571 | m_Father: {fileID: 4318392802981672} 572 | m_RootOrder: 2 573 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 574 | --- !u!4 &4991449763165322 575 | Transform: 576 | m_ObjectHideFlags: 1 577 | m_PrefabParentObject: {fileID: 0} 578 | m_PrefabInternal: {fileID: 100100000} 579 | m_GameObject: {fileID: 1403561730350888} 580 | m_LocalRotation: {x: -0.3826827, y: 0.92387986, z: -0.0000011175871, w: 0.0000025629997} 581 | m_LocalPosition: {x: -0.000009536743, y: 1.0399997, z: 2.41} 582 | m_LocalScale: {x: 0.2564105, y: 0.2564105, z: 3.2238731} 583 | m_Children: [] 584 | m_Father: {fileID: 4491983322153240} 585 | m_RootOrder: 2 586 | m_LocalEulerAnglesHint: {x: 0, y: 180.00002, z: -45.000004} 587 | --- !u!20 &20141974057291482 588 | Camera: 589 | m_ObjectHideFlags: 1 590 | m_PrefabParentObject: {fileID: 0} 591 | m_PrefabInternal: {fileID: 100100000} 592 | m_GameObject: {fileID: 1036114824363482} 593 | m_Enabled: 1 594 | serializedVersion: 2 595 | m_ClearFlags: 1 596 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} 597 | m_NormalizedViewPortRect: 598 | serializedVersion: 2 599 | x: 0 600 | y: 0 601 | width: 1 602 | height: 1 603 | near clip plane: 0.3 604 | far clip plane: 1000 605 | field of view: 60 606 | orthographic: 0 607 | orthographic size: 5 608 | m_Depth: -1 609 | m_CullingMask: 610 | serializedVersion: 2 611 | m_Bits: 4294967295 612 | m_RenderingPath: -1 613 | m_TargetTexture: {fileID: 0} 614 | m_TargetDisplay: 0 615 | m_TargetEye: 3 616 | m_HDR: 1 617 | m_AllowMSAA: 1 618 | m_AllowDynamicResolution: 0 619 | m_ForceIntoRT: 0 620 | m_OcclusionCulling: 1 621 | m_StereoConvergence: 10 622 | m_StereoSeparation: 0.022 623 | --- !u!23 &23036739418722814 624 | MeshRenderer: 625 | m_ObjectHideFlags: 1 626 | m_PrefabParentObject: {fileID: 0} 627 | m_PrefabInternal: {fileID: 100100000} 628 | m_GameObject: {fileID: 1178135425271210} 629 | m_Enabled: 1 630 | m_CastShadows: 1 631 | m_ReceiveShadows: 1 632 | m_DynamicOccludee: 1 633 | m_MotionVectors: 1 634 | m_LightProbeUsage: 1 635 | m_ReflectionProbeUsage: 1 636 | m_Materials: 637 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 638 | m_StaticBatchInfo: 639 | firstSubMesh: 0 640 | subMeshCount: 0 641 | m_StaticBatchRoot: {fileID: 0} 642 | m_ProbeAnchor: {fileID: 0} 643 | m_LightProbeVolumeOverride: {fileID: 0} 644 | m_ScaleInLightmap: 1 645 | m_PreserveUVs: 1 646 | m_IgnoreNormalsForChartDetection: 0 647 | m_ImportantGI: 0 648 | m_StitchLightmapSeams: 0 649 | m_SelectedEditorRenderState: 3 650 | m_MinimumChartSize: 4 651 | m_AutoUVMaxDistance: 0.5 652 | m_AutoUVMaxAngle: 89 653 | m_LightmapParameters: {fileID: 0} 654 | m_SortingLayerID: 0 655 | m_SortingLayer: 0 656 | m_SortingOrder: 0 657 | --- !u!23 &23273239345770776 658 | MeshRenderer: 659 | m_ObjectHideFlags: 1 660 | m_PrefabParentObject: {fileID: 0} 661 | m_PrefabInternal: {fileID: 100100000} 662 | m_GameObject: {fileID: 1403561730350888} 663 | m_Enabled: 1 664 | m_CastShadows: 1 665 | m_ReceiveShadows: 1 666 | m_DynamicOccludee: 1 667 | m_MotionVectors: 1 668 | m_LightProbeUsage: 1 669 | m_ReflectionProbeUsage: 1 670 | m_Materials: 671 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 672 | m_StaticBatchInfo: 673 | firstSubMesh: 0 674 | subMeshCount: 0 675 | m_StaticBatchRoot: {fileID: 0} 676 | m_ProbeAnchor: {fileID: 0} 677 | m_LightProbeVolumeOverride: {fileID: 0} 678 | m_ScaleInLightmap: 1 679 | m_PreserveUVs: 1 680 | m_IgnoreNormalsForChartDetection: 0 681 | m_ImportantGI: 0 682 | m_StitchLightmapSeams: 0 683 | m_SelectedEditorRenderState: 3 684 | m_MinimumChartSize: 4 685 | m_AutoUVMaxDistance: 0.5 686 | m_AutoUVMaxAngle: 89 687 | m_LightmapParameters: {fileID: 0} 688 | m_SortingLayerID: 0 689 | m_SortingLayer: 0 690 | m_SortingOrder: 0 691 | --- !u!23 &23887302339115330 692 | MeshRenderer: 693 | m_ObjectHideFlags: 1 694 | m_PrefabParentObject: {fileID: 0} 695 | m_PrefabInternal: {fileID: 100100000} 696 | m_GameObject: {fileID: 1288051695453132} 697 | m_Enabled: 1 698 | m_CastShadows: 1 699 | m_ReceiveShadows: 1 700 | m_DynamicOccludee: 1 701 | m_MotionVectors: 1 702 | m_LightProbeUsage: 1 703 | m_ReflectionProbeUsage: 1 704 | m_Materials: 705 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 706 | m_StaticBatchInfo: 707 | firstSubMesh: 0 708 | subMeshCount: 0 709 | m_StaticBatchRoot: {fileID: 0} 710 | m_ProbeAnchor: {fileID: 0} 711 | m_LightProbeVolumeOverride: {fileID: 0} 712 | m_ScaleInLightmap: 1 713 | m_PreserveUVs: 1 714 | m_IgnoreNormalsForChartDetection: 0 715 | m_ImportantGI: 0 716 | m_StitchLightmapSeams: 0 717 | m_SelectedEditorRenderState: 3 718 | m_MinimumChartSize: 4 719 | m_AutoUVMaxDistance: 0.5 720 | m_AutoUVMaxAngle: 89 721 | m_LightmapParameters: {fileID: 0} 722 | m_SortingLayerID: 0 723 | m_SortingLayer: 0 724 | m_SortingOrder: 0 725 | --- !u!33 &33366623130773998 726 | MeshFilter: 727 | m_ObjectHideFlags: 1 728 | m_PrefabParentObject: {fileID: 0} 729 | m_PrefabInternal: {fileID: 100100000} 730 | m_GameObject: {fileID: 1403561730350888} 731 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} 732 | --- !u!33 &33808784445155946 733 | MeshFilter: 734 | m_ObjectHideFlags: 1 735 | m_PrefabParentObject: {fileID: 0} 736 | m_PrefabInternal: {fileID: 100100000} 737 | m_GameObject: {fileID: 1178135425271210} 738 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} 739 | --- !u!33 &33932099962273030 740 | MeshFilter: 741 | m_ObjectHideFlags: 1 742 | m_PrefabParentObject: {fileID: 0} 743 | m_PrefabInternal: {fileID: 100100000} 744 | m_GameObject: {fileID: 1288051695453132} 745 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} 746 | --- !u!54 &54645902747846010 747 | Rigidbody: 748 | m_ObjectHideFlags: 1 749 | m_PrefabParentObject: {fileID: 0} 750 | m_PrefabInternal: {fileID: 100100000} 751 | m_GameObject: {fileID: 1234516292667460} 752 | serializedVersion: 2 753 | m_Mass: 100 754 | m_Drag: 0 755 | m_AngularDrag: 1 756 | m_UseGravity: 1 757 | m_IsKinematic: 0 758 | m_Interpolate: 0 759 | m_Constraints: 0 760 | m_CollisionDetection: 0 761 | --- !u!65 &65703564397014102 762 | BoxCollider: 763 | m_ObjectHideFlags: 1 764 | m_PrefabParentObject: {fileID: 0} 765 | m_PrefabInternal: {fileID: 100100000} 766 | m_GameObject: {fileID: 1223910651948902} 767 | m_Material: {fileID: 0} 768 | m_IsTrigger: 0 769 | m_Enabled: 1 770 | serializedVersion: 2 771 | m_Size: {x: 3.8, y: 2.2755275, z: 8} 772 | m_Center: {x: 0, y: 0.6647117, z: 0} 773 | --- !u!81 &81032921052146698 774 | AudioListener: 775 | m_ObjectHideFlags: 1 776 | m_PrefabParentObject: {fileID: 0} 777 | m_PrefabInternal: {fileID: 100100000} 778 | m_GameObject: {fileID: 1036114824363482} 779 | m_Enabled: 1 780 | --- !u!114 &114214424558794950 781 | MonoBehaviour: 782 | m_ObjectHideFlags: 1 783 | m_PrefabParentObject: {fileID: 0} 784 | m_PrefabInternal: {fileID: 100100000} 785 | m_GameObject: {fileID: 1234516292667460} 786 | m_Enabled: 1 787 | m_EditorHideFlags: 0 788 | m_Script: {fileID: 11500000, guid: 0d84f955e93eae344b8af410d738b87d, type: 3} 789 | m_Name: 790 | m_EditorClassIdentifier: 791 | topSpeed: 10 792 | steeringAngle: 30 793 | motorTorque: 30 794 | magicTurnRate: 0 795 | centerOfMass: {fileID: 4514232585702520} 796 | wheelModelPrefab: {fileID: 4339269679154178, guid: 07216a712257a1e459f116450fda489c, 797 | type: 2} 798 | front: 799 | - {fileID: 146292386569906728} 800 | - {fileID: 146219604400820752} 801 | rear: 802 | - {fileID: 146146179428848040} 803 | - {fileID: 146294980886653592} 804 | poweredWheels: 805 | - {fileID: 146923148938686852} 806 | - {fileID: 146459490054574554} 807 | - {fileID: 146294980886653592} 808 | - {fileID: 146146179428848040} 809 | - {fileID: 146292386569906728} 810 | - {fileID: 146219604400820752} 811 | - {fileID: 146949321256239348} 812 | - {fileID: 146637010436582134} 813 | - {fileID: 146389563562314238} 814 | - {fileID: 146524767103666282} 815 | left: [] 816 | right: [] 817 | --- !u!114 &114297118445597002 818 | MonoBehaviour: 819 | m_ObjectHideFlags: 1 820 | m_PrefabParentObject: {fileID: 0} 821 | m_PrefabInternal: {fileID: 100100000} 822 | m_GameObject: {fileID: 1036114824363482} 823 | m_Enabled: 1 824 | m_EditorHideFlags: 0 825 | m_Script: {fileID: 11500000, guid: 8eb09424443e6d64fb2c827645780888, type: 3} 826 | m_Name: 827 | m_EditorClassIdentifier: 828 | useFixedUpdate: 0 829 | invert: 1 830 | sensitivity: 20 831 | speed: 0 832 | modSpeed: 60 833 | zoomFov: 20 834 | visible: 1 835 | --- !u!124 &124631223408999470 836 | Behaviour: 837 | m_ObjectHideFlags: 1 838 | m_PrefabParentObject: {fileID: 0} 839 | m_PrefabInternal: {fileID: 100100000} 840 | m_GameObject: {fileID: 1036114824363482} 841 | m_Enabled: 1 842 | --- !u!146 &146146179428848040 843 | WheelCollider: 844 | m_ObjectHideFlags: 1 845 | m_PrefabParentObject: {fileID: 0} 846 | m_PrefabInternal: {fileID: 100100000} 847 | m_GameObject: {fileID: 1704941770134806} 848 | m_Center: {x: 0, y: 0, z: 0} 849 | m_Radius: 0.3 850 | m_SuspensionSpring: 851 | spring: 2000 852 | damper: 50 853 | targetPosition: 0.5 854 | m_SuspensionDistance: 0.5 855 | m_ForceAppPointDistance: 0 856 | m_Mass: 20 857 | m_WheelDampingRate: 0.25 858 | m_ForwardFriction: 859 | m_ExtremumSlip: 0.4 860 | m_ExtremumValue: 1 861 | m_AsymptoteSlip: 0.8 862 | m_AsymptoteValue: 0.5 863 | m_Stiffness: 1 864 | m_SidewaysFriction: 865 | m_ExtremumSlip: 0.2 866 | m_ExtremumValue: 1 867 | m_AsymptoteSlip: 0.5 868 | m_AsymptoteValue: 0.75 869 | m_Stiffness: 1 870 | m_Enabled: 1 871 | --- !u!146 &146219604400820752 872 | WheelCollider: 873 | m_ObjectHideFlags: 1 874 | m_PrefabParentObject: {fileID: 0} 875 | m_PrefabInternal: {fileID: 100100000} 876 | m_GameObject: {fileID: 1093665263383318} 877 | m_Center: {x: 0, y: 0, z: 0} 878 | m_Radius: 0.3 879 | m_SuspensionSpring: 880 | spring: 2000 881 | damper: 50 882 | targetPosition: 0.5 883 | m_SuspensionDistance: 0.5 884 | m_ForceAppPointDistance: 0 885 | m_Mass: 20 886 | m_WheelDampingRate: 0.25 887 | m_ForwardFriction: 888 | m_ExtremumSlip: 0.4 889 | m_ExtremumValue: 1 890 | m_AsymptoteSlip: 0.8 891 | m_AsymptoteValue: 0.5 892 | m_Stiffness: 1 893 | m_SidewaysFriction: 894 | m_ExtremumSlip: 0.2 895 | m_ExtremumValue: 1 896 | m_AsymptoteSlip: 0.5 897 | m_AsymptoteValue: 0.75 898 | m_Stiffness: 1 899 | m_Enabled: 1 900 | --- !u!146 &146292386569906728 901 | WheelCollider: 902 | m_ObjectHideFlags: 1 903 | m_PrefabParentObject: {fileID: 0} 904 | m_PrefabInternal: {fileID: 100100000} 905 | m_GameObject: {fileID: 1904200606716160} 906 | m_Center: {x: 0, y: 0, z: 0} 907 | m_Radius: 0.3 908 | m_SuspensionSpring: 909 | spring: 2000 910 | damper: 50 911 | targetPosition: 0.5 912 | m_SuspensionDistance: 0.5 913 | m_ForceAppPointDistance: 0 914 | m_Mass: 20 915 | m_WheelDampingRate: 0.25 916 | m_ForwardFriction: 917 | m_ExtremumSlip: 0.4 918 | m_ExtremumValue: 1 919 | m_AsymptoteSlip: 0.8 920 | m_AsymptoteValue: 0.5 921 | m_Stiffness: 1 922 | m_SidewaysFriction: 923 | m_ExtremumSlip: 0.2 924 | m_ExtremumValue: 1 925 | m_AsymptoteSlip: 0.5 926 | m_AsymptoteValue: 0.75 927 | m_Stiffness: 1 928 | m_Enabled: 1 929 | --- !u!146 &146294980886653592 930 | WheelCollider: 931 | m_ObjectHideFlags: 1 932 | m_PrefabParentObject: {fileID: 0} 933 | m_PrefabInternal: {fileID: 100100000} 934 | m_GameObject: {fileID: 1709637365487882} 935 | m_Center: {x: 0, y: 0, z: 0} 936 | m_Radius: 0.3 937 | m_SuspensionSpring: 938 | spring: 2000 939 | damper: 50 940 | targetPosition: 0.5 941 | m_SuspensionDistance: 0.5 942 | m_ForceAppPointDistance: 0 943 | m_Mass: 20 944 | m_WheelDampingRate: 0.25 945 | m_ForwardFriction: 946 | m_ExtremumSlip: 0.4 947 | m_ExtremumValue: 1 948 | m_AsymptoteSlip: 0.8 949 | m_AsymptoteValue: 0.5 950 | m_Stiffness: 1 951 | m_SidewaysFriction: 952 | m_ExtremumSlip: 0.2 953 | m_ExtremumValue: 1 954 | m_AsymptoteSlip: 0.5 955 | m_AsymptoteValue: 0.75 956 | m_Stiffness: 1 957 | m_Enabled: 1 958 | --- !u!146 &146389563562314238 959 | WheelCollider: 960 | m_ObjectHideFlags: 1 961 | m_PrefabParentObject: {fileID: 0} 962 | m_PrefabInternal: {fileID: 100100000} 963 | m_GameObject: {fileID: 1611333720626458} 964 | m_Center: {x: 0, y: 0, z: 0} 965 | m_Radius: 0.3 966 | m_SuspensionSpring: 967 | spring: 2000 968 | damper: 50 969 | targetPosition: 0.5 970 | m_SuspensionDistance: 0.5 971 | m_ForceAppPointDistance: 0 972 | m_Mass: 20 973 | m_WheelDampingRate: 0.25 974 | m_ForwardFriction: 975 | m_ExtremumSlip: 0.4 976 | m_ExtremumValue: 1 977 | m_AsymptoteSlip: 0.8 978 | m_AsymptoteValue: 0.5 979 | m_Stiffness: 1 980 | m_SidewaysFriction: 981 | m_ExtremumSlip: 0.2 982 | m_ExtremumValue: 1 983 | m_AsymptoteSlip: 0.5 984 | m_AsymptoteValue: 0.75 985 | m_Stiffness: 1 986 | m_Enabled: 1 987 | --- !u!146 &146459490054574554 988 | WheelCollider: 989 | m_ObjectHideFlags: 1 990 | m_PrefabParentObject: {fileID: 0} 991 | m_PrefabInternal: {fileID: 100100000} 992 | m_GameObject: {fileID: 1063078524758586} 993 | m_Center: {x: 0, y: 0, z: 0} 994 | m_Radius: 0.3 995 | m_SuspensionSpring: 996 | spring: 2000 997 | damper: 50 998 | targetPosition: 0.5 999 | m_SuspensionDistance: 0.5 1000 | m_ForceAppPointDistance: 0 1001 | m_Mass: 20 1002 | m_WheelDampingRate: 0.25 1003 | m_ForwardFriction: 1004 | m_ExtremumSlip: 0.4 1005 | m_ExtremumValue: 1 1006 | m_AsymptoteSlip: 0.8 1007 | m_AsymptoteValue: 0.5 1008 | m_Stiffness: 1 1009 | m_SidewaysFriction: 1010 | m_ExtremumSlip: 0.2 1011 | m_ExtremumValue: 1 1012 | m_AsymptoteSlip: 0.5 1013 | m_AsymptoteValue: 0.75 1014 | m_Stiffness: 1 1015 | m_Enabled: 1 1016 | --- !u!146 &146524767103666282 1017 | WheelCollider: 1018 | m_ObjectHideFlags: 1 1019 | m_PrefabParentObject: {fileID: 0} 1020 | m_PrefabInternal: {fileID: 100100000} 1021 | m_GameObject: {fileID: 1337351755310028} 1022 | m_Center: {x: 0, y: 0, z: 0} 1023 | m_Radius: 0.3 1024 | m_SuspensionSpring: 1025 | spring: 2000 1026 | damper: 50 1027 | targetPosition: 0.5 1028 | m_SuspensionDistance: 0.5 1029 | m_ForceAppPointDistance: 0 1030 | m_Mass: 20 1031 | m_WheelDampingRate: 0.25 1032 | m_ForwardFriction: 1033 | m_ExtremumSlip: 0.4 1034 | m_ExtremumValue: 1 1035 | m_AsymptoteSlip: 0.8 1036 | m_AsymptoteValue: 0.5 1037 | m_Stiffness: 1 1038 | m_SidewaysFriction: 1039 | m_ExtremumSlip: 0.2 1040 | m_ExtremumValue: 1 1041 | m_AsymptoteSlip: 0.5 1042 | m_AsymptoteValue: 0.75 1043 | m_Stiffness: 1 1044 | m_Enabled: 1 1045 | --- !u!146 &146637010436582134 1046 | WheelCollider: 1047 | m_ObjectHideFlags: 1 1048 | m_PrefabParentObject: {fileID: 0} 1049 | m_PrefabInternal: {fileID: 100100000} 1050 | m_GameObject: {fileID: 1281072361832404} 1051 | m_Center: {x: 0, y: 0, z: 0} 1052 | m_Radius: 0.3 1053 | m_SuspensionSpring: 1054 | spring: 2000 1055 | damper: 50 1056 | targetPosition: 0.5 1057 | m_SuspensionDistance: 0.5 1058 | m_ForceAppPointDistance: 0 1059 | m_Mass: 20 1060 | m_WheelDampingRate: 0.25 1061 | m_ForwardFriction: 1062 | m_ExtremumSlip: 0.4 1063 | m_ExtremumValue: 1 1064 | m_AsymptoteSlip: 0.8 1065 | m_AsymptoteValue: 0.5 1066 | m_Stiffness: 1 1067 | m_SidewaysFriction: 1068 | m_ExtremumSlip: 0.2 1069 | m_ExtremumValue: 1 1070 | m_AsymptoteSlip: 0.5 1071 | m_AsymptoteValue: 0.75 1072 | m_Stiffness: 1 1073 | m_Enabled: 1 1074 | --- !u!146 &146923148938686852 1075 | WheelCollider: 1076 | m_ObjectHideFlags: 1 1077 | m_PrefabParentObject: {fileID: 0} 1078 | m_PrefabInternal: {fileID: 100100000} 1079 | m_GameObject: {fileID: 1934662158235296} 1080 | m_Center: {x: 0, y: 0, z: 0} 1081 | m_Radius: 0.3 1082 | m_SuspensionSpring: 1083 | spring: 2000 1084 | damper: 50 1085 | targetPosition: 0.5 1086 | m_SuspensionDistance: 0.5 1087 | m_ForceAppPointDistance: 0 1088 | m_Mass: 20 1089 | m_WheelDampingRate: 0.25 1090 | m_ForwardFriction: 1091 | m_ExtremumSlip: 0.4 1092 | m_ExtremumValue: 1 1093 | m_AsymptoteSlip: 0.8 1094 | m_AsymptoteValue: 0.5 1095 | m_Stiffness: 1 1096 | m_SidewaysFriction: 1097 | m_ExtremumSlip: 0.2 1098 | m_ExtremumValue: 1 1099 | m_AsymptoteSlip: 0.5 1100 | m_AsymptoteValue: 0.75 1101 | m_Stiffness: 1 1102 | m_Enabled: 1 1103 | --- !u!146 &146949321256239348 1104 | WheelCollider: 1105 | m_ObjectHideFlags: 1 1106 | m_PrefabParentObject: {fileID: 0} 1107 | m_PrefabInternal: {fileID: 100100000} 1108 | m_GameObject: {fileID: 1009365560627332} 1109 | m_Center: {x: 0, y: 0, z: 0} 1110 | m_Radius: 0.3 1111 | m_SuspensionSpring: 1112 | spring: 2000 1113 | damper: 50 1114 | targetPosition: 0.5 1115 | m_SuspensionDistance: 0.5 1116 | m_ForceAppPointDistance: 0 1117 | m_Mass: 20 1118 | m_WheelDampingRate: 0.25 1119 | m_ForwardFriction: 1120 | m_ExtremumSlip: 0.4 1121 | m_ExtremumValue: 1 1122 | m_AsymptoteSlip: 0.8 1123 | m_AsymptoteValue: 0.5 1124 | m_Stiffness: 1 1125 | m_SidewaysFriction: 1126 | m_ExtremumSlip: 0.2 1127 | m_ExtremumValue: 1 1128 | m_AsymptoteSlip: 0.5 1129 | m_AsymptoteValue: 0.75 1130 | m_Stiffness: 1 1131 | m_Enabled: 1 1132 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs/FourWheelTurningTank.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 834ebc2433ddbd646a7672f382e56101 3 | timeCreated: 1518843097 4 | licenseType: Free 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 100100000 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs/MagicSteeringTank.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_ParentPrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1767456522786174} 13 | m_IsPrefabParent: 1 14 | --- !u!1 &1032546719026446 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_PrefabParentObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 5 20 | m_Component: 21 | - component: {fileID: 4973618874652182} 22 | - component: {fileID: 65521573150092522} 23 | m_Layer: 0 24 | m_Name: Collision 25 | m_TagString: Untagged 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!1 &1064653834551296 31 | GameObject: 32 | m_ObjectHideFlags: 1 33 | m_PrefabParentObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | serializedVersion: 5 36 | m_Component: 37 | - component: {fileID: 4860608532257074} 38 | - component: {fileID: 146225476934366050} 39 | m_Layer: 0 40 | m_Name: MidR 41 | m_TagString: Untagged 42 | m_Icon: {fileID: 0} 43 | m_NavMeshLayer: 0 44 | m_StaticEditorFlags: 0 45 | m_IsActive: 1 46 | --- !u!1 &1078549566830302 47 | GameObject: 48 | m_ObjectHideFlags: 0 49 | m_PrefabParentObject: {fileID: 0} 50 | m_PrefabInternal: {fileID: 100100000} 51 | serializedVersion: 5 52 | m_Component: 53 | - component: {fileID: 4257282233356526} 54 | m_Layer: 0 55 | m_Name: Visual 56 | m_TagString: Untagged 57 | m_Icon: {fileID: 0} 58 | m_NavMeshLayer: 0 59 | m_StaticEditorFlags: 0 60 | m_IsActive: 1 61 | --- !u!1 &1088646949538600 62 | GameObject: 63 | m_ObjectHideFlags: 1 64 | m_PrefabParentObject: {fileID: 0} 65 | m_PrefabInternal: {fileID: 100100000} 66 | serializedVersion: 5 67 | m_Component: 68 | - component: {fileID: 4964928483065304} 69 | - component: {fileID: 146701613785498450} 70 | m_Layer: 0 71 | m_Name: MidL (2) 72 | m_TagString: Untagged 73 | m_Icon: {fileID: 0} 74 | m_NavMeshLayer: 0 75 | m_StaticEditorFlags: 0 76 | m_IsActive: 1 77 | --- !u!1 &1177713183790704 78 | GameObject: 79 | m_ObjectHideFlags: 0 80 | m_PrefabParentObject: {fileID: 0} 81 | m_PrefabInternal: {fileID: 100100000} 82 | serializedVersion: 5 83 | m_Component: 84 | - component: {fileID: 4824431126122042} 85 | m_Layer: 0 86 | m_Name: CenterOfMass 87 | m_TagString: Untagged 88 | m_Icon: {fileID: 0} 89 | m_NavMeshLayer: 0 90 | m_StaticEditorFlags: 0 91 | m_IsActive: 1 92 | --- !u!1 &1251438591733328 93 | GameObject: 94 | m_ObjectHideFlags: 0 95 | m_PrefabParentObject: {fileID: 0} 96 | m_PrefabInternal: {fileID: 100100000} 97 | serializedVersion: 5 98 | m_Component: 99 | - component: {fileID: 4677017834647644} 100 | - component: {fileID: 20538988037485650} 101 | - component: {fileID: 124888793846699388} 102 | - component: {fileID: 81220127534363064} 103 | - component: {fileID: 114909854189649064} 104 | m_Layer: 0 105 | m_Name: Main Camera 106 | m_TagString: MainCamera 107 | m_Icon: {fileID: 0} 108 | m_NavMeshLayer: 0 109 | m_StaticEditorFlags: 0 110 | m_IsActive: 1 111 | --- !u!1 &1325317981280340 112 | GameObject: 113 | m_ObjectHideFlags: 1 114 | m_PrefabParentObject: {fileID: 0} 115 | m_PrefabInternal: {fileID: 100100000} 116 | serializedVersion: 5 117 | m_Component: 118 | - component: {fileID: 4456841603010328} 119 | - component: {fileID: 146176810318140316} 120 | m_Layer: 0 121 | m_Name: MidR (1) 122 | m_TagString: Untagged 123 | m_Icon: {fileID: 0} 124 | m_NavMeshLayer: 0 125 | m_StaticEditorFlags: 0 126 | m_IsActive: 1 127 | --- !u!1 &1370787699938366 128 | GameObject: 129 | m_ObjectHideFlags: 1 130 | m_PrefabParentObject: {fileID: 0} 131 | m_PrefabInternal: {fileID: 100100000} 132 | serializedVersion: 5 133 | m_Component: 134 | - component: {fileID: 4544088692441504} 135 | - component: {fileID: 33099720350786742} 136 | - component: {fileID: 23984655726255848} 137 | m_Layer: 0 138 | m_Name: Cube (1) 139 | m_TagString: Untagged 140 | m_Icon: {fileID: 0} 141 | m_NavMeshLayer: 0 142 | m_StaticEditorFlags: 0 143 | m_IsActive: 1 144 | --- !u!1 &1387591994464268 145 | GameObject: 146 | m_ObjectHideFlags: 1 147 | m_PrefabParentObject: {fileID: 0} 148 | m_PrefabInternal: {fileID: 100100000} 149 | serializedVersion: 5 150 | m_Component: 151 | - component: {fileID: 4087355227878762} 152 | - component: {fileID: 146630705370301870} 153 | m_Layer: 0 154 | m_Name: MidR (2) 155 | m_TagString: Untagged 156 | m_Icon: {fileID: 0} 157 | m_NavMeshLayer: 0 158 | m_StaticEditorFlags: 0 159 | m_IsActive: 1 160 | --- !u!1 &1507319803961442 161 | GameObject: 162 | m_ObjectHideFlags: 1 163 | m_PrefabParentObject: {fileID: 0} 164 | m_PrefabInternal: {fileID: 100100000} 165 | serializedVersion: 5 166 | m_Component: 167 | - component: {fileID: 4220135756982386} 168 | - component: {fileID: 33086405965904968} 169 | - component: {fileID: 23844074402667086} 170 | m_Layer: 0 171 | m_Name: Cube (2) 172 | m_TagString: Untagged 173 | m_Icon: {fileID: 0} 174 | m_NavMeshLayer: 0 175 | m_StaticEditorFlags: 0 176 | m_IsActive: 1 177 | --- !u!1 &1546223360999614 178 | GameObject: 179 | m_ObjectHideFlags: 1 180 | m_PrefabParentObject: {fileID: 0} 181 | m_PrefabInternal: {fileID: 100100000} 182 | serializedVersion: 5 183 | m_Component: 184 | - component: {fileID: 4960543663855652} 185 | - component: {fileID: 146672293839729794} 186 | m_Layer: 0 187 | m_Name: RearR 188 | m_TagString: Untagged 189 | m_Icon: {fileID: 0} 190 | m_NavMeshLayer: 0 191 | m_StaticEditorFlags: 0 192 | m_IsActive: 1 193 | --- !u!1 &1556547901126208 194 | GameObject: 195 | m_ObjectHideFlags: 1 196 | m_PrefabParentObject: {fileID: 0} 197 | m_PrefabInternal: {fileID: 100100000} 198 | serializedVersion: 5 199 | m_Component: 200 | - component: {fileID: 4792426567763362} 201 | - component: {fileID: 146090625087584892} 202 | m_Layer: 0 203 | m_Name: RearL 204 | m_TagString: Untagged 205 | m_Icon: {fileID: 0} 206 | m_NavMeshLayer: 0 207 | m_StaticEditorFlags: 0 208 | m_IsActive: 1 209 | --- !u!1 &1715293637878330 210 | GameObject: 211 | m_ObjectHideFlags: 1 212 | m_PrefabParentObject: {fileID: 0} 213 | m_PrefabInternal: {fileID: 100100000} 214 | serializedVersion: 5 215 | m_Component: 216 | - component: {fileID: 4315189113625092} 217 | - component: {fileID: 146655064370980668} 218 | m_Layer: 0 219 | m_Name: FrontL 220 | m_TagString: Untagged 221 | m_Icon: {fileID: 0} 222 | m_NavMeshLayer: 0 223 | m_StaticEditorFlags: 0 224 | m_IsActive: 1 225 | --- !u!1 &1764842900898302 226 | GameObject: 227 | m_ObjectHideFlags: 0 228 | m_PrefabParentObject: {fileID: 0} 229 | m_PrefabInternal: {fileID: 100100000} 230 | serializedVersion: 5 231 | m_Component: 232 | - component: {fileID: 4484719246378196} 233 | m_Layer: 0 234 | m_Name: Wheels 235 | m_TagString: Untagged 236 | m_Icon: {fileID: 0} 237 | m_NavMeshLayer: 0 238 | m_StaticEditorFlags: 0 239 | m_IsActive: 1 240 | --- !u!1 &1767456522786174 241 | GameObject: 242 | m_ObjectHideFlags: 0 243 | m_PrefabParentObject: {fileID: 0} 244 | m_PrefabInternal: {fileID: 100100000} 245 | serializedVersion: 5 246 | m_Component: 247 | - component: {fileID: 4444740319727168} 248 | - component: {fileID: 54771495311620172} 249 | - component: {fileID: 114619386501909178} 250 | m_Layer: 0 251 | m_Name: MagicSteeringTank 252 | m_TagString: Untagged 253 | m_Icon: {fileID: 0} 254 | m_NavMeshLayer: 0 255 | m_StaticEditorFlags: 0 256 | m_IsActive: 1 257 | --- !u!1 &1780814843295362 258 | GameObject: 259 | m_ObjectHideFlags: 1 260 | m_PrefabParentObject: {fileID: 0} 261 | m_PrefabInternal: {fileID: 100100000} 262 | serializedVersion: 5 263 | m_Component: 264 | - component: {fileID: 4745279638782148} 265 | - component: {fileID: 33972820119730368} 266 | - component: {fileID: 23811114088985952} 267 | m_Layer: 0 268 | m_Name: Cube 269 | m_TagString: Untagged 270 | m_Icon: {fileID: 0} 271 | m_NavMeshLayer: 0 272 | m_StaticEditorFlags: 0 273 | m_IsActive: 1 274 | --- !u!1 &1781978629743726 275 | GameObject: 276 | m_ObjectHideFlags: 1 277 | m_PrefabParentObject: {fileID: 0} 278 | m_PrefabInternal: {fileID: 100100000} 279 | serializedVersion: 5 280 | m_Component: 281 | - component: {fileID: 4734260395428872} 282 | - component: {fileID: 146459148325226640} 283 | m_Layer: 0 284 | m_Name: MidL 285 | m_TagString: Untagged 286 | m_Icon: {fileID: 0} 287 | m_NavMeshLayer: 0 288 | m_StaticEditorFlags: 0 289 | m_IsActive: 1 290 | --- !u!1 &1899059299816556 291 | GameObject: 292 | m_ObjectHideFlags: 1 293 | m_PrefabParentObject: {fileID: 0} 294 | m_PrefabInternal: {fileID: 100100000} 295 | serializedVersion: 5 296 | m_Component: 297 | - component: {fileID: 4996669420619168} 298 | - component: {fileID: 146006559825113538} 299 | m_Layer: 0 300 | m_Name: MidL (1) 301 | m_TagString: Untagged 302 | m_Icon: {fileID: 0} 303 | m_NavMeshLayer: 0 304 | m_StaticEditorFlags: 0 305 | m_IsActive: 1 306 | --- !u!1 &1918800944384862 307 | GameObject: 308 | m_ObjectHideFlags: 1 309 | m_PrefabParentObject: {fileID: 0} 310 | m_PrefabInternal: {fileID: 100100000} 311 | serializedVersion: 5 312 | m_Component: 313 | - component: {fileID: 4377232839257002} 314 | - component: {fileID: 146243083604045770} 315 | m_Layer: 0 316 | m_Name: FrontR 317 | m_TagString: Untagged 318 | m_Icon: {fileID: 0} 319 | m_NavMeshLayer: 0 320 | m_StaticEditorFlags: 0 321 | m_IsActive: 1 322 | --- !u!4 &4087355227878762 323 | Transform: 324 | m_ObjectHideFlags: 1 325 | m_PrefabParentObject: {fileID: 0} 326 | m_PrefabInternal: {fileID: 100100000} 327 | m_GameObject: {fileID: 1387591994464268} 328 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 329 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: -1.77} 330 | m_LocalScale: {x: 1, y: 1, z: 1} 331 | m_Children: [] 332 | m_Father: {fileID: 4484719246378196} 333 | m_RootOrder: 9 334 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 335 | --- !u!4 &4220135756982386 336 | Transform: 337 | m_ObjectHideFlags: 1 338 | m_PrefabParentObject: {fileID: 0} 339 | m_PrefabInternal: {fileID: 100100000} 340 | m_GameObject: {fileID: 1507319803961442} 341 | m_LocalRotation: {x: -0.3826827, y: 0.92387986, z: -0.0000011175871, w: 0.0000025629997} 342 | m_LocalPosition: {x: -0.000009536743, y: 1.0399997, z: 2.41} 343 | m_LocalScale: {x: 0.2564105, y: 0.2564105, z: 3.2238731} 344 | m_Children: [] 345 | m_Father: {fileID: 4257282233356526} 346 | m_RootOrder: 2 347 | m_LocalEulerAnglesHint: {x: 0, y: 180.00002, z: -45.000004} 348 | --- !u!4 &4257282233356526 349 | Transform: 350 | m_ObjectHideFlags: 1 351 | m_PrefabParentObject: {fileID: 0} 352 | m_PrefabInternal: {fileID: 100100000} 353 | m_GameObject: {fileID: 1078549566830302} 354 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 355 | m_LocalPosition: {x: 0, y: 0, z: 0} 356 | m_LocalScale: {x: 1, y: 1, z: 1} 357 | m_Children: 358 | - {fileID: 4745279638782148} 359 | - {fileID: 4544088692441504} 360 | - {fileID: 4220135756982386} 361 | m_Father: {fileID: 4444740319727168} 362 | m_RootOrder: 0 363 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 364 | --- !u!4 &4315189113625092 365 | Transform: 366 | m_ObjectHideFlags: 1 367 | m_PrefabParentObject: {fileID: 0} 368 | m_PrefabInternal: {fileID: 100100000} 369 | m_GameObject: {fileID: 1715293637878330} 370 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 371 | m_LocalPosition: {x: -1.5319996, y: -0.26000023, z: 3.3} 372 | m_LocalScale: {x: 1, y: 1, z: 1} 373 | m_Children: [] 374 | m_Father: {fileID: 4484719246378196} 375 | m_RootOrder: 5 376 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 377 | --- !u!4 &4377232839257002 378 | Transform: 379 | m_ObjectHideFlags: 1 380 | m_PrefabParentObject: {fileID: 0} 381 | m_PrefabInternal: {fileID: 100100000} 382 | m_GameObject: {fileID: 1918800944384862} 383 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 384 | m_LocalPosition: {x: 1.5319996, y: -0.26000023, z: 3.2999997} 385 | m_LocalScale: {x: 1, y: 1, z: 1} 386 | m_Children: [] 387 | m_Father: {fileID: 4484719246378196} 388 | m_RootOrder: 4 389 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 390 | --- !u!4 &4444740319727168 391 | Transform: 392 | m_ObjectHideFlags: 1 393 | m_PrefabParentObject: {fileID: 0} 394 | m_PrefabInternal: {fileID: 100100000} 395 | m_GameObject: {fileID: 1767456522786174} 396 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 397 | m_LocalPosition: {x: 0, y: 5.21, z: 0} 398 | m_LocalScale: {x: 1, y: 1, z: 1} 399 | m_Children: 400 | - {fileID: 4257282233356526} 401 | - {fileID: 4973618874652182} 402 | - {fileID: 4484719246378196} 403 | - {fileID: 4677017834647644} 404 | - {fileID: 4824431126122042} 405 | m_Father: {fileID: 0} 406 | m_RootOrder: 0 407 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 408 | --- !u!4 &4456841603010328 409 | Transform: 410 | m_ObjectHideFlags: 1 411 | m_PrefabParentObject: {fileID: 0} 412 | m_PrefabInternal: {fileID: 100100000} 413 | m_GameObject: {fileID: 1325317981280340} 414 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 415 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: 1.81} 416 | m_LocalScale: {x: 1, y: 1, z: 1} 417 | m_Children: [] 418 | m_Father: {fileID: 4484719246378196} 419 | m_RootOrder: 7 420 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 421 | --- !u!4 &4484719246378196 422 | Transform: 423 | m_ObjectHideFlags: 1 424 | m_PrefabParentObject: {fileID: 0} 425 | m_PrefabInternal: {fileID: 100100000} 426 | m_GameObject: {fileID: 1764842900898302} 427 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 428 | m_LocalPosition: {x: 0, y: 0, z: 0} 429 | m_LocalScale: {x: 1, y: 1, z: 1} 430 | m_Children: 431 | - {fileID: 4734260395428872} 432 | - {fileID: 4860608532257074} 433 | - {fileID: 4792426567763362} 434 | - {fileID: 4960543663855652} 435 | - {fileID: 4377232839257002} 436 | - {fileID: 4315189113625092} 437 | - {fileID: 4996669420619168} 438 | - {fileID: 4456841603010328} 439 | - {fileID: 4964928483065304} 440 | - {fileID: 4087355227878762} 441 | m_Father: {fileID: 4444740319727168} 442 | m_RootOrder: 2 443 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 444 | --- !u!4 &4544088692441504 445 | Transform: 446 | m_ObjectHideFlags: 1 447 | m_PrefabParentObject: {fileID: 0} 448 | m_PrefabInternal: {fileID: 100100000} 449 | m_GameObject: {fileID: 1370787699938366} 450 | m_LocalRotation: {x: -0, y: 1, z: -0, w: 0.0000029504295} 451 | m_LocalPosition: {x: 0.000005722046, y: 1.04, z: -0.81} 452 | m_LocalScale: {x: 2.5759895, y: 0.8046773, z: 3.2887259} 453 | m_Children: [] 454 | m_Father: {fileID: 4257282233356526} 455 | m_RootOrder: 1 456 | m_LocalEulerAnglesHint: {x: 0, y: 180.00002, z: 0} 457 | --- !u!4 &4677017834647644 458 | Transform: 459 | m_ObjectHideFlags: 1 460 | m_PrefabParentObject: {fileID: 0} 461 | m_PrefabInternal: {fileID: 100100000} 462 | m_GameObject: {fileID: 1251438591733328} 463 | m_LocalRotation: {x: 0.053685226, y: -0.87737113, z: 0.029120289, w: 0.47590944} 464 | m_LocalPosition: {x: 6.63, y: 0.52, z: 4.59} 465 | m_LocalScale: {x: 1, y: 1, z: 1} 466 | m_Children: [] 467 | m_Father: {fileID: 4444740319727168} 468 | m_RootOrder: 3 469 | m_LocalEulerAnglesHint: {x: 5.866, y: -123.243004, z: -3.8320003} 470 | --- !u!4 &4734260395428872 471 | Transform: 472 | m_ObjectHideFlags: 1 473 | m_PrefabParentObject: {fileID: 0} 474 | m_PrefabInternal: {fileID: 100100000} 475 | m_GameObject: {fileID: 1781978629743726} 476 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 477 | m_LocalPosition: {x: 1.532, y: -0.26, z: 0} 478 | m_LocalScale: {x: 1, y: 1, z: 1} 479 | m_Children: [] 480 | m_Father: {fileID: 4484719246378196} 481 | m_RootOrder: 0 482 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 483 | --- !u!4 &4745279638782148 484 | Transform: 485 | m_ObjectHideFlags: 1 486 | m_PrefabParentObject: {fileID: 0} 487 | m_PrefabInternal: {fileID: 100100000} 488 | m_GameObject: {fileID: 1780814843295362} 489 | m_LocalRotation: {x: -0, y: 1, z: -0, w: 0.0000029504295} 490 | m_LocalPosition: {x: 0.000002861023, y: 0.3369998, z: -0.2500019} 491 | m_LocalScale: {x: 3.66, y: 0.80684286, z: 7.8} 492 | m_Children: [] 493 | m_Father: {fileID: 4257282233356526} 494 | m_RootOrder: 0 495 | m_LocalEulerAnglesHint: {x: 0, y: 180.00002, z: 0} 496 | --- !u!4 &4792426567763362 497 | Transform: 498 | m_ObjectHideFlags: 1 499 | m_PrefabParentObject: {fileID: 0} 500 | m_PrefabInternal: {fileID: 100100000} 501 | m_GameObject: {fileID: 1556547901126208} 502 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 503 | m_LocalPosition: {x: 1.5319996, y: -0.26000023, z: -3.52} 504 | m_LocalScale: {x: 1, y: 1, z: 1} 505 | m_Children: [] 506 | m_Father: {fileID: 4484719246378196} 507 | m_RootOrder: 2 508 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 509 | --- !u!4 &4824431126122042 510 | Transform: 511 | m_ObjectHideFlags: 1 512 | m_PrefabParentObject: {fileID: 0} 513 | m_PrefabInternal: {fileID: 100100000} 514 | m_GameObject: {fileID: 1177713183790704} 515 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 516 | m_LocalPosition: {x: 0, y: -0.6, z: 0} 517 | m_LocalScale: {x: 1, y: 1, z: 1} 518 | m_Children: [] 519 | m_Father: {fileID: 4444740319727168} 520 | m_RootOrder: 4 521 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 522 | --- !u!4 &4860608532257074 523 | Transform: 524 | m_ObjectHideFlags: 1 525 | m_PrefabParentObject: {fileID: 0} 526 | m_PrefabInternal: {fileID: 100100000} 527 | m_GameObject: {fileID: 1064653834551296} 528 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 529 | m_LocalPosition: {x: -1.532, y: -0.26000023, z: 0} 530 | m_LocalScale: {x: 1, y: 1, z: 1} 531 | m_Children: [] 532 | m_Father: {fileID: 4484719246378196} 533 | m_RootOrder: 1 534 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 535 | --- !u!4 &4960543663855652 536 | Transform: 537 | m_ObjectHideFlags: 1 538 | m_PrefabParentObject: {fileID: 0} 539 | m_PrefabInternal: {fileID: 100100000} 540 | m_GameObject: {fileID: 1546223360999614} 541 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 542 | m_LocalPosition: {x: -1.5319996, y: -0.26000023, z: -3.52} 543 | m_LocalScale: {x: 1, y: 1, z: 1} 544 | m_Children: [] 545 | m_Father: {fileID: 4484719246378196} 546 | m_RootOrder: 3 547 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 548 | --- !u!4 &4964928483065304 549 | Transform: 550 | m_ObjectHideFlags: 1 551 | m_PrefabParentObject: {fileID: 0} 552 | m_PrefabInternal: {fileID: 100100000} 553 | m_GameObject: {fileID: 1088646949538600} 554 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 555 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: -1.77} 556 | m_LocalScale: {x: 1, y: 1, z: 1} 557 | m_Children: [] 558 | m_Father: {fileID: 4484719246378196} 559 | m_RootOrder: 8 560 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 561 | --- !u!4 &4973618874652182 562 | Transform: 563 | m_ObjectHideFlags: 1 564 | m_PrefabParentObject: {fileID: 0} 565 | m_PrefabInternal: {fileID: 100100000} 566 | m_GameObject: {fileID: 1032546719026446} 567 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 568 | m_LocalPosition: {x: 0, y: 0.19999981, z: 0} 569 | m_LocalScale: {x: 1, y: 1, z: 1} 570 | m_Children: [] 571 | m_Father: {fileID: 4444740319727168} 572 | m_RootOrder: 1 573 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 574 | --- !u!4 &4996669420619168 575 | Transform: 576 | m_ObjectHideFlags: 1 577 | m_PrefabParentObject: {fileID: 0} 578 | m_PrefabInternal: {fileID: 100100000} 579 | m_GameObject: {fileID: 1899059299816556} 580 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 581 | m_LocalPosition: {x: 1.532, y: -0.26000023, z: 1.81} 582 | m_LocalScale: {x: 1, y: 1, z: 1} 583 | m_Children: [] 584 | m_Father: {fileID: 4484719246378196} 585 | m_RootOrder: 6 586 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 587 | --- !u!20 &20538988037485650 588 | Camera: 589 | m_ObjectHideFlags: 1 590 | m_PrefabParentObject: {fileID: 0} 591 | m_PrefabInternal: {fileID: 100100000} 592 | m_GameObject: {fileID: 1251438591733328} 593 | m_Enabled: 1 594 | serializedVersion: 2 595 | m_ClearFlags: 1 596 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} 597 | m_NormalizedViewPortRect: 598 | serializedVersion: 2 599 | x: 0 600 | y: 0 601 | width: 1 602 | height: 1 603 | near clip plane: 0.3 604 | far clip plane: 1000 605 | field of view: 60 606 | orthographic: 0 607 | orthographic size: 5 608 | m_Depth: -1 609 | m_CullingMask: 610 | serializedVersion: 2 611 | m_Bits: 4294967295 612 | m_RenderingPath: -1 613 | m_TargetTexture: {fileID: 0} 614 | m_TargetDisplay: 0 615 | m_TargetEye: 3 616 | m_HDR: 1 617 | m_AllowMSAA: 1 618 | m_AllowDynamicResolution: 0 619 | m_ForceIntoRT: 0 620 | m_OcclusionCulling: 1 621 | m_StereoConvergence: 10 622 | m_StereoSeparation: 0.022 623 | --- !u!23 &23811114088985952 624 | MeshRenderer: 625 | m_ObjectHideFlags: 1 626 | m_PrefabParentObject: {fileID: 0} 627 | m_PrefabInternal: {fileID: 100100000} 628 | m_GameObject: {fileID: 1780814843295362} 629 | m_Enabled: 1 630 | m_CastShadows: 1 631 | m_ReceiveShadows: 1 632 | m_DynamicOccludee: 1 633 | m_MotionVectors: 1 634 | m_LightProbeUsage: 1 635 | m_ReflectionProbeUsage: 1 636 | m_Materials: 637 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 638 | m_StaticBatchInfo: 639 | firstSubMesh: 0 640 | subMeshCount: 0 641 | m_StaticBatchRoot: {fileID: 0} 642 | m_ProbeAnchor: {fileID: 0} 643 | m_LightProbeVolumeOverride: {fileID: 0} 644 | m_ScaleInLightmap: 1 645 | m_PreserveUVs: 1 646 | m_IgnoreNormalsForChartDetection: 0 647 | m_ImportantGI: 0 648 | m_StitchLightmapSeams: 0 649 | m_SelectedEditorRenderState: 3 650 | m_MinimumChartSize: 4 651 | m_AutoUVMaxDistance: 0.5 652 | m_AutoUVMaxAngle: 89 653 | m_LightmapParameters: {fileID: 0} 654 | m_SortingLayerID: 0 655 | m_SortingLayer: 0 656 | m_SortingOrder: 0 657 | --- !u!23 &23844074402667086 658 | MeshRenderer: 659 | m_ObjectHideFlags: 1 660 | m_PrefabParentObject: {fileID: 0} 661 | m_PrefabInternal: {fileID: 100100000} 662 | m_GameObject: {fileID: 1507319803961442} 663 | m_Enabled: 1 664 | m_CastShadows: 1 665 | m_ReceiveShadows: 1 666 | m_DynamicOccludee: 1 667 | m_MotionVectors: 1 668 | m_LightProbeUsage: 1 669 | m_ReflectionProbeUsage: 1 670 | m_Materials: 671 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 672 | m_StaticBatchInfo: 673 | firstSubMesh: 0 674 | subMeshCount: 0 675 | m_StaticBatchRoot: {fileID: 0} 676 | m_ProbeAnchor: {fileID: 0} 677 | m_LightProbeVolumeOverride: {fileID: 0} 678 | m_ScaleInLightmap: 1 679 | m_PreserveUVs: 1 680 | m_IgnoreNormalsForChartDetection: 0 681 | m_ImportantGI: 0 682 | m_StitchLightmapSeams: 0 683 | m_SelectedEditorRenderState: 3 684 | m_MinimumChartSize: 4 685 | m_AutoUVMaxDistance: 0.5 686 | m_AutoUVMaxAngle: 89 687 | m_LightmapParameters: {fileID: 0} 688 | m_SortingLayerID: 0 689 | m_SortingLayer: 0 690 | m_SortingOrder: 0 691 | --- !u!23 &23984655726255848 692 | MeshRenderer: 693 | m_ObjectHideFlags: 1 694 | m_PrefabParentObject: {fileID: 0} 695 | m_PrefabInternal: {fileID: 100100000} 696 | m_GameObject: {fileID: 1370787699938366} 697 | m_Enabled: 1 698 | m_CastShadows: 1 699 | m_ReceiveShadows: 1 700 | m_DynamicOccludee: 1 701 | m_MotionVectors: 1 702 | m_LightProbeUsage: 1 703 | m_ReflectionProbeUsage: 1 704 | m_Materials: 705 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 706 | m_StaticBatchInfo: 707 | firstSubMesh: 0 708 | subMeshCount: 0 709 | m_StaticBatchRoot: {fileID: 0} 710 | m_ProbeAnchor: {fileID: 0} 711 | m_LightProbeVolumeOverride: {fileID: 0} 712 | m_ScaleInLightmap: 1 713 | m_PreserveUVs: 1 714 | m_IgnoreNormalsForChartDetection: 0 715 | m_ImportantGI: 0 716 | m_StitchLightmapSeams: 0 717 | m_SelectedEditorRenderState: 3 718 | m_MinimumChartSize: 4 719 | m_AutoUVMaxDistance: 0.5 720 | m_AutoUVMaxAngle: 89 721 | m_LightmapParameters: {fileID: 0} 722 | m_SortingLayerID: 0 723 | m_SortingLayer: 0 724 | m_SortingOrder: 0 725 | --- !u!33 &33086405965904968 726 | MeshFilter: 727 | m_ObjectHideFlags: 1 728 | m_PrefabParentObject: {fileID: 0} 729 | m_PrefabInternal: {fileID: 100100000} 730 | m_GameObject: {fileID: 1507319803961442} 731 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} 732 | --- !u!33 &33099720350786742 733 | MeshFilter: 734 | m_ObjectHideFlags: 1 735 | m_PrefabParentObject: {fileID: 0} 736 | m_PrefabInternal: {fileID: 100100000} 737 | m_GameObject: {fileID: 1370787699938366} 738 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} 739 | --- !u!33 &33972820119730368 740 | MeshFilter: 741 | m_ObjectHideFlags: 1 742 | m_PrefabParentObject: {fileID: 0} 743 | m_PrefabInternal: {fileID: 100100000} 744 | m_GameObject: {fileID: 1780814843295362} 745 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} 746 | --- !u!54 &54771495311620172 747 | Rigidbody: 748 | m_ObjectHideFlags: 1 749 | m_PrefabParentObject: {fileID: 0} 750 | m_PrefabInternal: {fileID: 100100000} 751 | m_GameObject: {fileID: 1767456522786174} 752 | serializedVersion: 2 753 | m_Mass: 100 754 | m_Drag: 0 755 | m_AngularDrag: 1 756 | m_UseGravity: 1 757 | m_IsKinematic: 0 758 | m_Interpolate: 0 759 | m_Constraints: 0 760 | m_CollisionDetection: 0 761 | --- !u!65 &65521573150092522 762 | BoxCollider: 763 | m_ObjectHideFlags: 1 764 | m_PrefabParentObject: {fileID: 0} 765 | m_PrefabInternal: {fileID: 100100000} 766 | m_GameObject: {fileID: 1032546719026446} 767 | m_Material: {fileID: 0} 768 | m_IsTrigger: 0 769 | m_Enabled: 1 770 | serializedVersion: 2 771 | m_Size: {x: 3.8, y: 2.2755275, z: 8} 772 | m_Center: {x: 0, y: 0.6647117, z: 0} 773 | --- !u!81 &81220127534363064 774 | AudioListener: 775 | m_ObjectHideFlags: 1 776 | m_PrefabParentObject: {fileID: 0} 777 | m_PrefabInternal: {fileID: 100100000} 778 | m_GameObject: {fileID: 1251438591733328} 779 | m_Enabled: 1 780 | --- !u!114 &114619386501909178 781 | MonoBehaviour: 782 | m_ObjectHideFlags: 1 783 | m_PrefabParentObject: {fileID: 0} 784 | m_PrefabInternal: {fileID: 100100000} 785 | m_GameObject: {fileID: 1767456522786174} 786 | m_Enabled: 1 787 | m_EditorHideFlags: 0 788 | m_Script: {fileID: 11500000, guid: 0d84f955e93eae344b8af410d738b87d, type: 3} 789 | m_Name: 790 | m_EditorClassIdentifier: 791 | topSpeed: 10 792 | steeringAngle: 30 793 | motorTorque: 30 794 | magicTurnRate: 30 795 | centerOfMass: {fileID: 4824431126122042} 796 | wheelModelPrefab: {fileID: 4339269679154178, guid: 07216a712257a1e459f116450fda489c, 797 | type: 2} 798 | front: [] 799 | rear: [] 800 | poweredWheels: 801 | - {fileID: 146459148325226640} 802 | - {fileID: 146225476934366050} 803 | - {fileID: 146090625087584892} 804 | - {fileID: 146672293839729794} 805 | - {fileID: 146243083604045770} 806 | - {fileID: 146655064370980668} 807 | - {fileID: 146006559825113538} 808 | - {fileID: 146176810318140316} 809 | - {fileID: 146701613785498450} 810 | - {fileID: 146630705370301870} 811 | left: [] 812 | right: [] 813 | --- !u!114 &114909854189649064 814 | MonoBehaviour: 815 | m_ObjectHideFlags: 1 816 | m_PrefabParentObject: {fileID: 0} 817 | m_PrefabInternal: {fileID: 100100000} 818 | m_GameObject: {fileID: 1251438591733328} 819 | m_Enabled: 1 820 | m_EditorHideFlags: 0 821 | m_Script: {fileID: 11500000, guid: 8eb09424443e6d64fb2c827645780888, type: 3} 822 | m_Name: 823 | m_EditorClassIdentifier: 824 | useFixedUpdate: 0 825 | invert: 1 826 | sensitivity: 20 827 | speed: 0 828 | modSpeed: 60 829 | zoomFov: 20 830 | visible: 1 831 | --- !u!124 &124888793846699388 832 | Behaviour: 833 | m_ObjectHideFlags: 1 834 | m_PrefabParentObject: {fileID: 0} 835 | m_PrefabInternal: {fileID: 100100000} 836 | m_GameObject: {fileID: 1251438591733328} 837 | m_Enabled: 1 838 | --- !u!146 &146006559825113538 839 | WheelCollider: 840 | m_ObjectHideFlags: 1 841 | m_PrefabParentObject: {fileID: 0} 842 | m_PrefabInternal: {fileID: 100100000} 843 | m_GameObject: {fileID: 1899059299816556} 844 | m_Center: {x: 0, y: 0, z: 0} 845 | m_Radius: 0.3 846 | m_SuspensionSpring: 847 | spring: 2000 848 | damper: 50 849 | targetPosition: 0.5 850 | m_SuspensionDistance: 0.5 851 | m_ForceAppPointDistance: 0 852 | m_Mass: 20 853 | m_WheelDampingRate: 0.25 854 | m_ForwardFriction: 855 | m_ExtremumSlip: 0.4 856 | m_ExtremumValue: 1 857 | m_AsymptoteSlip: 0.8 858 | m_AsymptoteValue: 0.5 859 | m_Stiffness: 1 860 | m_SidewaysFriction: 861 | m_ExtremumSlip: 0.2 862 | m_ExtremumValue: 1 863 | m_AsymptoteSlip: 0.5 864 | m_AsymptoteValue: 0.75 865 | m_Stiffness: 1 866 | m_Enabled: 1 867 | --- !u!146 &146090625087584892 868 | WheelCollider: 869 | m_ObjectHideFlags: 1 870 | m_PrefabParentObject: {fileID: 0} 871 | m_PrefabInternal: {fileID: 100100000} 872 | m_GameObject: {fileID: 1556547901126208} 873 | m_Center: {x: 0, y: 0, z: 0} 874 | m_Radius: 0.3 875 | m_SuspensionSpring: 876 | spring: 2000 877 | damper: 50 878 | targetPosition: 0.5 879 | m_SuspensionDistance: 0.5 880 | m_ForceAppPointDistance: 0 881 | m_Mass: 20 882 | m_WheelDampingRate: 0.25 883 | m_ForwardFriction: 884 | m_ExtremumSlip: 0.4 885 | m_ExtremumValue: 1 886 | m_AsymptoteSlip: 0.8 887 | m_AsymptoteValue: 0.5 888 | m_Stiffness: 1 889 | m_SidewaysFriction: 890 | m_ExtremumSlip: 0.2 891 | m_ExtremumValue: 1 892 | m_AsymptoteSlip: 0.5 893 | m_AsymptoteValue: 0.75 894 | m_Stiffness: 1 895 | m_Enabled: 1 896 | --- !u!146 &146176810318140316 897 | WheelCollider: 898 | m_ObjectHideFlags: 1 899 | m_PrefabParentObject: {fileID: 0} 900 | m_PrefabInternal: {fileID: 100100000} 901 | m_GameObject: {fileID: 1325317981280340} 902 | m_Center: {x: 0, y: 0, z: 0} 903 | m_Radius: 0.3 904 | m_SuspensionSpring: 905 | spring: 2000 906 | damper: 50 907 | targetPosition: 0.5 908 | m_SuspensionDistance: 0.5 909 | m_ForceAppPointDistance: 0 910 | m_Mass: 20 911 | m_WheelDampingRate: 0.25 912 | m_ForwardFriction: 913 | m_ExtremumSlip: 0.4 914 | m_ExtremumValue: 1 915 | m_AsymptoteSlip: 0.8 916 | m_AsymptoteValue: 0.5 917 | m_Stiffness: 1 918 | m_SidewaysFriction: 919 | m_ExtremumSlip: 0.2 920 | m_ExtremumValue: 1 921 | m_AsymptoteSlip: 0.5 922 | m_AsymptoteValue: 0.75 923 | m_Stiffness: 1 924 | m_Enabled: 1 925 | --- !u!146 &146225476934366050 926 | WheelCollider: 927 | m_ObjectHideFlags: 1 928 | m_PrefabParentObject: {fileID: 0} 929 | m_PrefabInternal: {fileID: 100100000} 930 | m_GameObject: {fileID: 1064653834551296} 931 | m_Center: {x: 0, y: 0, z: 0} 932 | m_Radius: 0.3 933 | m_SuspensionSpring: 934 | spring: 2000 935 | damper: 50 936 | targetPosition: 0.5 937 | m_SuspensionDistance: 0.5 938 | m_ForceAppPointDistance: 0 939 | m_Mass: 20 940 | m_WheelDampingRate: 0.25 941 | m_ForwardFriction: 942 | m_ExtremumSlip: 0.4 943 | m_ExtremumValue: 1 944 | m_AsymptoteSlip: 0.8 945 | m_AsymptoteValue: 0.5 946 | m_Stiffness: 1 947 | m_SidewaysFriction: 948 | m_ExtremumSlip: 0.2 949 | m_ExtremumValue: 1 950 | m_AsymptoteSlip: 0.5 951 | m_AsymptoteValue: 0.75 952 | m_Stiffness: 1 953 | m_Enabled: 1 954 | --- !u!146 &146243083604045770 955 | WheelCollider: 956 | m_ObjectHideFlags: 1 957 | m_PrefabParentObject: {fileID: 0} 958 | m_PrefabInternal: {fileID: 100100000} 959 | m_GameObject: {fileID: 1918800944384862} 960 | m_Center: {x: 0, y: 0, z: 0} 961 | m_Radius: 0.3 962 | m_SuspensionSpring: 963 | spring: 2000 964 | damper: 50 965 | targetPosition: 0.5 966 | m_SuspensionDistance: 0.5 967 | m_ForceAppPointDistance: 0 968 | m_Mass: 20 969 | m_WheelDampingRate: 0.25 970 | m_ForwardFriction: 971 | m_ExtremumSlip: 0.4 972 | m_ExtremumValue: 1 973 | m_AsymptoteSlip: 0.8 974 | m_AsymptoteValue: 0.5 975 | m_Stiffness: 1 976 | m_SidewaysFriction: 977 | m_ExtremumSlip: 0.2 978 | m_ExtremumValue: 1 979 | m_AsymptoteSlip: 0.5 980 | m_AsymptoteValue: 0.75 981 | m_Stiffness: 1 982 | m_Enabled: 1 983 | --- !u!146 &146459148325226640 984 | WheelCollider: 985 | m_ObjectHideFlags: 1 986 | m_PrefabParentObject: {fileID: 0} 987 | m_PrefabInternal: {fileID: 100100000} 988 | m_GameObject: {fileID: 1781978629743726} 989 | m_Center: {x: 0, y: 0, z: 0} 990 | m_Radius: 0.3 991 | m_SuspensionSpring: 992 | spring: 2000 993 | damper: 50 994 | targetPosition: 0.5 995 | m_SuspensionDistance: 0.5 996 | m_ForceAppPointDistance: 0 997 | m_Mass: 20 998 | m_WheelDampingRate: 0.25 999 | m_ForwardFriction: 1000 | m_ExtremumSlip: 0.4 1001 | m_ExtremumValue: 1 1002 | m_AsymptoteSlip: 0.8 1003 | m_AsymptoteValue: 0.5 1004 | m_Stiffness: 1 1005 | m_SidewaysFriction: 1006 | m_ExtremumSlip: 0.2 1007 | m_ExtremumValue: 1 1008 | m_AsymptoteSlip: 0.5 1009 | m_AsymptoteValue: 0.75 1010 | m_Stiffness: 1 1011 | m_Enabled: 1 1012 | --- !u!146 &146630705370301870 1013 | WheelCollider: 1014 | m_ObjectHideFlags: 1 1015 | m_PrefabParentObject: {fileID: 0} 1016 | m_PrefabInternal: {fileID: 100100000} 1017 | m_GameObject: {fileID: 1387591994464268} 1018 | m_Center: {x: 0, y: 0, z: 0} 1019 | m_Radius: 0.3 1020 | m_SuspensionSpring: 1021 | spring: 2000 1022 | damper: 50 1023 | targetPosition: 0.5 1024 | m_SuspensionDistance: 0.5 1025 | m_ForceAppPointDistance: 0 1026 | m_Mass: 20 1027 | m_WheelDampingRate: 0.25 1028 | m_ForwardFriction: 1029 | m_ExtremumSlip: 0.4 1030 | m_ExtremumValue: 1 1031 | m_AsymptoteSlip: 0.8 1032 | m_AsymptoteValue: 0.5 1033 | m_Stiffness: 1 1034 | m_SidewaysFriction: 1035 | m_ExtremumSlip: 0.2 1036 | m_ExtremumValue: 1 1037 | m_AsymptoteSlip: 0.5 1038 | m_AsymptoteValue: 0.75 1039 | m_Stiffness: 1 1040 | m_Enabled: 1 1041 | --- !u!146 &146655064370980668 1042 | WheelCollider: 1043 | m_ObjectHideFlags: 1 1044 | m_PrefabParentObject: {fileID: 0} 1045 | m_PrefabInternal: {fileID: 100100000} 1046 | m_GameObject: {fileID: 1715293637878330} 1047 | m_Center: {x: 0, y: 0, z: 0} 1048 | m_Radius: 0.3 1049 | m_SuspensionSpring: 1050 | spring: 2000 1051 | damper: 50 1052 | targetPosition: 0.5 1053 | m_SuspensionDistance: 0.5 1054 | m_ForceAppPointDistance: 0 1055 | m_Mass: 20 1056 | m_WheelDampingRate: 0.25 1057 | m_ForwardFriction: 1058 | m_ExtremumSlip: 0.4 1059 | m_ExtremumValue: 1 1060 | m_AsymptoteSlip: 0.8 1061 | m_AsymptoteValue: 0.5 1062 | m_Stiffness: 1 1063 | m_SidewaysFriction: 1064 | m_ExtremumSlip: 0.2 1065 | m_ExtremumValue: 1 1066 | m_AsymptoteSlip: 0.5 1067 | m_AsymptoteValue: 0.75 1068 | m_Stiffness: 1 1069 | m_Enabled: 1 1070 | --- !u!146 &146672293839729794 1071 | WheelCollider: 1072 | m_ObjectHideFlags: 1 1073 | m_PrefabParentObject: {fileID: 0} 1074 | m_PrefabInternal: {fileID: 100100000} 1075 | m_GameObject: {fileID: 1546223360999614} 1076 | m_Center: {x: 0, y: 0, z: 0} 1077 | m_Radius: 0.3 1078 | m_SuspensionSpring: 1079 | spring: 2000 1080 | damper: 50 1081 | targetPosition: 0.5 1082 | m_SuspensionDistance: 0.5 1083 | m_ForceAppPointDistance: 0 1084 | m_Mass: 20 1085 | m_WheelDampingRate: 0.25 1086 | m_ForwardFriction: 1087 | m_ExtremumSlip: 0.4 1088 | m_ExtremumValue: 1 1089 | m_AsymptoteSlip: 0.8 1090 | m_AsymptoteValue: 0.5 1091 | m_Stiffness: 1 1092 | m_SidewaysFriction: 1093 | m_ExtremumSlip: 0.2 1094 | m_ExtremumValue: 1 1095 | m_AsymptoteSlip: 0.5 1096 | m_AsymptoteValue: 0.75 1097 | m_Stiffness: 1 1098 | m_Enabled: 1 1099 | --- !u!146 &146701613785498450 1100 | WheelCollider: 1101 | m_ObjectHideFlags: 1 1102 | m_PrefabParentObject: {fileID: 0} 1103 | m_PrefabInternal: {fileID: 100100000} 1104 | m_GameObject: {fileID: 1088646949538600} 1105 | m_Center: {x: 0, y: 0, z: 0} 1106 | m_Radius: 0.3 1107 | m_SuspensionSpring: 1108 | spring: 2000 1109 | damper: 50 1110 | targetPosition: 0.5 1111 | m_SuspensionDistance: 0.5 1112 | m_ForceAppPointDistance: 0 1113 | m_Mass: 20 1114 | m_WheelDampingRate: 0.25 1115 | m_ForwardFriction: 1116 | m_ExtremumSlip: 0.4 1117 | m_ExtremumValue: 1 1118 | m_AsymptoteSlip: 0.8 1119 | m_AsymptoteValue: 0.5 1120 | m_Stiffness: 1 1121 | m_SidewaysFriction: 1122 | m_ExtremumSlip: 0.2 1123 | m_ExtremumValue: 1 1124 | m_AsymptoteSlip: 0.5 1125 | m_AsymptoteValue: 0.75 1126 | m_Stiffness: 1 1127 | m_Enabled: 1 1128 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs/MagicSteeringTank.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1cba6dacd51aaa44ea11189f07ffdd39 3 | timeCreated: 1518880314 4 | licenseType: Free 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 100100000 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs/WheelDummy.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b61637a35ce89dd4f99a115cda7a1eff 3 | folderAsset: yes 4 | timeCreated: 1518880323 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs/WheelDummy/WheelModel.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_ParentPrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1181890427383218} 13 | m_IsPrefabParent: 1 14 | --- !u!1 &1181890427383218 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_PrefabParentObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 5 20 | m_Component: 21 | - component: {fileID: 4339269679154178} 22 | m_Layer: 0 23 | m_Name: WheelModel 24 | m_TagString: Untagged 25 | m_Icon: {fileID: 0} 26 | m_NavMeshLayer: 0 27 | m_StaticEditorFlags: 0 28 | m_IsActive: 1 29 | --- !u!1 &1310184239709266 30 | GameObject: 31 | m_ObjectHideFlags: 0 32 | m_PrefabParentObject: {fileID: 0} 33 | m_PrefabInternal: {fileID: 100100000} 34 | serializedVersion: 5 35 | m_Component: 36 | - component: {fileID: 4240331356037960} 37 | - component: {fileID: 33277872509087556} 38 | - component: {fileID: 23272189403454712} 39 | m_Layer: 0 40 | m_Name: Cylinder 41 | m_TagString: Untagged 42 | m_Icon: {fileID: 0} 43 | m_NavMeshLayer: 0 44 | m_StaticEditorFlags: 0 45 | m_IsActive: 1 46 | --- !u!4 &4240331356037960 47 | Transform: 48 | m_ObjectHideFlags: 1 49 | m_PrefabParentObject: {fileID: 0} 50 | m_PrefabInternal: {fileID: 100100000} 51 | m_GameObject: {fileID: 1310184239709266} 52 | m_LocalRotation: {x: -0, y: -0, z: -0.70710576, w: 0.70710784} 53 | m_LocalPosition: {x: 0.0000054836, y: -0.00000011920929, z: 0} 54 | m_LocalScale: {x: 1, y: 0.13047686, z: 1} 55 | m_Children: [] 56 | m_Father: {fileID: 4339269679154178} 57 | m_RootOrder: 0 58 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90.00001} 59 | --- !u!4 &4339269679154178 60 | Transform: 61 | m_ObjectHideFlags: 1 62 | m_PrefabParentObject: {fileID: 0} 63 | m_PrefabInternal: {fileID: 100100000} 64 | m_GameObject: {fileID: 1181890427383218} 65 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 66 | m_LocalPosition: {x: 0, y: 0, z: 0} 67 | m_LocalScale: {x: 1, y: 1, z: 1} 68 | m_Children: 69 | - {fileID: 4240331356037960} 70 | m_Father: {fileID: 0} 71 | m_RootOrder: 0 72 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 73 | --- !u!23 &23272189403454712 74 | MeshRenderer: 75 | m_ObjectHideFlags: 1 76 | m_PrefabParentObject: {fileID: 0} 77 | m_PrefabInternal: {fileID: 100100000} 78 | m_GameObject: {fileID: 1310184239709266} 79 | m_Enabled: 1 80 | m_CastShadows: 1 81 | m_ReceiveShadows: 1 82 | m_DynamicOccludee: 1 83 | m_MotionVectors: 1 84 | m_LightProbeUsage: 1 85 | m_ReflectionProbeUsage: 1 86 | m_Materials: 87 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} 88 | m_StaticBatchInfo: 89 | firstSubMesh: 0 90 | subMeshCount: 0 91 | m_StaticBatchRoot: {fileID: 0} 92 | m_ProbeAnchor: {fileID: 0} 93 | m_LightProbeVolumeOverride: {fileID: 0} 94 | m_ScaleInLightmap: 1 95 | m_PreserveUVs: 1 96 | m_IgnoreNormalsForChartDetection: 0 97 | m_ImportantGI: 0 98 | m_StitchLightmapSeams: 0 99 | m_SelectedEditorRenderState: 3 100 | m_MinimumChartSize: 4 101 | m_AutoUVMaxDistance: 0.5 102 | m_AutoUVMaxAngle: 89 103 | m_LightmapParameters: {fileID: 0} 104 | m_SortingLayerID: 0 105 | m_SortingLayer: 0 106 | m_SortingOrder: 0 107 | --- !u!33 &33277872509087556 108 | MeshFilter: 109 | m_ObjectHideFlags: 1 110 | m_PrefabParentObject: {fileID: 0} 111 | m_PrefabInternal: {fileID: 100100000} 112 | m_GameObject: {fileID: 1310184239709266} 113 | m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} 114 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Prefabs/WheelDummy/WheelModel.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 07216a712257a1e459f116450fda489c 3 | timeCreated: 1518757253 4 | licenseType: Free 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 100100000 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c4cd4ddf4c1c3464290b681301991675 3 | folderAsset: yes 4 | timeCreated: 1518754610 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Scene/TankDriving.unity: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!29 &1 4 | OcclusionCullingSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_OcclusionBakeSettings: 8 | smallestOccluder: 5 9 | smallestHole: 0.25 10 | backfaceThreshold: 100 11 | m_SceneGUID: 00000000000000000000000000000000 12 | m_OcclusionCullingData: {fileID: 0} 13 | --- !u!104 &2 14 | RenderSettings: 15 | m_ObjectHideFlags: 0 16 | serializedVersion: 8 17 | m_Fog: 0 18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} 19 | m_FogMode: 3 20 | m_FogDensity: 0.01 21 | m_LinearFogStart: 0 22 | m_LinearFogEnd: 300 23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} 24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} 25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} 26 | m_AmbientIntensity: 1 27 | m_AmbientMode: 0 28 | m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} 29 | m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} 30 | m_HaloStrength: 0.5 31 | m_FlareStrength: 1 32 | m_FlareFadeSpeed: 3 33 | m_HaloTexture: {fileID: 0} 34 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} 35 | m_DefaultReflectionMode: 0 36 | m_DefaultReflectionResolution: 128 37 | m_ReflectionBounces: 1 38 | m_ReflectionIntensity: 1 39 | m_CustomReflection: {fileID: 0} 40 | m_Sun: {fileID: 658072073} 41 | m_IndirectSpecularColor: {r: 0.16564684, g: 0.19468245, b: 0.22249216, a: 1} 42 | --- !u!157 &3 43 | LightmapSettings: 44 | m_ObjectHideFlags: 0 45 | serializedVersion: 11 46 | m_GIWorkflowMode: 0 47 | m_GISettings: 48 | serializedVersion: 2 49 | m_BounceScale: 1 50 | m_IndirectOutputScale: 1 51 | m_AlbedoBoost: 1 52 | m_TemporalCoherenceThreshold: 1 53 | m_EnvironmentLightingMode: 0 54 | m_EnableBakedLightmaps: 0 55 | m_EnableRealtimeLightmaps: 0 56 | m_LightmapEditorSettings: 57 | serializedVersion: 9 58 | m_Resolution: 2 59 | m_BakeResolution: 40 60 | m_TextureWidth: 1024 61 | m_TextureHeight: 1024 62 | m_AO: 0 63 | m_AOMaxDistance: 1 64 | m_CompAOExponent: 1 65 | m_CompAOExponentDirect: 0 66 | m_Padding: 2 67 | m_LightmapParameters: {fileID: 0} 68 | m_LightmapsBakeMode: 1 69 | m_TextureCompression: 1 70 | m_FinalGather: 0 71 | m_FinalGatherFiltering: 1 72 | m_FinalGatherRayCount: 256 73 | m_ReflectionCompression: 2 74 | m_MixedBakeMode: 2 75 | m_BakeBackend: 0 76 | m_PVRSampling: 1 77 | m_PVRDirectSampleCount: 32 78 | m_PVRSampleCount: 500 79 | m_PVRBounces: 2 80 | m_PVRFilterTypeDirect: 0 81 | m_PVRFilterTypeIndirect: 0 82 | m_PVRFilterTypeAO: 0 83 | m_PVRFilteringMode: 1 84 | m_PVRCulling: 1 85 | m_PVRFilteringGaussRadiusDirect: 1 86 | m_PVRFilteringGaussRadiusIndirect: 5 87 | m_PVRFilteringGaussRadiusAO: 2 88 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5 89 | m_PVRFilteringAtrousPositionSigmaIndirect: 2 90 | m_PVRFilteringAtrousPositionSigmaAO: 1 91 | m_ShowResolutionOverlay: 1 92 | m_LightingDataAsset: {fileID: 0} 93 | m_UseShadowmask: 1 94 | --- !u!196 &4 95 | NavMeshSettings: 96 | serializedVersion: 2 97 | m_ObjectHideFlags: 0 98 | m_BuildSettings: 99 | serializedVersion: 2 100 | agentTypeID: 0 101 | agentRadius: 0.5 102 | agentHeight: 2 103 | agentSlope: 45 104 | agentClimb: 0.4 105 | ledgeDropHeight: 0 106 | maxJumpAcrossDistance: 0 107 | minRegionArea: 2 108 | manualCellSize: 0 109 | cellSize: 0.16666667 110 | manualTileSize: 0 111 | tileSize: 256 112 | accuratePlacement: 0 113 | debug: 114 | m_Flags: 0 115 | m_NavMeshData: {fileID: 0} 116 | --- !u!1 &304711491 117 | GameObject: 118 | m_ObjectHideFlags: 0 119 | m_PrefabParentObject: {fileID: 0} 120 | m_PrefabInternal: {fileID: 0} 121 | serializedVersion: 5 122 | m_Component: 123 | - component: {fileID: 304711492} 124 | - component: {fileID: 304711494} 125 | - component: {fileID: 304711493} 126 | m_Layer: 0 127 | m_Name: Terrain 128 | m_TagString: Untagged 129 | m_Icon: {fileID: 0} 130 | m_NavMeshLayer: 0 131 | m_StaticEditorFlags: 4294967295 132 | m_IsActive: 1 133 | --- !u!4 &304711492 134 | Transform: 135 | m_ObjectHideFlags: 0 136 | m_PrefabParentObject: {fileID: 0} 137 | m_PrefabInternal: {fileID: 0} 138 | m_GameObject: {fileID: 304711491} 139 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 140 | m_LocalPosition: {x: -250, y: -4.56, z: -250} 141 | m_LocalScale: {x: 1, y: 1, z: 1} 142 | m_Children: [] 143 | m_Father: {fileID: 664757222} 144 | m_RootOrder: 0 145 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 146 | --- !u!154 &304711493 147 | TerrainCollider: 148 | m_ObjectHideFlags: 0 149 | m_PrefabParentObject: {fileID: 0} 150 | m_PrefabInternal: {fileID: 0} 151 | m_GameObject: {fileID: 304711491} 152 | m_Material: {fileID: 0} 153 | m_Enabled: 1 154 | m_TerrainData: {fileID: 15600000, guid: da5617ca1ef2ed444a256826be131e5b, type: 2} 155 | m_EnableTreeColliders: 1 156 | --- !u!218 &304711494 157 | Terrain: 158 | m_ObjectHideFlags: 0 159 | m_PrefabParentObject: {fileID: 0} 160 | m_PrefabInternal: {fileID: 0} 161 | m_GameObject: {fileID: 304711491} 162 | m_Enabled: 1 163 | serializedVersion: 3 164 | m_TerrainData: {fileID: 15600000, guid: da5617ca1ef2ed444a256826be131e5b, type: 2} 165 | m_TreeDistance: 2000 166 | m_TreeBillboardDistance: 50 167 | m_TreeCrossFadeLength: 5 168 | m_TreeMaximumFullLODCount: 50 169 | m_DetailObjectDistance: 80 170 | m_DetailObjectDensity: 1 171 | m_HeightmapPixelError: 5 172 | m_SplatMapDistance: 1000 173 | m_HeightmapMaximumLOD: 0 174 | m_CastShadows: 1 175 | m_DrawHeightmap: 1 176 | m_DrawTreesAndFoliage: 1 177 | m_ReflectionProbeUsage: 1 178 | m_MaterialType: 0 179 | m_LegacySpecular: 180 | serializedVersion: 2 181 | rgba: 4286545791 182 | m_LegacyShininess: 0.078125 183 | m_MaterialTemplate: {fileID: 0} 184 | m_BakeLightProbesForTrees: 1 185 | m_ScaleInLightmap: 0.0512 186 | m_LightmapParameters: {fileID: 15203, guid: 0000000000000000f000000000000000, type: 0} 187 | --- !u!1001 &419782489 188 | Prefab: 189 | m_ObjectHideFlags: 0 190 | serializedVersion: 2 191 | m_Modification: 192 | m_TransformParent: {fileID: 0} 193 | m_Modifications: 194 | - target: {fileID: 4985708407099390, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 195 | propertyPath: m_LocalPosition.x 196 | value: 0 197 | objectReference: {fileID: 0} 198 | - target: {fileID: 4985708407099390, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 199 | propertyPath: m_LocalPosition.y 200 | value: 5.21 201 | objectReference: {fileID: 0} 202 | - target: {fileID: 4985708407099390, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 203 | propertyPath: m_LocalPosition.z 204 | value: 0 205 | objectReference: {fileID: 0} 206 | - target: {fileID: 4985708407099390, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 207 | propertyPath: m_LocalRotation.x 208 | value: 0 209 | objectReference: {fileID: 0} 210 | - target: {fileID: 4985708407099390, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 211 | propertyPath: m_LocalRotation.y 212 | value: 0 213 | objectReference: {fileID: 0} 214 | - target: {fileID: 4985708407099390, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 215 | propertyPath: m_LocalRotation.z 216 | value: 0 217 | objectReference: {fileID: 0} 218 | - target: {fileID: 4985708407099390, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 219 | propertyPath: m_LocalRotation.w 220 | value: 1 221 | objectReference: {fileID: 0} 222 | - target: {fileID: 4985708407099390, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 223 | propertyPath: m_RootOrder 224 | value: 2 225 | objectReference: {fileID: 0} 226 | - target: {fileID: 1431859253861506, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 227 | propertyPath: m_IsActive 228 | value: 0 229 | objectReference: {fileID: 0} 230 | m_RemovedComponents: [] 231 | m_ParentPrefab: {fileID: 100100000, guid: 4fd68192bf694944598fdc064cbbc177, type: 2} 232 | m_IsPrefabParent: 0 233 | --- !u!1001 &426215973 234 | Prefab: 235 | m_ObjectHideFlags: 0 236 | serializedVersion: 2 237 | m_Modification: 238 | m_TransformParent: {fileID: 0} 239 | m_Modifications: 240 | - target: {fileID: 4444740319727168, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 241 | propertyPath: m_LocalPosition.x 242 | value: 0 243 | objectReference: {fileID: 0} 244 | - target: {fileID: 4444740319727168, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 245 | propertyPath: m_LocalPosition.y 246 | value: 5.21 247 | objectReference: {fileID: 0} 248 | - target: {fileID: 4444740319727168, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 249 | propertyPath: m_LocalPosition.z 250 | value: 0 251 | objectReference: {fileID: 0} 252 | - target: {fileID: 4444740319727168, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 253 | propertyPath: m_LocalRotation.x 254 | value: 0 255 | objectReference: {fileID: 0} 256 | - target: {fileID: 4444740319727168, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 257 | propertyPath: m_LocalRotation.y 258 | value: 0 259 | objectReference: {fileID: 0} 260 | - target: {fileID: 4444740319727168, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 261 | propertyPath: m_LocalRotation.z 262 | value: 0 263 | objectReference: {fileID: 0} 264 | - target: {fileID: 4444740319727168, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 265 | propertyPath: m_LocalRotation.w 266 | value: 1 267 | objectReference: {fileID: 0} 268 | - target: {fileID: 4444740319727168, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 269 | propertyPath: m_RootOrder 270 | value: 4 271 | objectReference: {fileID: 0} 272 | - target: {fileID: 1767456522786174, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 273 | propertyPath: m_IsActive 274 | value: 1 275 | objectReference: {fileID: 0} 276 | m_RemovedComponents: [] 277 | m_ParentPrefab: {fileID: 100100000, guid: 1cba6dacd51aaa44ea11189f07ffdd39, type: 2} 278 | m_IsPrefabParent: 0 279 | --- !u!1 &658072072 280 | GameObject: 281 | m_ObjectHideFlags: 0 282 | m_PrefabParentObject: {fileID: 0} 283 | m_PrefabInternal: {fileID: 0} 284 | serializedVersion: 5 285 | m_Component: 286 | - component: {fileID: 658072074} 287 | - component: {fileID: 658072073} 288 | m_Layer: 0 289 | m_Name: Directional Light 290 | m_TagString: Untagged 291 | m_Icon: {fileID: 0} 292 | m_NavMeshLayer: 0 293 | m_StaticEditorFlags: 0 294 | m_IsActive: 1 295 | --- !u!108 &658072073 296 | Light: 297 | m_ObjectHideFlags: 0 298 | m_PrefabParentObject: {fileID: 0} 299 | m_PrefabInternal: {fileID: 0} 300 | m_GameObject: {fileID: 658072072} 301 | m_Enabled: 1 302 | serializedVersion: 8 303 | m_Type: 1 304 | m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} 305 | m_Intensity: 0.94 306 | m_Range: 10 307 | m_SpotAngle: 30 308 | m_CookieSize: 10 309 | m_Shadows: 310 | m_Type: 2 311 | m_Resolution: -1 312 | m_CustomResolution: -1 313 | m_Strength: 1 314 | m_Bias: 0.05 315 | m_NormalBias: 0.4 316 | m_NearPlane: 0.2 317 | m_Cookie: {fileID: 0} 318 | m_DrawHalo: 0 319 | m_Flare: {fileID: 0} 320 | m_RenderMode: 0 321 | m_CullingMask: 322 | serializedVersion: 2 323 | m_Bits: 4294967295 324 | m_Lightmapping: 4 325 | m_AreaSize: {x: 1, y: 1} 326 | m_BounceIntensity: 1 327 | m_ColorTemperature: 6570 328 | m_UseColorTemperature: 0 329 | m_ShadowRadius: 0 330 | m_ShadowAngle: 0 331 | --- !u!4 &658072074 332 | Transform: 333 | m_ObjectHideFlags: 0 334 | m_PrefabParentObject: {fileID: 0} 335 | m_PrefabInternal: {fileID: 0} 336 | m_GameObject: {fileID: 658072072} 337 | m_LocalRotation: {x: 0.2417998, y: -0.40397754, z: -0.33181727, w: 0.81745476} 338 | m_LocalPosition: {x: 0, y: 3, z: 0} 339 | m_LocalScale: {x: 1, y: 1, z: 1} 340 | m_Children: [] 341 | m_Father: {fileID: 0} 342 | m_RootOrder: 0 343 | m_LocalEulerAnglesHint: {x: 7.3090005, y: -55.859, z: -48.065002} 344 | --- !u!1 &664757221 345 | GameObject: 346 | m_ObjectHideFlags: 0 347 | m_PrefabParentObject: {fileID: 0} 348 | m_PrefabInternal: {fileID: 0} 349 | serializedVersion: 5 350 | m_Component: 351 | - component: {fileID: 664757222} 352 | m_Layer: 0 353 | m_Name: Scenery 354 | m_TagString: Untagged 355 | m_Icon: {fileID: 0} 356 | m_NavMeshLayer: 0 357 | m_StaticEditorFlags: 4294967295 358 | m_IsActive: 1 359 | --- !u!4 &664757222 360 | Transform: 361 | m_ObjectHideFlags: 0 362 | m_PrefabParentObject: {fileID: 0} 363 | m_PrefabInternal: {fileID: 0} 364 | m_GameObject: {fileID: 664757221} 365 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 366 | m_LocalPosition: {x: 0, y: 0, z: 0} 367 | m_LocalScale: {x: 1, y: 1, z: 1} 368 | m_Children: 369 | - {fileID: 304711492} 370 | m_Father: {fileID: 0} 371 | m_RootOrder: 1 372 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 373 | --- !u!1001 &1633276058 374 | Prefab: 375 | m_ObjectHideFlags: 0 376 | serializedVersion: 2 377 | m_Modification: 378 | m_TransformParent: {fileID: 0} 379 | m_Modifications: 380 | - target: {fileID: 4318392802981672, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 381 | propertyPath: m_LocalPosition.x 382 | value: 0 383 | objectReference: {fileID: 0} 384 | - target: {fileID: 4318392802981672, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 385 | propertyPath: m_LocalPosition.y 386 | value: 5.21 387 | objectReference: {fileID: 0} 388 | - target: {fileID: 4318392802981672, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 389 | propertyPath: m_LocalPosition.z 390 | value: 0 391 | objectReference: {fileID: 0} 392 | - target: {fileID: 4318392802981672, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 393 | propertyPath: m_LocalRotation.x 394 | value: 0 395 | objectReference: {fileID: 0} 396 | - target: {fileID: 4318392802981672, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 397 | propertyPath: m_LocalRotation.y 398 | value: 0 399 | objectReference: {fileID: 0} 400 | - target: {fileID: 4318392802981672, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 401 | propertyPath: m_LocalRotation.z 402 | value: 0 403 | objectReference: {fileID: 0} 404 | - target: {fileID: 4318392802981672, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 405 | propertyPath: m_LocalRotation.w 406 | value: 1 407 | objectReference: {fileID: 0} 408 | - target: {fileID: 4318392802981672, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 409 | propertyPath: m_RootOrder 410 | value: 3 411 | objectReference: {fileID: 0} 412 | - target: {fileID: 1234516292667460, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 413 | propertyPath: m_IsActive 414 | value: 0 415 | objectReference: {fileID: 0} 416 | m_RemovedComponents: [] 417 | m_ParentPrefab: {fileID: 100100000, guid: 834ebc2433ddbd646a7672f382e56101, type: 2} 418 | m_IsPrefabParent: 0 419 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Scene/TankDriving.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cd6c9bee6831ca2489ae943aafb8b192 3 | timeCreated: 1518754610 4 | licenseType: Free 5 | DefaultImporter: 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b6b73e6f8ed312c43869728de438d604 3 | folderAsset: yes 4 | timeCreated: 1518755209 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Scripts/FreeCamera.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class FreeCamera : MonoBehaviour 4 | { 5 | public bool useFixedUpdate = false; 6 | 7 | public bool invert = true; 8 | 9 | public float sensitivity = 20f; 10 | 11 | public float speed = 20f; 12 | public float modSpeed = 60f; 13 | public float zoomFov = 20.0f; 14 | 15 | public bool visible = true; 16 | 17 | private Camera cam; 18 | 19 | private float shift = 1f; 20 | private float lastX, lastY = 0f; 21 | private float x, y; 22 | private float startingFov; 23 | 24 | private bool useModSpeed = false; 25 | 26 | private void Start() 27 | { 28 | cam = GetComponent(); 29 | startingFov = cam.fieldOfView; 30 | } 31 | 32 | private void Update() 33 | { 34 | if (Input.GetMouseButtonDown(0)) 35 | { 36 | visible = !visible; 37 | 38 | if (visible) 39 | { 40 | Cursor.lockState = CursorLockMode.None; 41 | Cursor.visible = true; 42 | } 43 | else 44 | { 45 | Cursor.lockState = CursorLockMode.Locked; 46 | Cursor.visible = false; 47 | } 48 | } 49 | 50 | if (Input.GetMouseButtonDown(1)) 51 | { 52 | useModSpeed = !useModSpeed; 53 | } 54 | 55 | if (cam != null) 56 | { 57 | float targetFov = startingFov; 58 | if (Input.GetMouseButton(2)) 59 | targetFov = zoomFov; 60 | 61 | cam.fieldOfView = Mathf.Lerp(cam.fieldOfView, targetFov, 10.0f * Time.deltaTime); 62 | } 63 | 64 | if (!useFixedUpdate) 65 | MouseLookMovement(); 66 | } 67 | 68 | private void FixedUpdate() 69 | { 70 | if (useFixedUpdate) 71 | MouseLookMovement(); 72 | } 73 | 74 | private void MouseLookMovement() 75 | { 76 | float trueSpeed = (useModSpeed) ? modSpeed : speed; 77 | 78 | if (!visible) 79 | { 80 | x = Input.GetAxis("Mouse X") + lastX * 0.9f; 81 | 82 | if (invert) 83 | y = -Input.GetAxis("Mouse Y") + lastY * 0.9f; 84 | else 85 | y = Input.GetAxis("Mouse Y") + lastY * 0.9f; 86 | 87 | float targetShift = (Input.GetKey(KeyCode.LeftShift)) ? 2f : 1f; 88 | shift = Mathf.Lerp(shift, targetShift, trueSpeed * Time.deltaTime); 89 | 90 | lastX = x; 91 | lastY = y; 92 | 93 | transform.Rotate(sensitivity * y * Time.deltaTime, sensitivity * x * Time.deltaTime, 0f); 94 | } 95 | 96 | Vector3 upright = transform.eulerAngles; 97 | upright.z = 0f; 98 | transform.eulerAngles = upright; 99 | 100 | transform.Translate(trueSpeed * shift * Input.GetAxis("Horizontal") * Time.deltaTime, 101 | 0f, 102 | trueSpeed * shift * Input.GetAxis("Vertical") * Time.deltaTime); 103 | } 104 | } -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Scripts/FreeCamera.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8eb09424443e6d64fb2c827645780888 3 | timeCreated: 1484501701 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Scripts/PhysicsTank.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections.Generic; 3 | 4 | [RequireComponent(typeof(Rigidbody))] 5 | public class PhysicsTank : MonoBehaviour 6 | { 7 | [Tooltip("Top speed of the tank in m/s.")] 8 | public float topSpeed = 10.0f; 9 | [Tooltip("For tanks with front/rear wheels defined, this is how far those wheels turn.")] 10 | public float steeringAngle = 30.0f; 11 | [Tooltip("Power of any wheel listed under powered wheels.")] 12 | public float motorTorque = 10.0f; 13 | [Tooltip("Turn rate that is \"magically\" applied regardless of what the physics state of the tank is.")] 14 | public float magicTurnRate = 45.0f; 15 | 16 | [Tooltip("Assign this to override the center of mass. This can be useful to make the tank more stable and prevent it from flipping over. \n\nNOTE: THIS TRANSFORM MUST BE A CHILD OF THE ROOT TANK OBJECT.")] 17 | public Transform centerOfMass; 18 | 19 | [Tooltip("This prefab will be instantiated as a child of each wheel object and mimic the position/rotation of that wheel. If the prefab has a diameter of 1m, it will scale correct to match the wheel radius.")] 20 | public Transform wheelModelPrefab; 21 | 22 | [Tooltip("Front wheels used for steering by rotating the wheels left/right.")] 23 | public WheelCollider[] front; 24 | [Tooltip("Rear wheels for steering by rotating the wheels left/right.")] 25 | public WheelCollider[] rear; 26 | [Tooltip("Wheels that provide power and move the tank forwards/reverse.")] 27 | public WheelCollider[] poweredWheels; 28 | 29 | [Tooltip("Wheels on the left side of the tank that are used for differential steering.")] 30 | public WheelCollider[] left; 31 | [Tooltip("Wheels on the right side of the tank that are used for differential steering.")] 32 | public WheelCollider[] right; 33 | 34 | private Rigidbody rigid; 35 | private float forwardInput, turnInput = 0.0f; 36 | 37 | // Used to associate a wheel with a one of the model prefabs. 38 | private Dictionary WheelToTransformMap; 39 | 40 | private void Awake() 41 | { 42 | rigid = GetComponent(); 43 | WheelToTransformMap = new Dictionary(poweredWheels.Length); 44 | } 45 | 46 | private void Start() 47 | { 48 | // Override center of mass when a reference is passed in. 49 | if (centerOfMass != null) 50 | { 51 | if (centerOfMass.parent == transform) 52 | rigid.centerOfMass = centerOfMass.localPosition; 53 | else 54 | Debug.LogWarning(name + ": PhysicsTank cannot override center of mass when " + centerOfMass.name + " is not a child of " + transform.name); 55 | 56 | } 57 | 58 | if (wheelModelPrefab != null) 59 | { 60 | InstantiateWheelModelsFromPrefab(front); 61 | InstantiateWheelModelsFromPrefab(rear); 62 | InstantiateWheelModelsFromPrefab(poweredWheels); 63 | InstantiateWheelModelsFromPrefab(left); 64 | InstantiateWheelModelsFromPrefab(right); 65 | } 66 | } 67 | 68 | private void Update() 69 | { 70 | // Capture input in the Update, not the FixedUpdate! 71 | forwardInput = Input.GetAxis("Vertical"); 72 | turnInput = Input.GetAxis("Horizontal"); 73 | } 74 | 75 | private void FixedUpdate() 76 | { 77 | RunPoweredWheels(); 78 | RunDifferentialSteeringWheels(); 79 | RunFourWheelSteeringWheels(); 80 | RunMagicRotation(); 81 | } 82 | 83 | /// 84 | /// POWERED WHEELS 85 | /// Sets the motor torque of the wheel based on forward input. This moves 86 | /// the tank forwards and backwards. 87 | /// 88 | private void RunPoweredWheels() 89 | { 90 | foreach (WheelCollider wheel in poweredWheels) 91 | { 92 | // To create a top speed for the tank, the motor torque just 93 | // cuts out when the tank starts moving fast enough. 94 | if (rigid.velocity.magnitude <= topSpeed) 95 | wheel.motorTorque = forwardInput * motorTorque; 96 | else 97 | wheel.motorTorque = 0.0f; 98 | 99 | // Update wheel mesh positions to match the physics wheels. 100 | if (wheelModelPrefab != null && WheelToTransformMap.ContainsKey(wheel)) 101 | { 102 | Vector3 position; 103 | Quaternion rotation; 104 | wheel.GetWorldPose(out position, out rotation); 105 | WheelToTransformMap[wheel].position = position; 106 | WheelToTransformMap[wheel].rotation = rotation; 107 | } 108 | } 109 | } 110 | 111 | /// 112 | /// DIFFERENTIAL STEERING 113 | /// When turning, the left/right wheel colliders will apply an extra 114 | /// torque in opposing directions and rotate the tank. 115 | /// 116 | /// Note: Wheel sideways friction can easily prevent the tank from 117 | /// rotating when this is done. Lowering side friction for wheels that 118 | /// don't need it (i.e., wheels away from the center) can mitigate this. 119 | /// 120 | private void RunDifferentialSteeringWheels() 121 | { 122 | foreach (WheelCollider wheel in left) 123 | wheel.motorTorque += motorTorque * turnInput; 124 | foreach (WheelCollider wheel in right) 125 | wheel.motorTorque -= motorTorque * turnInput; 126 | } 127 | 128 | /// 129 | /// FOUR WHEEL STEERING 130 | /// Wheels assigned as front and rear wheels rotate to turn the tank. 131 | /// This works great in motion, but will not turn the tank when standing 132 | /// still. 133 | /// 134 | /// Note: If only one set of wheels is filled out, only that set will 135 | /// rotate. 136 | /// 137 | private void RunFourWheelSteeringWheels() 138 | { 139 | foreach (WheelCollider wheel in front) 140 | wheel.steerAngle = turnInput * steeringAngle; 141 | foreach (WheelCollider wheel in rear) 142 | wheel.steerAngle = -turnInput * steeringAngle; 143 | } 144 | 145 | /// 146 | /// MAGIC ROTATION 147 | /// Simply rotates the Rigidbody itself using a predefined rotation rate 148 | /// and turning input. This has no connection to physics in any way, but 149 | /// is very controllable and predictable. 150 | /// 151 | /// Note: Since there is no connection to the physics, the tank could 152 | /// turn even if it wasn't on the ground. A simple way to counter this 153 | /// would be to check how many wheels are on the ground and then reduce 154 | /// the turning speed depending on how many are touching the ground. 155 | /// 156 | private void RunMagicRotation() 157 | { 158 | Quaternion magicRotation = transform.rotation * Quaternion.AngleAxis(magicTurnRate * turnInput * Time.deltaTime, transform.up); 159 | rigid.MoveRotation(magicRotation); 160 | } 161 | 162 | /// 163 | /// Instantiates wheel model prefabs on each of the wheels and moves 164 | /// them to match the physics wheels. 165 | /// 166 | /// 167 | private void InstantiateWheelModelsFromPrefab(WheelCollider[] wheels) 168 | { 169 | foreach (WheelCollider wheel in wheels) 170 | { 171 | // Don't double instantiate wheels. Check to make sure that this wheel doesn't already 172 | // have a model before instantiating one. 173 | if (WheelToTransformMap.ContainsKey(wheel) == false) 174 | { 175 | Transform temp = Instantiate(wheelModelPrefab, wheel.transform, false); 176 | 177 | // Scale the model prefab to match the radius. (Assumes prefab has diameter of 1m.) 178 | temp.localScale = Vector3.one * wheel.radius * 2.0f; 179 | WheelToTransformMap.Add(wheel, temp); 180 | } 181 | } 182 | } 183 | } 184 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Scripts/PhysicsTank.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d84f955e93eae344b8af410d738b87d 3 | timeCreated: 1518755220 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: 9 | - centerOfMass: {instanceID: 0} 10 | - wheelModelPrefab: {fileID: 4339269679154178, guid: 07216a712257a1e459f116450fda489c, 11 | type: 2} 12 | executionOrder: 0 13 | icon: {instanceID: 0} 14 | userData: 15 | assetBundleName: 16 | assetBundleVariant: 17 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Terrain.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08d6a1e60d9431246853a8ea5f67aa55 3 | folderAsset: yes 4 | timeCreated: 1518758773 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Terrain/TankDrivingTerrain.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brihernandez/PhysicsTankExample/4d8290ead56d98a9351ad6310f391b29b5a4959c/Assets/PhysicsTankExample/Terrain/TankDrivingTerrain.asset -------------------------------------------------------------------------------- /Assets/PhysicsTankExample/Terrain/TankDrivingTerrain.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: da5617ca1ef2ed444a256826be131e5b 3 | timeCreated: 1518755653 4 | licenseType: Free 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 15600000 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 brihernandez 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /PhysicsTankExample.unitypackage: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brihernandez/PhysicsTankExample/4d8290ead56d98a9351ad6310f391b29b5a4959c/PhysicsTankExample.unitypackage -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | Doppler Factor: 1 9 | Default Speaker Mode: 2 10 | m_SampleRate: 0 11 | m_DSPBufferSize: 0 12 | m_VirtualVoiceCount: 512 13 | m_RealVoiceCount: 32 14 | m_SpatializerPlugin: 15 | m_AmbisonicDecoderPlugin: 16 | m_DisableAudio: 0 17 | m_VirtualizeEffects: 1 18 | -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 7 7 | m_Gravity: {x: 0, y: -9.8, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 6 13 | m_DefaultSolverVelocityIterations: 1 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_ClothInterCollisionDistance: 0 18 | m_ClothInterCollisionStiffness: 0 19 | m_ContactsGeneration: 1 20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 21 | m_AutoSimulation: 1 22 | m_AutoSyncTransforms: 1 23 | m_ClothInterCollisionSettingsToggle: 0 24 | m_ContactPairsMode: 0 25 | m_BroadphaseType: 0 26 | m_WorldBounds: 27 | m_Center: {x: 0, y: 0, z: 0} 28 | m_Extent: {x: 250, y: 250, z: 250} 29 | m_WorldSubdivisions: 8 30 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 7 7 | m_ExternalVersionControlSupport: Hidden Meta Files 8 | m_SerializationMode: 2 9 | m_LineEndingsForNewScripts: 2 10 | m_DefaultBehaviorMode: 0 11 | m_SpritePackerMode: 0 12 | m_SpritePackerPaddingPower: 1 13 | m_EtcTextureCompressorBehavior: 1 14 | m_EtcTextureFastCompressor: 1 15 | m_EtcTextureNormalCompressor: 2 16 | m_EtcTextureBestCompressor: 4 17 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;rsp 18 | m_ProjectGenerationRootNamespace: 19 | m_UserGeneratedProjectSuffix: 20 | m_CollabEditorSettings: 21 | inProgressEnabled: 1 22 | -------------------------------------------------------------------------------- /ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!30 &1 4 | GraphicsSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 12 7 | m_Deferred: 8 | m_Mode: 1 9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} 10 | m_DeferredReflections: 11 | m_Mode: 1 12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} 13 | m_ScreenSpaceShadows: 14 | m_Mode: 1 15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} 16 | m_LegacyDeferred: 17 | m_Mode: 1 18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} 19 | m_DepthNormals: 20 | m_Mode: 1 21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} 22 | m_MotionVectors: 23 | m_Mode: 1 24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} 25 | m_LightHalo: 26 | m_Mode: 1 27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} 28 | m_LensFlare: 29 | m_Mode: 1 30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} 31 | m_AlwaysIncludedShaders: 32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} 33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} 34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} 35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} 36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} 37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} 38 | m_PreloadedShaders: [] 39 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, 40 | type: 0} 41 | m_CustomRenderPipeline: {fileID: 0} 42 | m_TransparencySortMode: 0 43 | m_TransparencySortAxis: {x: 0, y: 0, z: 1} 44 | m_DefaultRenderingPath: 1 45 | m_DefaultMobileRenderingPath: 1 46 | m_TierSettings: [] 47 | m_LightmapStripping: 0 48 | m_FogStripping: 0 49 | m_InstancingStripping: 0 50 | m_LightmapKeepPlain: 1 51 | m_LightmapKeepDirCombined: 1 52 | m_LightmapKeepDynamicPlain: 1 53 | m_LightmapKeepDynamicDirCombined: 1 54 | m_LightmapKeepShadowMask: 1 55 | m_LightmapKeepSubtractive: 1 56 | m_FogKeepLinear: 1 57 | m_FogKeepExp: 1 58 | m_FogKeepExp2: 1 59 | m_AlbedoSwatchInfos: [] 60 | m_LightsUseLinearIntensity: 0 61 | m_LightsUseColorTemperature: 0 62 | -------------------------------------------------------------------------------- /ProjectSettings/InputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!13 &1 4 | InputManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Axes: 8 | - serializedVersion: 3 9 | m_Name: Horizontal 10 | descriptiveName: 11 | descriptiveNegativeName: 12 | negativeButton: left 13 | positiveButton: right 14 | altNegativeButton: a 15 | altPositiveButton: d 16 | gravity: 3 17 | dead: 0.001 18 | sensitivity: 3 19 | snap: 1 20 | invert: 0 21 | type: 0 22 | axis: 0 23 | joyNum: 0 24 | - serializedVersion: 3 25 | m_Name: Vertical 26 | descriptiveName: 27 | descriptiveNegativeName: 28 | negativeButton: down 29 | positiveButton: up 30 | altNegativeButton: s 31 | altPositiveButton: w 32 | gravity: 3 33 | dead: 0.001 34 | sensitivity: 3 35 | snap: 1 36 | invert: 0 37 | type: 0 38 | axis: 0 39 | joyNum: 0 40 | - serializedVersion: 3 41 | m_Name: Fire1 42 | descriptiveName: 43 | descriptiveNegativeName: 44 | negativeButton: 45 | positiveButton: left ctrl 46 | altNegativeButton: 47 | altPositiveButton: mouse 0 48 | gravity: 1000 49 | dead: 0.001 50 | sensitivity: 1000 51 | snap: 0 52 | invert: 0 53 | type: 0 54 | axis: 0 55 | joyNum: 0 56 | - serializedVersion: 3 57 | m_Name: Fire2 58 | descriptiveName: 59 | descriptiveNegativeName: 60 | negativeButton: 61 | positiveButton: left alt 62 | altNegativeButton: 63 | altPositiveButton: mouse 1 64 | gravity: 1000 65 | dead: 0.001 66 | sensitivity: 1000 67 | snap: 0 68 | invert: 0 69 | type: 0 70 | axis: 0 71 | joyNum: 0 72 | - serializedVersion: 3 73 | m_Name: Fire3 74 | descriptiveName: 75 | descriptiveNegativeName: 76 | negativeButton: 77 | positiveButton: left shift 78 | altNegativeButton: 79 | altPositiveButton: mouse 2 80 | gravity: 1000 81 | dead: 0.001 82 | sensitivity: 1000 83 | snap: 0 84 | invert: 0 85 | type: 0 86 | axis: 0 87 | joyNum: 0 88 | - serializedVersion: 3 89 | m_Name: Jump 90 | descriptiveName: 91 | descriptiveNegativeName: 92 | negativeButton: 93 | positiveButton: space 94 | altNegativeButton: 95 | altPositiveButton: 96 | gravity: 1000 97 | dead: 0.001 98 | sensitivity: 1000 99 | snap: 0 100 | invert: 0 101 | type: 0 102 | axis: 0 103 | joyNum: 0 104 | - serializedVersion: 3 105 | m_Name: Mouse X 106 | descriptiveName: 107 | descriptiveNegativeName: 108 | negativeButton: 109 | positiveButton: 110 | altNegativeButton: 111 | altPositiveButton: 112 | gravity: 0 113 | dead: 0 114 | sensitivity: 0.1 115 | snap: 0 116 | invert: 0 117 | type: 1 118 | axis: 0 119 | joyNum: 0 120 | - serializedVersion: 3 121 | m_Name: Mouse Y 122 | descriptiveName: 123 | descriptiveNegativeName: 124 | negativeButton: 125 | positiveButton: 126 | altNegativeButton: 127 | altPositiveButton: 128 | gravity: 0 129 | dead: 0 130 | sensitivity: 0.1 131 | snap: 0 132 | invert: 0 133 | type: 1 134 | axis: 1 135 | joyNum: 0 136 | - serializedVersion: 3 137 | m_Name: Mouse ScrollWheel 138 | descriptiveName: 139 | descriptiveNegativeName: 140 | negativeButton: 141 | positiveButton: 142 | altNegativeButton: 143 | altPositiveButton: 144 | gravity: 0 145 | dead: 0 146 | sensitivity: 0.1 147 | snap: 0 148 | invert: 0 149 | type: 1 150 | axis: 2 151 | joyNum: 0 152 | - serializedVersion: 3 153 | m_Name: Horizontal 154 | descriptiveName: 155 | descriptiveNegativeName: 156 | negativeButton: 157 | positiveButton: 158 | altNegativeButton: 159 | altPositiveButton: 160 | gravity: 0 161 | dead: 0.19 162 | sensitivity: 1 163 | snap: 0 164 | invert: 0 165 | type: 2 166 | axis: 0 167 | joyNum: 0 168 | - serializedVersion: 3 169 | m_Name: Vertical 170 | descriptiveName: 171 | descriptiveNegativeName: 172 | negativeButton: 173 | positiveButton: 174 | altNegativeButton: 175 | altPositiveButton: 176 | gravity: 0 177 | dead: 0.19 178 | sensitivity: 1 179 | snap: 0 180 | invert: 1 181 | type: 2 182 | axis: 1 183 | joyNum: 0 184 | - serializedVersion: 3 185 | m_Name: Fire1 186 | descriptiveName: 187 | descriptiveNegativeName: 188 | negativeButton: 189 | positiveButton: joystick button 0 190 | altNegativeButton: 191 | altPositiveButton: 192 | gravity: 1000 193 | dead: 0.001 194 | sensitivity: 1000 195 | snap: 0 196 | invert: 0 197 | type: 0 198 | axis: 0 199 | joyNum: 0 200 | - serializedVersion: 3 201 | m_Name: Fire2 202 | descriptiveName: 203 | descriptiveNegativeName: 204 | negativeButton: 205 | positiveButton: joystick button 1 206 | altNegativeButton: 207 | altPositiveButton: 208 | gravity: 1000 209 | dead: 0.001 210 | sensitivity: 1000 211 | snap: 0 212 | invert: 0 213 | type: 0 214 | axis: 0 215 | joyNum: 0 216 | - serializedVersion: 3 217 | m_Name: Fire3 218 | descriptiveName: 219 | descriptiveNegativeName: 220 | negativeButton: 221 | positiveButton: joystick button 2 222 | altNegativeButton: 223 | altPositiveButton: 224 | gravity: 1000 225 | dead: 0.001 226 | sensitivity: 1000 227 | snap: 0 228 | invert: 0 229 | type: 0 230 | axis: 0 231 | joyNum: 0 232 | - serializedVersion: 3 233 | m_Name: Jump 234 | descriptiveName: 235 | descriptiveNegativeName: 236 | negativeButton: 237 | positiveButton: joystick button 3 238 | altNegativeButton: 239 | altPositiveButton: 240 | gravity: 1000 241 | dead: 0.001 242 | sensitivity: 1000 243 | snap: 0 244 | invert: 0 245 | type: 0 246 | axis: 0 247 | joyNum: 0 248 | - serializedVersion: 3 249 | m_Name: Submit 250 | descriptiveName: 251 | descriptiveNegativeName: 252 | negativeButton: 253 | positiveButton: return 254 | altNegativeButton: 255 | altPositiveButton: joystick button 0 256 | gravity: 1000 257 | dead: 0.001 258 | sensitivity: 1000 259 | snap: 0 260 | invert: 0 261 | type: 0 262 | axis: 0 263 | joyNum: 0 264 | - serializedVersion: 3 265 | m_Name: Submit 266 | descriptiveName: 267 | descriptiveNegativeName: 268 | negativeButton: 269 | positiveButton: enter 270 | altNegativeButton: 271 | altPositiveButton: space 272 | gravity: 1000 273 | dead: 0.001 274 | sensitivity: 1000 275 | snap: 0 276 | invert: 0 277 | type: 0 278 | axis: 0 279 | joyNum: 0 280 | - serializedVersion: 3 281 | m_Name: Cancel 282 | descriptiveName: 283 | descriptiveNegativeName: 284 | negativeButton: 285 | positiveButton: escape 286 | altNegativeButton: 287 | altPositiveButton: joystick button 1 288 | gravity: 1000 289 | dead: 0.001 290 | sensitivity: 1000 291 | snap: 0 292 | invert: 0 293 | type: 0 294 | axis: 0 295 | joyNum: 0 296 | -------------------------------------------------------------------------------- /ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshProjectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | m_LastAgentTypeID: -887442657 73 | m_Settings: 74 | - serializedVersion: 2 75 | agentTypeID: 0 76 | agentRadius: 0.5 77 | agentHeight: 2 78 | agentSlope: 45 79 | agentClimb: 0.75 80 | ledgeDropHeight: 0 81 | maxJumpAcrossDistance: 0 82 | minRegionArea: 2 83 | manualCellSize: 0 84 | cellSize: 0.16666667 85 | manualTileSize: 0 86 | tileSize: 256 87 | accuratePlacement: 0 88 | debug: 89 | m_Flags: 0 90 | m_SettingNames: 91 | - Humanoid 92 | -------------------------------------------------------------------------------- /ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!149 &1 4 | NetworkManager: 5 | m_ObjectHideFlags: 0 6 | m_DebugLevel: 0 7 | m_Sendrate: 15 8 | m_AssetToPrefab: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!19 &1 4 | Physics2DSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | m_Gravity: {x: 0, y: -9.81} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_VelocityIterations: 8 10 | m_PositionIterations: 3 11 | m_VelocityThreshold: 1 12 | m_MaxLinearCorrection: 0.2 13 | m_MaxAngularCorrection: 8 14 | m_MaxTranslationSpeed: 100 15 | m_MaxRotationSpeed: 360 16 | m_BaumgarteScale: 0.2 17 | m_BaumgarteTimeOfImpactScale: 0.75 18 | m_TimeToSleep: 0.5 19 | m_LinearSleepTolerance: 0.01 20 | m_AngularSleepTolerance: 2 21 | m_DefaultContactOffset: 0.01 22 | m_AutoSimulation: 1 23 | m_QueriesHitTriggers: 1 24 | m_QueriesStartInColliders: 1 25 | m_ChangeStopsCallbacks: 0 26 | m_CallbacksOnDisable: 1 27 | m_AutoSyncTransforms: 1 28 | m_AlwaysShowColliders: 0 29 | m_ShowColliderSleep: 1 30 | m_ShowColliderContacts: 0 31 | m_ShowColliderAABB: 0 32 | m_ContactArrowScale: 0.2 33 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} 34 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} 35 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} 36 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} 37 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 38 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!129 &1 4 | PlayerSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 14 7 | productGUID: 9cb44ca7fdbe6864bb8bd64cf0631e13 8 | AndroidProfiler: 0 9 | AndroidFilterTouchesWhenObscured: 0 10 | defaultScreenOrientation: 4 11 | targetDevice: 2 12 | useOnDemandResources: 0 13 | accelerometerFrequency: 60 14 | companyName: DefaultCompany 15 | productName: PhysicsTankExample 16 | defaultCursor: {fileID: 0} 17 | cursorHotspot: {x: 0, y: 0} 18 | m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1} 19 | m_ShowUnitySplashScreen: 1 20 | m_ShowUnitySplashLogo: 1 21 | m_SplashScreenOverlayOpacity: 1 22 | m_SplashScreenAnimation: 1 23 | m_SplashScreenLogoStyle: 1 24 | m_SplashScreenDrawMode: 0 25 | m_SplashScreenBackgroundAnimationZoom: 1 26 | m_SplashScreenLogoAnimationZoom: 1 27 | m_SplashScreenBackgroundLandscapeAspect: 1 28 | m_SplashScreenBackgroundPortraitAspect: 1 29 | m_SplashScreenBackgroundLandscapeUvs: 30 | serializedVersion: 2 31 | x: 0 32 | y: 0 33 | width: 1 34 | height: 1 35 | m_SplashScreenBackgroundPortraitUvs: 36 | serializedVersion: 2 37 | x: 0 38 | y: 0 39 | width: 1 40 | height: 1 41 | m_SplashScreenLogos: [] 42 | m_VirtualRealitySplashScreen: {fileID: 0} 43 | m_HolographicTrackingLossScreen: {fileID: 0} 44 | defaultScreenWidth: 1024 45 | defaultScreenHeight: 768 46 | defaultScreenWidthWeb: 960 47 | defaultScreenHeightWeb: 600 48 | m_StereoRenderingPath: 0 49 | m_ActiveColorSpace: 1 50 | m_MTRendering: 1 51 | m_StackTraceTypes: 010000000100000001000000010000000100000001000000 52 | iosShowActivityIndicatorOnLoading: -1 53 | androidShowActivityIndicatorOnLoading: -1 54 | tizenShowActivityIndicatorOnLoading: -1 55 | iosAppInBackgroundBehavior: 0 56 | displayResolutionDialog: 1 57 | iosAllowHTTPDownload: 1 58 | allowedAutorotateToPortrait: 1 59 | allowedAutorotateToPortraitUpsideDown: 1 60 | allowedAutorotateToLandscapeRight: 1 61 | allowedAutorotateToLandscapeLeft: 1 62 | useOSAutorotation: 1 63 | use32BitDisplayBuffer: 1 64 | preserveFramebufferAlpha: 0 65 | disableDepthAndStencilBuffers: 0 66 | androidBlitType: 0 67 | defaultIsFullScreen: 1 68 | defaultIsNativeResolution: 1 69 | macRetinaSupport: 1 70 | runInBackground: 0 71 | captureSingleScreen: 0 72 | muteOtherAudioSources: 0 73 | Prepare IOS For Recording: 0 74 | Force IOS Speakers When Recording: 0 75 | deferSystemGesturesMode: 0 76 | hideHomeButton: 0 77 | submitAnalytics: 1 78 | usePlayerLog: 1 79 | bakeCollisionMeshes: 0 80 | forceSingleInstance: 0 81 | resizableWindow: 0 82 | useMacAppStoreValidation: 0 83 | macAppStoreCategory: public.app-category.games 84 | gpuSkinning: 0 85 | graphicsJobs: 0 86 | xboxPIXTextureCapture: 0 87 | xboxEnableAvatar: 0 88 | xboxEnableKinect: 0 89 | xboxEnableKinectAutoTracking: 0 90 | xboxEnableFitness: 0 91 | visibleInBackground: 1 92 | allowFullscreenSwitch: 1 93 | graphicsJobMode: 0 94 | macFullscreenMode: 2 95 | d3d11FullscreenMode: 1 96 | xboxSpeechDB: 0 97 | xboxEnableHeadOrientation: 0 98 | xboxEnableGuest: 0 99 | xboxEnablePIXSampling: 0 100 | metalFramebufferOnly: 0 101 | n3dsDisableStereoscopicView: 0 102 | n3dsEnableSharedListOpt: 1 103 | n3dsEnableVSync: 0 104 | xboxOneResolution: 0 105 | xboxOneSResolution: 0 106 | xboxOneXResolution: 3 107 | xboxOneMonoLoggingLevel: 0 108 | xboxOneLoggingLevel: 1 109 | xboxOneDisableEsram: 0 110 | xboxOnePresentImmediateThreshold: 0 111 | videoMemoryForVertexBuffers: 0 112 | psp2PowerMode: 0 113 | psp2AcquireBGM: 1 114 | wiiUTVResolution: 0 115 | wiiUGamePadMSAA: 1 116 | wiiUSupportsNunchuk: 0 117 | wiiUSupportsClassicController: 0 118 | wiiUSupportsBalanceBoard: 0 119 | wiiUSupportsMotionPlus: 0 120 | wiiUSupportsProController: 0 121 | wiiUAllowScreenCapture: 1 122 | wiiUControllerCount: 0 123 | m_SupportedAspectRatios: 124 | 4:3: 1 125 | 5:4: 1 126 | 16:10: 1 127 | 16:9: 1 128 | Others: 1 129 | bundleVersion: 1.0 130 | preloadedAssets: [] 131 | metroInputSource: 0 132 | wsaTransparentSwapchain: 0 133 | m_HolographicPauseOnTrackingLoss: 1 134 | xboxOneDisableKinectGpuReservation: 0 135 | xboxOneEnable7thCore: 0 136 | vrSettings: 137 | cardboard: 138 | depthFormat: 0 139 | enableTransitionView: 0 140 | daydream: 141 | depthFormat: 0 142 | useSustainedPerformanceMode: 0 143 | enableVideoLayer: 0 144 | useProtectedVideoMemory: 0 145 | minimumSupportedHeadTracking: 0 146 | maximumSupportedHeadTracking: 1 147 | hololens: 148 | depthFormat: 1 149 | depthBufferSharingEnabled: 0 150 | oculus: 151 | sharedDepthBuffer: 0 152 | dashSupport: 0 153 | protectGraphicsMemory: 0 154 | useHDRDisplay: 0 155 | m_ColorGamuts: 00000000 156 | targetPixelDensity: 30 157 | resolutionScalingMode: 0 158 | androidSupportedAspectRatio: 1 159 | androidMaxAspectRatio: 2.1 160 | applicationIdentifier: {} 161 | buildNumber: {} 162 | AndroidBundleVersionCode: 1 163 | AndroidMinSdkVersion: 16 164 | AndroidTargetSdkVersion: 0 165 | AndroidPreferredInstallLocation: 1 166 | aotOptions: 167 | stripEngineCode: 1 168 | iPhoneStrippingLevel: 0 169 | iPhoneScriptCallOptimization: 0 170 | ForceInternetPermission: 0 171 | ForceSDCardPermission: 0 172 | CreateWallpaper: 0 173 | APKExpansionFiles: 0 174 | keepLoadedShadersAlive: 0 175 | StripUnusedMeshComponents: 0 176 | VertexChannelCompressionMask: 177 | serializedVersion: 2 178 | m_Bits: 238 179 | iPhoneSdkVersion: 988 180 | iOSTargetOSVersionString: 7.0 181 | tvOSSdkVersion: 0 182 | tvOSRequireExtendedGameController: 0 183 | tvOSTargetOSVersionString: 9.0 184 | uIPrerenderedIcon: 0 185 | uIRequiresPersistentWiFi: 0 186 | uIRequiresFullScreen: 1 187 | uIStatusBarHidden: 1 188 | uIExitOnSuspend: 0 189 | uIStatusBarStyle: 0 190 | iPhoneSplashScreen: {fileID: 0} 191 | iPhoneHighResSplashScreen: {fileID: 0} 192 | iPhoneTallHighResSplashScreen: {fileID: 0} 193 | iPhone47inSplashScreen: {fileID: 0} 194 | iPhone55inPortraitSplashScreen: {fileID: 0} 195 | iPhone55inLandscapeSplashScreen: {fileID: 0} 196 | iPhone58inPortraitSplashScreen: {fileID: 0} 197 | iPhone58inLandscapeSplashScreen: {fileID: 0} 198 | iPadPortraitSplashScreen: {fileID: 0} 199 | iPadHighResPortraitSplashScreen: {fileID: 0} 200 | iPadLandscapeSplashScreen: {fileID: 0} 201 | iPadHighResLandscapeSplashScreen: {fileID: 0} 202 | appleTVSplashScreen: {fileID: 0} 203 | appleTVSplashScreen2x: {fileID: 0} 204 | tvOSSmallIconLayers: [] 205 | tvOSSmallIconLayers2x: [] 206 | tvOSLargeIconLayers: [] 207 | tvOSTopShelfImageLayers: [] 208 | tvOSTopShelfImageLayers2x: [] 209 | tvOSTopShelfImageWideLayers: [] 210 | tvOSTopShelfImageWideLayers2x: [] 211 | iOSLaunchScreenType: 0 212 | iOSLaunchScreenPortrait: {fileID: 0} 213 | iOSLaunchScreenLandscape: {fileID: 0} 214 | iOSLaunchScreenBackgroundColor: 215 | serializedVersion: 2 216 | rgba: 0 217 | iOSLaunchScreenFillPct: 100 218 | iOSLaunchScreenSize: 100 219 | iOSLaunchScreenCustomXibPath: 220 | iOSLaunchScreeniPadType: 0 221 | iOSLaunchScreeniPadImage: {fileID: 0} 222 | iOSLaunchScreeniPadBackgroundColor: 223 | serializedVersion: 2 224 | rgba: 0 225 | iOSLaunchScreeniPadFillPct: 100 226 | iOSLaunchScreeniPadSize: 100 227 | iOSLaunchScreeniPadCustomXibPath: 228 | iOSUseLaunchScreenStoryboard: 0 229 | iOSLaunchScreenCustomStoryboardPath: 230 | iOSDeviceRequirements: [] 231 | iOSURLSchemes: [] 232 | iOSBackgroundModes: 0 233 | iOSMetalForceHardShadows: 0 234 | metalEditorSupport: 1 235 | metalAPIValidation: 1 236 | iOSRenderExtraFrameOnPause: 0 237 | appleDeveloperTeamID: 238 | iOSManualSigningProvisioningProfileID: 239 | tvOSManualSigningProvisioningProfileID: 240 | appleEnableAutomaticSigning: 0 241 | clonedFromGUID: 00000000000000000000000000000000 242 | AndroidTargetDevice: 0 243 | AndroidSplashScreenScale: 0 244 | androidSplashScreen: {fileID: 0} 245 | AndroidKeystoreName: 246 | AndroidKeyaliasName: 247 | AndroidTVCompatibility: 1 248 | AndroidIsGame: 1 249 | AndroidEnableTango: 0 250 | androidEnableBanner: 1 251 | androidUseLowAccuracyLocation: 0 252 | m_AndroidBanners: 253 | - width: 320 254 | height: 180 255 | banner: {fileID: 0} 256 | androidGamepadSupportLevel: 0 257 | resolutionDialogBanner: {fileID: 0} 258 | m_BuildTargetIcons: [] 259 | m_BuildTargetBatching: [] 260 | m_BuildTargetGraphicsAPIs: [] 261 | m_BuildTargetVRSettings: [] 262 | m_BuildTargetEnableVuforiaSettings: [] 263 | openGLRequireES31: 0 264 | openGLRequireES31AEP: 0 265 | m_TemplateCustomTags: {} 266 | mobileMTRendering: 267 | Android: 1 268 | iPhone: 1 269 | tvOS: 1 270 | m_BuildTargetGroupLightmapEncodingQuality: [] 271 | wiiUTitleID: 0005000011000000 272 | wiiUGroupID: 00010000 273 | wiiUCommonSaveSize: 4096 274 | wiiUAccountSaveSize: 2048 275 | wiiUOlvAccessKey: 0 276 | wiiUTinCode: 0 277 | wiiUJoinGameId: 0 278 | wiiUJoinGameModeMask: 0000000000000000 279 | wiiUCommonBossSize: 0 280 | wiiUAccountBossSize: 0 281 | wiiUAddOnUniqueIDs: [] 282 | wiiUMainThreadStackSize: 3072 283 | wiiULoaderThreadStackSize: 1024 284 | wiiUSystemHeapSize: 128 285 | wiiUTVStartupScreen: {fileID: 0} 286 | wiiUGamePadStartupScreen: {fileID: 0} 287 | wiiUDrcBufferDisabled: 0 288 | wiiUProfilerLibPath: 289 | playModeTestRunnerEnabled: 0 290 | actionOnDotNetUnhandledException: 1 291 | enableInternalProfiler: 0 292 | logObjCUncaughtExceptions: 1 293 | enableCrashReportAPI: 0 294 | cameraUsageDescription: 295 | locationUsageDescription: 296 | microphoneUsageDescription: 297 | switchNetLibKey: 298 | switchSocketMemoryPoolSize: 6144 299 | switchSocketAllocatorPoolSize: 128 300 | switchSocketConcurrencyLimit: 14 301 | switchScreenResolutionBehavior: 2 302 | switchUseCPUProfiler: 0 303 | switchApplicationID: 0x01004b9000490000 304 | switchNSODependencies: 305 | switchTitleNames_0: 306 | switchTitleNames_1: 307 | switchTitleNames_2: 308 | switchTitleNames_3: 309 | switchTitleNames_4: 310 | switchTitleNames_5: 311 | switchTitleNames_6: 312 | switchTitleNames_7: 313 | switchTitleNames_8: 314 | switchTitleNames_9: 315 | switchTitleNames_10: 316 | switchTitleNames_11: 317 | switchTitleNames_12: 318 | switchTitleNames_13: 319 | switchTitleNames_14: 320 | switchPublisherNames_0: 321 | switchPublisherNames_1: 322 | switchPublisherNames_2: 323 | switchPublisherNames_3: 324 | switchPublisherNames_4: 325 | switchPublisherNames_5: 326 | switchPublisherNames_6: 327 | switchPublisherNames_7: 328 | switchPublisherNames_8: 329 | switchPublisherNames_9: 330 | switchPublisherNames_10: 331 | switchPublisherNames_11: 332 | switchPublisherNames_12: 333 | switchPublisherNames_13: 334 | switchPublisherNames_14: 335 | switchIcons_0: {fileID: 0} 336 | switchIcons_1: {fileID: 0} 337 | switchIcons_2: {fileID: 0} 338 | switchIcons_3: {fileID: 0} 339 | switchIcons_4: {fileID: 0} 340 | switchIcons_5: {fileID: 0} 341 | switchIcons_6: {fileID: 0} 342 | switchIcons_7: {fileID: 0} 343 | switchIcons_8: {fileID: 0} 344 | switchIcons_9: {fileID: 0} 345 | switchIcons_10: {fileID: 0} 346 | switchIcons_11: {fileID: 0} 347 | switchIcons_12: {fileID: 0} 348 | switchIcons_13: {fileID: 0} 349 | switchIcons_14: {fileID: 0} 350 | switchSmallIcons_0: {fileID: 0} 351 | switchSmallIcons_1: {fileID: 0} 352 | switchSmallIcons_2: {fileID: 0} 353 | switchSmallIcons_3: {fileID: 0} 354 | switchSmallIcons_4: {fileID: 0} 355 | switchSmallIcons_5: {fileID: 0} 356 | switchSmallIcons_6: {fileID: 0} 357 | switchSmallIcons_7: {fileID: 0} 358 | switchSmallIcons_8: {fileID: 0} 359 | switchSmallIcons_9: {fileID: 0} 360 | switchSmallIcons_10: {fileID: 0} 361 | switchSmallIcons_11: {fileID: 0} 362 | switchSmallIcons_12: {fileID: 0} 363 | switchSmallIcons_13: {fileID: 0} 364 | switchSmallIcons_14: {fileID: 0} 365 | switchManualHTML: 366 | switchAccessibleURLs: 367 | switchLegalInformation: 368 | switchMainThreadStackSize: 1048576 369 | switchPresenceGroupId: 370 | switchLogoHandling: 0 371 | switchReleaseVersion: 0 372 | switchDisplayVersion: 1.0.0 373 | switchStartupUserAccount: 0 374 | switchTouchScreenUsage: 0 375 | switchSupportedLanguagesMask: 0 376 | switchLogoType: 0 377 | switchApplicationErrorCodeCategory: 378 | switchUserAccountSaveDataSize: 0 379 | switchUserAccountSaveDataJournalSize: 0 380 | switchApplicationAttribute: 0 381 | switchCardSpecSize: -1 382 | switchCardSpecClock: -1 383 | switchRatingsMask: 0 384 | switchRatingsInt_0: 0 385 | switchRatingsInt_1: 0 386 | switchRatingsInt_2: 0 387 | switchRatingsInt_3: 0 388 | switchRatingsInt_4: 0 389 | switchRatingsInt_5: 0 390 | switchRatingsInt_6: 0 391 | switchRatingsInt_7: 0 392 | switchRatingsInt_8: 0 393 | switchRatingsInt_9: 0 394 | switchRatingsInt_10: 0 395 | switchRatingsInt_11: 0 396 | switchLocalCommunicationIds_0: 397 | switchLocalCommunicationIds_1: 398 | switchLocalCommunicationIds_2: 399 | switchLocalCommunicationIds_3: 400 | switchLocalCommunicationIds_4: 401 | switchLocalCommunicationIds_5: 402 | switchLocalCommunicationIds_6: 403 | switchLocalCommunicationIds_7: 404 | switchParentalControl: 0 405 | switchAllowsScreenshot: 1 406 | switchAllowsVideoCapturing: 1 407 | switchAllowsRuntimeAddOnContentInstall: 0 408 | switchDataLossConfirmation: 0 409 | switchSupportedNpadStyles: 3 410 | switchSocketConfigEnabled: 0 411 | switchTcpInitialSendBufferSize: 32 412 | switchTcpInitialReceiveBufferSize: 64 413 | switchTcpAutoSendBufferSizeMax: 256 414 | switchTcpAutoReceiveBufferSizeMax: 256 415 | switchUdpSendBufferSize: 9 416 | switchUdpReceiveBufferSize: 42 417 | switchSocketBufferEfficiency: 4 418 | switchSocketInitializeEnabled: 1 419 | switchNetworkInterfaceManagerInitializeEnabled: 1 420 | switchPlayerConnectionEnabled: 1 421 | ps4NPAgeRating: 12 422 | ps4NPTitleSecret: 423 | ps4NPTrophyPackPath: 424 | ps4ParentalLevel: 11 425 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000 426 | ps4Category: 0 427 | ps4MasterVersion: 01.00 428 | ps4AppVersion: 01.00 429 | ps4AppType: 0 430 | ps4ParamSfxPath: 431 | ps4VideoOutPixelFormat: 0 432 | ps4VideoOutInitialWidth: 1920 433 | ps4VideoOutBaseModeInitialWidth: 1920 434 | ps4VideoOutReprojectionRate: 60 435 | ps4PronunciationXMLPath: 436 | ps4PronunciationSIGPath: 437 | ps4BackgroundImagePath: 438 | ps4StartupImagePath: 439 | ps4StartupImagesFolder: 440 | ps4IconImagesFolder: 441 | ps4SaveDataImagePath: 442 | ps4SdkOverride: 443 | ps4BGMPath: 444 | ps4ShareFilePath: 445 | ps4ShareOverlayImagePath: 446 | ps4PrivacyGuardImagePath: 447 | ps4NPtitleDatPath: 448 | ps4RemotePlayKeyAssignment: -1 449 | ps4RemotePlayKeyMappingDir: 450 | ps4PlayTogetherPlayerCount: 0 451 | ps4EnterButtonAssignment: 1 452 | ps4ApplicationParam1: 0 453 | ps4ApplicationParam2: 0 454 | ps4ApplicationParam3: 0 455 | ps4ApplicationParam4: 0 456 | ps4DownloadDataSize: 0 457 | ps4GarlicHeapSize: 2048 458 | ps4ProGarlicHeapSize: 2560 459 | ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ 460 | ps4pnSessions: 1 461 | ps4pnPresence: 1 462 | ps4pnFriends: 1 463 | ps4pnGameCustomData: 1 464 | playerPrefsSupport: 0 465 | restrictedAudioUsageRights: 0 466 | ps4UseResolutionFallback: 0 467 | ps4ReprojectionSupport: 0 468 | ps4UseAudio3dBackend: 0 469 | ps4SocialScreenEnabled: 0 470 | ps4ScriptOptimizationLevel: 0 471 | ps4Audio3dVirtualSpeakerCount: 14 472 | ps4attribCpuUsage: 0 473 | ps4PatchPkgPath: 474 | ps4PatchLatestPkgPath: 475 | ps4PatchChangeinfoPath: 476 | ps4PatchDayOne: 0 477 | ps4attribUserManagement: 0 478 | ps4attribMoveSupport: 0 479 | ps4attrib3DSupport: 0 480 | ps4attribShareSupport: 0 481 | ps4attribExclusiveVR: 0 482 | ps4disableAutoHideSplash: 0 483 | ps4videoRecordingFeaturesUsed: 0 484 | ps4contentSearchFeaturesUsed: 0 485 | ps4attribEyeToEyeDistanceSettingVR: 0 486 | ps4IncludedModules: [] 487 | monoEnv: 488 | psp2Splashimage: {fileID: 0} 489 | psp2NPTrophyPackPath: 490 | psp2NPSupportGBMorGJP: 0 491 | psp2NPAgeRating: 12 492 | psp2NPTitleDatPath: 493 | psp2NPCommsID: 494 | psp2NPCommunicationsID: 495 | psp2NPCommsPassphrase: 496 | psp2NPCommsSig: 497 | psp2ParamSfxPath: 498 | psp2ManualPath: 499 | psp2LiveAreaGatePath: 500 | psp2LiveAreaBackroundPath: 501 | psp2LiveAreaPath: 502 | psp2LiveAreaTrialPath: 503 | psp2PatchChangeInfoPath: 504 | psp2PatchOriginalPackage: 505 | psp2PackagePassword: F69AzBlax3CF3EDNhm3soLBPh71Yexui 506 | psp2KeystoneFile: 507 | psp2MemoryExpansionMode: 0 508 | psp2DRMType: 0 509 | psp2StorageType: 0 510 | psp2MediaCapacity: 0 511 | psp2DLCConfigPath: 512 | psp2ThumbnailPath: 513 | psp2BackgroundPath: 514 | psp2SoundPath: 515 | psp2TrophyCommId: 516 | psp2TrophyPackagePath: 517 | psp2PackagedResourcesPath: 518 | psp2SaveDataQuota: 10240 519 | psp2ParentalLevel: 1 520 | psp2ShortTitle: Not Set 521 | psp2ContentID: IV0000-ABCD12345_00-0123456789ABCDEF 522 | psp2Category: 0 523 | psp2MasterVersion: 01.00 524 | psp2AppVersion: 01.00 525 | psp2TVBootMode: 0 526 | psp2EnterButtonAssignment: 2 527 | psp2TVDisableEmu: 0 528 | psp2AllowTwitterDialog: 1 529 | psp2Upgradable: 0 530 | psp2HealthWarning: 0 531 | psp2UseLibLocation: 0 532 | psp2InfoBarOnStartup: 0 533 | psp2InfoBarColor: 0 534 | psp2ScriptOptimizationLevel: 0 535 | psmSplashimage: {fileID: 0} 536 | splashScreenBackgroundSourceLandscape: {fileID: 0} 537 | splashScreenBackgroundSourcePortrait: {fileID: 0} 538 | spritePackerPolicy: 539 | webGLMemorySize: 256 540 | webGLExceptionSupport: 1 541 | webGLNameFilesAsHashes: 0 542 | webGLDataCaching: 0 543 | webGLDebugSymbols: 0 544 | webGLEmscriptenArgs: 545 | webGLModulesDirectory: 546 | webGLTemplate: APPLICATION:Default 547 | webGLAnalyzeBuildSize: 0 548 | webGLUseEmbeddedResources: 0 549 | webGLUseWasm: 0 550 | webGLCompressionFormat: 1 551 | scriptingDefineSymbols: {} 552 | platformArchitecture: {} 553 | scriptingBackend: {} 554 | incrementalIl2cppBuild: {} 555 | additionalIl2CppArgs: 556 | scriptingRuntimeVersion: 0 557 | apiCompatibilityLevelPerPlatform: {} 558 | m_RenderingPath: 1 559 | m_MobileRenderingPath: 1 560 | metroPackageName: PhysicsTankExample 561 | metroPackageVersion: 562 | metroCertificatePath: 563 | metroCertificatePassword: 564 | metroCertificateSubject: 565 | metroCertificateIssuer: 566 | metroCertificateNotAfter: 0000000000000000 567 | metroApplicationDescription: PhysicsTankExample 568 | wsaImages: {} 569 | metroTileShortName: 570 | metroCommandLineArgsFile: 571 | metroTileShowName: 0 572 | metroMediumTileShowName: 0 573 | metroLargeTileShowName: 0 574 | metroWideTileShowName: 0 575 | metroDefaultTileSize: 1 576 | metroTileForegroundText: 2 577 | metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} 578 | metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, 579 | a: 1} 580 | metroSplashScreenUseBackgroundColor: 0 581 | platformCapabilities: {} 582 | metroFTAName: 583 | metroFTAFileTypes: [] 584 | metroProtocolName: 585 | metroCompilationOverrides: 1 586 | tizenProductDescription: 587 | tizenProductURL: 588 | tizenSigningProfileName: 589 | tizenGPSPermissions: 0 590 | tizenMicrophonePermissions: 0 591 | tizenDeploymentTarget: 592 | tizenDeploymentTargetType: -1 593 | tizenMinOSVersion: 1 594 | n3dsUseExtSaveData: 0 595 | n3dsCompressStaticMem: 1 596 | n3dsExtSaveDataNumber: 0x12345 597 | n3dsStackSize: 131072 598 | n3dsTargetPlatform: 2 599 | n3dsRegion: 7 600 | n3dsMediaSize: 0 601 | n3dsLogoStyle: 3 602 | n3dsTitle: GameName 603 | n3dsProductCode: 604 | n3dsApplicationId: 0xFF3FF 605 | XboxOneProductId: 606 | XboxOneUpdateKey: 607 | XboxOneSandboxId: 608 | XboxOneContentId: 609 | XboxOneTitleId: 610 | XboxOneSCId: 611 | XboxOneGameOsOverridePath: 612 | XboxOnePackagingOverridePath: 613 | XboxOneAppManifestOverridePath: 614 | XboxOnePackageEncryption: 0 615 | XboxOnePackageUpdateGranularity: 2 616 | XboxOneDescription: 617 | XboxOneLanguage: 618 | - enus 619 | XboxOneCapability: [] 620 | XboxOneGameRating: {} 621 | XboxOneIsContentPackage: 0 622 | XboxOneEnableGPUVariability: 0 623 | XboxOneSockets: {} 624 | XboxOneSplashScreen: {fileID: 0} 625 | XboxOneAllowedProductIds: [] 626 | XboxOnePersistentLocalStorageSize: 0 627 | xboxOneScriptCompiler: 0 628 | vrEditorSettings: 629 | daydream: 630 | daydreamIconForeground: {fileID: 0} 631 | daydreamIconBackground: {fileID: 0} 632 | cloudServicesEnabled: {} 633 | facebookSdkVersion: 7.9.4 634 | apiCompatibilityLevel: 2 635 | cloudProjectId: 636 | projectName: 637 | organizationId: 638 | cloudEnabled: 0 639 | enableNativePlatformBackendsForNewInputSystem: 0 640 | disableOldInputManagerSupport: 0 641 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2017.3.1f1 2 | -------------------------------------------------------------------------------- /ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!47 &1 4 | QualitySettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 5 7 | m_CurrentQuality: 5 8 | m_QualitySettings: 9 | - serializedVersion: 2 10 | name: Very Low 11 | pixelLightCount: 0 12 | shadows: 0 13 | shadowResolution: 0 14 | shadowProjection: 1 15 | shadowCascades: 1 16 | shadowDistance: 15 17 | shadowNearPlaneOffset: 3 18 | shadowCascade2Split: 0.33333334 19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 20 | shadowmaskMode: 0 21 | blendWeights: 1 22 | textureQuality: 1 23 | anisotropicTextures: 0 24 | antiAliasing: 0 25 | softParticles: 0 26 | softVegetation: 0 27 | realtimeReflectionProbes: 0 28 | billboardsFaceCameraPosition: 0 29 | vSyncCount: 0 30 | lodBias: 0.3 31 | maximumLODLevel: 0 32 | particleRaycastBudget: 4 33 | asyncUploadTimeSlice: 2 34 | asyncUploadBufferSize: 4 35 | resolutionScalingFixedDPIFactor: 1 36 | excludedTargetPlatforms: [] 37 | - serializedVersion: 2 38 | name: Low 39 | pixelLightCount: 0 40 | shadows: 0 41 | shadowResolution: 0 42 | shadowProjection: 1 43 | shadowCascades: 1 44 | shadowDistance: 20 45 | shadowNearPlaneOffset: 3 46 | shadowCascade2Split: 0.33333334 47 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 48 | shadowmaskMode: 0 49 | blendWeights: 2 50 | textureQuality: 0 51 | anisotropicTextures: 0 52 | antiAliasing: 0 53 | softParticles: 0 54 | softVegetation: 0 55 | realtimeReflectionProbes: 0 56 | billboardsFaceCameraPosition: 0 57 | vSyncCount: 0 58 | lodBias: 0.4 59 | maximumLODLevel: 0 60 | particleRaycastBudget: 16 61 | asyncUploadTimeSlice: 2 62 | asyncUploadBufferSize: 4 63 | resolutionScalingFixedDPIFactor: 1 64 | excludedTargetPlatforms: [] 65 | - serializedVersion: 2 66 | name: Medium 67 | pixelLightCount: 1 68 | shadows: 1 69 | shadowResolution: 0 70 | shadowProjection: 1 71 | shadowCascades: 1 72 | shadowDistance: 20 73 | shadowNearPlaneOffset: 3 74 | shadowCascade2Split: 0.33333334 75 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 76 | shadowmaskMode: 0 77 | blendWeights: 2 78 | textureQuality: 0 79 | anisotropicTextures: 1 80 | antiAliasing: 0 81 | softParticles: 0 82 | softVegetation: 0 83 | realtimeReflectionProbes: 0 84 | billboardsFaceCameraPosition: 0 85 | vSyncCount: 1 86 | lodBias: 0.7 87 | maximumLODLevel: 0 88 | particleRaycastBudget: 64 89 | asyncUploadTimeSlice: 2 90 | asyncUploadBufferSize: 4 91 | resolutionScalingFixedDPIFactor: 1 92 | excludedTargetPlatforms: [] 93 | - serializedVersion: 2 94 | name: High 95 | pixelLightCount: 2 96 | shadows: 2 97 | shadowResolution: 1 98 | shadowProjection: 1 99 | shadowCascades: 2 100 | shadowDistance: 40 101 | shadowNearPlaneOffset: 3 102 | shadowCascade2Split: 0.33333334 103 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 104 | shadowmaskMode: 1 105 | blendWeights: 2 106 | textureQuality: 0 107 | anisotropicTextures: 1 108 | antiAliasing: 0 109 | softParticles: 0 110 | softVegetation: 1 111 | realtimeReflectionProbes: 1 112 | billboardsFaceCameraPosition: 1 113 | vSyncCount: 1 114 | lodBias: 1 115 | maximumLODLevel: 0 116 | particleRaycastBudget: 256 117 | asyncUploadTimeSlice: 2 118 | asyncUploadBufferSize: 4 119 | resolutionScalingFixedDPIFactor: 1 120 | excludedTargetPlatforms: [] 121 | - serializedVersion: 2 122 | name: Very High 123 | pixelLightCount: 3 124 | shadows: 2 125 | shadowResolution: 2 126 | shadowProjection: 1 127 | shadowCascades: 2 128 | shadowDistance: 70 129 | shadowNearPlaneOffset: 3 130 | shadowCascade2Split: 0.33333334 131 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 132 | shadowmaskMode: 1 133 | blendWeights: 4 134 | textureQuality: 0 135 | anisotropicTextures: 2 136 | antiAliasing: 2 137 | softParticles: 1 138 | softVegetation: 1 139 | realtimeReflectionProbes: 1 140 | billboardsFaceCameraPosition: 1 141 | vSyncCount: 1 142 | lodBias: 1.5 143 | maximumLODLevel: 0 144 | particleRaycastBudget: 1024 145 | asyncUploadTimeSlice: 2 146 | asyncUploadBufferSize: 4 147 | resolutionScalingFixedDPIFactor: 1 148 | excludedTargetPlatforms: [] 149 | - serializedVersion: 2 150 | name: Ultra 151 | pixelLightCount: 4 152 | shadows: 2 153 | shadowResolution: 2 154 | shadowProjection: 1 155 | shadowCascades: 4 156 | shadowDistance: 150 157 | shadowNearPlaneOffset: 3 158 | shadowCascade2Split: 0.33333334 159 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 160 | shadowmaskMode: 1 161 | blendWeights: 4 162 | textureQuality: 0 163 | anisotropicTextures: 2 164 | antiAliasing: 2 165 | softParticles: 1 166 | softVegetation: 1 167 | realtimeReflectionProbes: 1 168 | billboardsFaceCameraPosition: 1 169 | vSyncCount: 1 170 | lodBias: 2 171 | maximumLODLevel: 0 172 | particleRaycastBudget: 4096 173 | asyncUploadTimeSlice: 2 174 | asyncUploadBufferSize: 4 175 | resolutionScalingFixedDPIFactor: 1 176 | excludedTargetPlatforms: [] 177 | m_PerPlatformDefaultQuality: 178 | Android: 2 179 | Nintendo 3DS: 5 180 | Nintendo Switch: 5 181 | PS4: 5 182 | PSM: 5 183 | PSP2: 2 184 | Standalone: 5 185 | Tizen: 2 186 | WebGL: 3 187 | WiiU: 5 188 | Windows Store Apps: 5 189 | XboxOne: 5 190 | iPhone: 2 191 | tvOS: 2 192 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | m_Enabled: 0 7 | m_TestMode: 0 8 | m_TestEventUrl: 9 | m_TestConfigUrl: 10 | m_TestInitMode: 0 11 | CrashReportingSettings: 12 | m_EventUrl: https://perf-events.cloud.unity3d.com/api/events/crashes 13 | m_NativeEventUrl: https://perf-events.cloud.unity3d.com/symbolicate 14 | m_Enabled: 0 15 | m_CaptureEditorExceptions: 1 16 | UnityPurchasingSettings: 17 | m_Enabled: 0 18 | m_TestMode: 0 19 | UnityAnalyticsSettings: 20 | m_Enabled: 0 21 | m_InitializeOnStartup: 1 22 | m_TestMode: 0 23 | m_TestEventUrl: 24 | m_TestConfigUrl: 25 | UnityAdsSettings: 26 | m_Enabled: 0 27 | m_InitializeOnStartup: 1 28 | m_TestMode: 0 29 | m_IosGameId: 30 | m_AndroidGameId: 31 | m_GameIds: {} 32 | m_GameId: 33 | PerformanceReportingSettings: 34 | m_Enabled: 0 35 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Physics Tank Example 2 | This project is meant to show three different ways to use Unity's standard WheelCollider to create a driveable tank. The code is commented, and there are tooltips on all the parameters for the TankPhysics component. 3 | 4 | Something to keep in mind is that this is very much just an example. While you could theoretically just plug this into a project and set it up, because it’s so general purpose and prototype-like I would recommend deciding on which method you like best, and then simplifying the code to take only what you need. 5 | 6 | Built in **Unity 2017.3**. 7 | 8 | ![screenshot](Screenshots/tankrolling.gif) 9 | 10 | ## Download 11 | 12 | You can either clone the repository or [download the asset package](./PhysicsTankExample.unitypackage) located in the root. 13 | 14 | ## The WheelCollider 15 | 16 | ![screenshot](Screenshots/wheelsuspension.png) 17 | 18 | WheelColliders are the secret to this. In my experience, as long as the suspension forces are in line with the mass value, the suspension is well behaved. In the case of this project, the tanks have a mass of 100 Unities, and then each wheel has a spring force of only 2000, with a very small damper value of 50. 19 | 20 | ## The Tank 21 | 22 | The tank is controlled with WASD, but with three very different implementations. All three tanks are in the TankDriving scene included in the package. Simply enable/disable whichever tank you want to drive. 23 | 24 | #### Wheel Collider lists 25 | 26 | There are 5 lists of WheelColliders in the PhysicsTanks script. Feel free to put any WheelColliders in any of the lists that are relevant to that wheel. Wheels can be in multiple lists if they need to do multiple things. For example, a wheel that is both powered and steers would be in both the Front (or Rear) list, **and** the Powered Wheels list. 27 | 28 | #### Center of Mass 29 | 30 | To aid in stability, and prevent the tank from flipping over during turns, you can override where the center of mass of the tank is. To use this, create a child GameObject of the tank, position it where you want the center of mass, and then assign that GameObject to the Center of Mass parameter. 31 | 32 | ### Four Wheel Steering 33 | 34 | This tank steers by turning the frontmost pair of wheels, and rearmost pair. The angle that the wheels turn is set by the Steering Angle parameter. In my opinion, this is the most fun and consistent tank to drive, but it has a big limitation in that it cannot turn in place. With 35 | 36 | ### Differential Steering 37 | 38 | This tank steers using the real life tank solution of one set of tracks turning more the other, or turning in the opposite direction. The problem with this in practice is that the sideways friction of a WheelCollider will prevent differential steering from working. For example, if you try to rotate clockwise, the wheels will fight that rotation, and they'll fight it harder the further away they are from the pivot point. 39 | 40 | ![screenshot](Screenshots/rotating.png) 41 | 42 | To get around this, all the wheels except the two center ones have a sideways stiffness of 0.1, while the center ones have a sideways stiffness of 10. All the sideways traction is coming from the center wheels, but all the wheels can still apply forwards/reverse motion because their forward friction is untouched. This *mostly* works, but you can get into weird situations where one or both of your two center wheels are off the ground, and so the tank slips around in an unintuitive way. Just moving across rough terrain in general can cause some weird uncommanded turns that don’t quite seem right. 43 | 44 | ### Magic Steering 45 | 46 | This one allows for both turning while standing still, and turning in a very controlled and predictable manner. Basically, the tank rotates with magic. You supply a Magic Turn Rate (45 degrees by default), and it just rotates the tank by rotating the rigidbody itself. Using rigid.MoveRotation, you still get the physics of suspension bobbing the tank around, while still being able to apply a turn with magic code. 47 | 48 | # Changelog 49 | 50 | ### 1.0 (Feb 18 2018) 51 | 52 | - Released -------------------------------------------------------------------------------- /Screenshots/rotating.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brihernandez/PhysicsTankExample/4d8290ead56d98a9351ad6310f391b29b5a4959c/Screenshots/rotating.png -------------------------------------------------------------------------------- /Screenshots/tankrolling.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brihernandez/PhysicsTankExample/4d8290ead56d98a9351ad6310f391b29b5a4959c/Screenshots/tankrolling.gif -------------------------------------------------------------------------------- /Screenshots/wheelsuspension.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brihernandez/PhysicsTankExample/4d8290ead56d98a9351ad6310f391b29b5a4959c/Screenshots/wheelsuspension.png -------------------------------------------------------------------------------- /UnityPackageManager/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | } 4 | } 5 | --------------------------------------------------------------------------------