├── .gitignore ├── .vscode └── settings.json ├── Assets ├── ExternalAssets.meta ├── ExternalAssets │ ├── Car Script basic.meta │ ├── Car Script basic │ │ ├── Docs.meta │ │ ├── Docs │ │ │ ├── Car_Script_basic.pdf │ │ │ └── Car_Script_basic.pdf.meta │ │ ├── Script.meta │ │ └── Script │ │ │ ├── Dot_Truck_Controller.cs │ │ │ └── Dot_Truck_Controller.cs.meta │ ├── Modern_Touring_Carpack_Demo.meta │ └── Modern_Touring_Carpack_Demo │ │ ├── Materials.meta │ │ ├── Materials │ │ ├── FocE.meta │ │ ├── FocE │ │ │ ├── FocE_Carbody08.mat │ │ │ ├── FocE_Carbody08.mat.meta │ │ │ ├── FocE_Windows.mat │ │ │ └── FocE_Windows.mat.meta │ │ ├── _Common.meta │ │ └── _Common │ │ │ ├── Brackedisk.mat │ │ │ ├── Brackedisk.mat.meta │ │ │ ├── Engine.mat │ │ │ ├── Engine.mat.meta │ │ │ ├── Floor.mat │ │ │ ├── Floor.mat.meta │ │ │ ├── Glass.mat │ │ │ ├── Glass.mat.meta │ │ │ ├── Interior.mat │ │ │ ├── Interior.mat.meta │ │ │ ├── Rim.mat │ │ │ ├── Rim.mat.meta │ │ │ ├── RimIn.mat │ │ │ ├── RimIn.mat.meta │ │ │ ├── Sidewall.mat │ │ │ ├── Sidewall.mat.meta │ │ │ ├── Tread.mat │ │ │ ├── Tread.mat.meta │ │ │ ├── wiring.mat │ │ │ └── wiring.mat.meta │ │ ├── Meshes.meta │ │ ├── Meshes │ │ ├── Floor.FBX │ │ ├── Floor.FBX.meta │ │ ├── FocE.FBX │ │ ├── FocE.FBX.meta │ │ ├── Tires.FBX │ │ └── Tires.FBX.meta │ │ ├── Prefabs.meta │ │ ├── Prefabs │ │ ├── Floor.prefab │ │ ├── Floor.prefab.meta │ │ ├── FocE08.prefab │ │ ├── FocE08.prefab.meta │ │ ├── Tires.prefab │ │ └── Tires.prefab.meta │ │ ├── Scenes.meta │ │ ├── Scenes │ │ ├── FocE08.unity │ │ ├── FocE08.unity.meta │ │ ├── Tires.unity │ │ └── Tires.unity.meta │ │ ├── Textures.meta │ │ └── Textures │ │ ├── FocE.meta │ │ ├── FocE │ │ ├── FocE_Carbody08.tga │ │ ├── FocE_Carbody08.tga.meta │ │ ├── FocE_Windows.tga │ │ └── FocE_Windows.tga.meta │ │ ├── _Common.meta │ │ ├── _Common │ │ ├── Brakedisc.tga │ │ ├── Brakedisc.tga.meta │ │ ├── Engine.tga │ │ ├── Engine.tga.meta │ │ ├── Engine_S.tga │ │ ├── Engine_S.tga.meta │ │ ├── Glass.tga │ │ ├── Glass.tga.meta │ │ ├── Interior.tga │ │ ├── Interior.tga.meta │ │ ├── Interior_S.tga │ │ ├── Interior_S.tga.meta │ │ ├── Rim.tga │ │ ├── Rim.tga.meta │ │ ├── Sidewall.tga │ │ ├── Sidewall.tga.meta │ │ ├── Sidewall_S.tga │ │ ├── Sidewall_S.tga.meta │ │ ├── Tread.tga │ │ ├── Tread.tga.meta │ │ ├── Tread_N.tga │ │ ├── Tread_N.tga.meta │ │ ├── Tread_S.tga │ │ ├── Tread_S.tga.meta │ │ ├── wiring.tga │ │ └── wiring.tga.meta │ │ ├── _Templates.meta │ │ └── _Templates │ │ ├── FocE_Carbody.psd │ │ └── FocE_Carbody.psd.meta ├── FXAA.meta ├── FXAA │ ├── Scripts.meta │ ├── Scripts │ │ ├── Editor.meta │ │ ├── Editor │ │ │ ├── BannerOffline.png │ │ │ ├── BannerOffline.png.meta │ │ │ ├── FXAAEditor.cs │ │ │ └── FXAAEditor.cs.meta │ │ ├── FXAA.cs │ │ ├── FXAA.cs.meta │ │ ├── FXAAPostEffectsBase.cs │ │ └── FXAAPostEffectsBase.cs.meta │ ├── Shaders.meta │ └── Shaders │ │ ├── Fxaa3.shader │ │ ├── Fxaa3.shader.meta │ │ ├── Fxaa3_9.cginc │ │ └── Fxaa3_9.cginc.meta ├── Materials.meta ├── Materials │ ├── Ground.mat │ └── Ground.mat.meta ├── Prefabs.meta ├── Prefabs │ ├── Player.prefab │ └── Player.prefab.meta ├── Scenes.meta ├── Scenes │ ├── SampleScene.unity │ └── SampleScene.unity.meta ├── Scripts.meta └── Scripts │ ├── GameManager.cs │ ├── GameManager.cs.meta │ ├── Network.meta │ ├── Network │ ├── ByteIO.cs │ ├── ByteIO.cs.meta │ ├── ByteReader.cs │ ├── ByteReader.cs.meta │ ├── ByteWriter.cs │ ├── ByteWriter.cs.meta │ ├── ICursor.cs │ ├── ICursor.cs.meta │ ├── InstantiateType.cs │ ├── InstantiateType.cs.meta │ ├── MessageType.cs │ ├── MessageType.cs.meta │ ├── NetworkManager.cs │ ├── NetworkManager.cs.meta │ ├── NetworkObject.cs │ └── NetworkObject.cs.meta │ ├── Player.cs │ └── Player.cs.meta ├── Packages └── manifest.json ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── PresetManager.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset └── UnityConnectSettings.asset └── readme.md /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store* 2 | ._* 3 | .Spotlight-V100 4 | .Trashes 5 | [Tt]humbs.db 6 | 7 | # Unity local/temp folders 8 | [Ll]ibrary/ 9 | [Tt]emp/ 10 | [Oo]bj/ 11 | [Bb]uild/ 12 | [Bb]uilt/ 13 | .vs/ 14 | 15 | # Autogenerated VS/MD solution and project files 16 | [Ee]xported[Oo]bj/ 17 | /*.csproj 18 | /*.unityproj 19 | /*.sln 20 | /*.suo 21 | /*.user 22 | /*.userprefs 23 | /*.pidb 24 | /*.booproj 25 | 26 | # Unity3D Generated File On Crash Reports 27 | sysinfo.txt -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "files.exclude": 3 | { 4 | "**/.DS_Store":true, 5 | "**/.git":true, 6 | "**/.gitignore":true, 7 | "**/.gitmodules":true, 8 | "**/*.booproj":true, 9 | "**/*.pidb":true, 10 | "**/*.suo":true, 11 | "**/*.user":true, 12 | "**/*.userprefs":true, 13 | "**/*.unityproj":true, 14 | "**/*.dll":true, 15 | "**/*.exe":true, 16 | "**/*.pdf":true, 17 | "**/*.mid":true, 18 | "**/*.midi":true, 19 | "**/*.wav":true, 20 | "**/*.gif":true, 21 | "**/*.ico":true, 22 | "**/*.jpg":true, 23 | "**/*.jpeg":true, 24 | "**/*.png":true, 25 | "**/*.psd":true, 26 | "**/*.tga":true, 27 | "**/*.tif":true, 28 | "**/*.tiff":true, 29 | "**/*.3ds":true, 30 | "**/*.3DS":true, 31 | "**/*.fbx":true, 32 | "**/*.FBX":true, 33 | "**/*.lxo":true, 34 | "**/*.LXO":true, 35 | "**/*.ma":true, 36 | "**/*.MA":true, 37 | "**/*.obj":true, 38 | "**/*.OBJ":true, 39 | "**/*.asset":true, 40 | "**/*.cubemap":true, 41 | "**/*.flare":true, 42 | "**/*.mat":true, 43 | "**/*.meta":true, 44 | "**/*.prefab":true, 45 | "**/*.unity":true, 46 | "build/":true, 47 | "Build/":true, 48 | "Library/":true, 49 | "library/":true, 50 | "obj/":true, 51 | "Obj/":true, 52 | "ProjectSettings/":true, 53 | "temp/":true, 54 | "Temp/":true 55 | } 56 | } -------------------------------------------------------------------------------- /Assets/ExternalAssets.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 74f2f23155f5a6d4eabfbbcc1fcc84b7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Car Script basic.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d71d5c7ebf532164d9e35dbec745a9ea 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Car Script basic/Docs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0de68261981652f478c2f2ecc64dedfb 3 | folderAsset: yes 4 | timeCreated: 1462776488 5 | licenseType: Store 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Car Script basic/Docs/Car_Script_basic.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Car Script basic/Docs/Car_Script_basic.pdf -------------------------------------------------------------------------------- /Assets/ExternalAssets/Car Script basic/Docs/Car_Script_basic.pdf.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 71f7cd14892423349a1925e81d95204b 3 | timeCreated: 1462571865 4 | licenseType: Store 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Car Script basic/Script.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 39da709d1c8f3894b99d4600171d6ad5 3 | folderAsset: yes 4 | timeCreated: 1462776498 5 | licenseType: Store 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Car Script basic/Script/Dot_Truck_Controller.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Car Script basic/Script/Dot_Truck_Controller.cs -------------------------------------------------------------------------------- /Assets/ExternalAssets/Car Script basic/Script/Dot_Truck_Controller.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c73e278ff2d2bc4b9b7e87a18cf892a 3 | timeCreated: 1457716825 4 | licenseType: Store 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 941e5e51577102a44a11f52758333628 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e6e9287b32c564f4394d498494ba1f9c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/FocE.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d258bf30c85dc894695850b37edb5d38 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/FocE/FocE_Carbody08.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: FocE_Carbody08 10 | m_Shader: {fileID: 47, 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: 2800000, guid: 4333fb712d1993c45a86d682e9896726, type: 3} 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 | - _SpecGlossMap: 58 | m_Texture: {fileID: 0} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 1 67 | - _Glossiness: 0 68 | - _GlossyReflections: 1 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 1, g: 1, b: 1, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 81 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/FocE/FocE_Carbody08.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 87a86393e76544443a2d636278441df4 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/FocE/FocE_Windows.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: FocE_Windows 10 | m_Shader: {fileID: 47, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _ALPHAPREMULTIPLY_ON 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: 3000 16 | stringTagMap: 17 | RenderType: Transparent 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 2800000, guid: 63513073a217801459bfa6d0f12c8f18, type: 3} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | - _SpecGlossMap: 59 | m_Texture: {fileID: 0} 60 | m_Scale: {x: 1, y: 1} 61 | m_Offset: {x: 0, y: 0} 62 | m_Floats: 63 | - _BumpScale: 1 64 | - _Cutoff: 0.5 65 | - _DetailNormalMapScale: 1 66 | - _DstBlend: 10 67 | - _GlossMapScale: 1 68 | - _Glossiness: 0 69 | - _GlossyReflections: 1 70 | - _Metallic: 0 71 | - _Mode: 3 72 | - _OcclusionStrength: 1 73 | - _Parallax: 0.02 74 | - _SmoothnessTextureChannel: 0 75 | - _SpecularHighlights: 1 76 | - _SrcBlend: 1 77 | - _UVSec: 0 78 | - _ZWrite: 0 79 | m_Colors: 80 | - _Color: {r: 1, g: 1, b: 1, a: 1} 81 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 82 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/FocE/FocE_Windows.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fbdeb30b6baceed46be73ac3fc3ceb13 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 741daec4feb6cec489bfa63d1d4fb903 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Brackedisk.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Brackedisk 10 | m_Shader: {fileID: 47, 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: 2800000, guid: c5b3020d56c480742a976e2e3db1dbde, type: 3} 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 | - _SpecGlossMap: 58 | m_Texture: {fileID: 0} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 1 67 | - _Glossiness: 0.383 68 | - _GlossyReflections: 1 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 0.5849056, g: 0.5849056, b: 0.5849056, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 81 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Brackedisk.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed25f86fe6b20c74393571559dc9089b 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Engine.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Engine 10 | m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _SPECGLOSSMAP 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: 2800000, guid: a585889e5ca8a3a4d9900a23fb375a0e, type: 3} 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 | - _SpecGlossMap: 58 | m_Texture: {fileID: 2800000, guid: e1f96232edadc86449c55694ef0037e3, type: 3} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 1 67 | - _Glossiness: 0 68 | - _GlossyReflections: 1 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 1, g: 1, b: 1, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 81 | - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} 82 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Engine.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a99e8e9941ca564193b9b3fa8ecb699 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Floor.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Floor 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 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.2830189, g: 0.2830189, b: 0.2830189, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Floor.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 02df6f6fbb3eea845a3dec3a1db888b7 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Glass.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Glass 10 | m_Shader: {fileID: 47, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _ALPHAPREMULTIPLY_ON 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: 3000 16 | stringTagMap: 17 | RenderType: Transparent 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | - _SpecGlossMap: 59 | m_Texture: {fileID: 0} 60 | m_Scale: {x: 1, y: 1} 61 | m_Offset: {x: 0, y: 0} 62 | m_Floats: 63 | - _BumpScale: 1 64 | - _Cutoff: 0.5 65 | - _DetailNormalMapScale: 1 66 | - _DstBlend: 10 67 | - _GlossMapScale: 1 68 | - _Glossiness: 0 69 | - _GlossyReflections: 1 70 | - _Metallic: 0 71 | - _Mode: 3 72 | - _OcclusionStrength: 1 73 | - _Parallax: 0.02 74 | - _SmoothnessTextureChannel: 0 75 | - _SpecularHighlights: 1 76 | - _SrcBlend: 1 77 | - _UVSec: 0 78 | - _ZWrite: 0 79 | m_Colors: 80 | - _Color: {r: 0.2830189, g: 0.2830189, b: 0.2830189, a: 0.34117648} 81 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 82 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Glass.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 93caa85eb772a2c49b624fc6755fe9f6 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Interior.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Interior 10 | m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _SPECGLOSSMAP 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: 2800000, guid: a0ff94ff9a863ef4db36de560c4d95b3, type: 3} 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 | - _SpecGlossMap: 58 | m_Texture: {fileID: 2800000, guid: a17b864812a89134f8276f83a00cdebc, type: 3} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 1 67 | - _Glossiness: 0 68 | - _GlossyReflections: 1 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 1, g: 1, b: 1, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 81 | - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} 82 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Interior.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f0f336f751ec48046a16d7a5565d5a68 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Rim.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Rim 10 | m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _SPECGLOSSMAP 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: 2800000, guid: 4c8254837174a9746bcda3bd51bd9d77, type: 3} 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 | - _SpecGlossMap: 58 | m_Texture: {fileID: 2800000, guid: 4c8254837174a9746bcda3bd51bd9d77, type: 3} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 0.7 67 | - _Glossiness: 0 68 | - _GlossyReflections: 1 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 1, g: 1, b: 1, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 81 | - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} 82 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Rim.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d2adfd07b5055449a30cccc00d426e4 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/RimIn.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: RimIn 10 | m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _SPECGLOSSMAP 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: 2800000, guid: a90c14cab06d833409247cb1b7351a9b, type: 3} 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 | - _SpecGlossMap: 58 | m_Texture: {fileID: 2800000, guid: 68e9444cb8e00ea43889e070ec62afa9, type: 3} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 0.7 67 | - _Glossiness: 0 68 | - _GlossyReflections: 1 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 1, g: 1, b: 1, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 81 | - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} 82 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/RimIn.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41464fb37b851074babaea7f09d15585 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Sidewall.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Sidewall 10 | m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _SPECGLOSSMAP 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: 2800000, guid: a90c14cab06d833409247cb1b7351a9b, type: 3} 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 | - _SpecGlossMap: 58 | m_Texture: {fileID: 2800000, guid: 68e9444cb8e00ea43889e070ec62afa9, type: 3} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 0.785 67 | - _Glossiness: 0 68 | - _GlossyReflections: 1 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 1, g: 1, b: 1, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 81 | - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} 82 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Sidewall.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b92baab000a3ef64ebab89273e82ebed 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Tread.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Tread 10 | m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _NORMALMAP _SPECGLOSSMAP 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: 2800000, guid: 6889322fc8b586b4cbbecbfb6cf90ea5, type: 3} 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: 2800000, guid: d536e25545ee43d409c35b8d850c002e, type: 3} 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 | - _SpecGlossMap: 58 | m_Texture: {fileID: 2800000, guid: 38b65737a41c6c145ad035588789361e, type: 3} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 0.554 67 | - _Glossiness: 0 68 | - _GlossyReflections: 1 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 1, g: 1, b: 1, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 81 | - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} 82 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/Tread.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dfe35f6e8cdbce24baf1ff1485d52c4d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/wiring.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_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: wiring 10 | m_Shader: {fileID: 47, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _ALPHAPREMULTIPLY_ON 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: 3000 16 | stringTagMap: 17 | RenderType: Transparent 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 2800000, guid: 93b005da0b748774788ec1c77a7057df, type: 3} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | - _SpecGlossMap: 59 | m_Texture: {fileID: 0} 60 | m_Scale: {x: 1, y: 1} 61 | m_Offset: {x: 0, y: 0} 62 | m_Floats: 63 | - _BumpScale: 1 64 | - _Cutoff: 0.5 65 | - _DetailNormalMapScale: 1 66 | - _DstBlend: 10 67 | - _GlossMapScale: 1 68 | - _Glossiness: 1 69 | - _GlossyReflections: 1 70 | - _Metallic: 0 71 | - _Mode: 3 72 | - _OcclusionStrength: 1 73 | - _Parallax: 0.02 74 | - _SmoothnessTextureChannel: 0 75 | - _SpecularHighlights: 1 76 | - _SrcBlend: 1 77 | - _UVSec: 0 78 | - _ZWrite: 0 79 | m_Colors: 80 | - _Color: {r: 1, g: 1, b: 1, a: 1} 81 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 82 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Materials/_Common/wiring.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d28c2d9676e5e0488c3db0f72930843 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d67ac6c9858122b4a8e1042c09e889fa 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes/Floor.FBX: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes/Floor.FBX -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes/Floor.FBX.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 20b56c9cb66d69041bdcd27809e9b34b 3 | ModelImporter: 4 | serializedVersion: 23 5 | fileIDToRecycleName: 6 | 100000: //RootNode 7 | 400000: //RootNode 8 | 2100000: No Name 9 | 2300000: //RootNode 10 | 3300000: //RootNode 11 | 4300000: Floor 12 | externalObjects: {} 13 | materials: 14 | importMaterials: 1 15 | materialName: 0 16 | materialSearch: 1 17 | materialLocation: 1 18 | animations: 19 | legacyGenerateAnimations: 4 20 | bakeSimulation: 0 21 | resampleCurves: 1 22 | optimizeGameObjects: 0 23 | motionNodeName: 24 | rigImportErrors: 25 | rigImportWarnings: 26 | animationImportErrors: 27 | animationImportWarnings: 28 | animationRetargetingWarnings: 29 | animationDoRetargetingWarnings: 0 30 | importAnimatedCustomProperties: 0 31 | importConstraints: 0 32 | animationCompression: 1 33 | animationRotationError: 0.5 34 | animationPositionError: 0.5 35 | animationScaleError: 0.5 36 | animationWrapMode: 0 37 | extraExposedTransformPaths: [] 38 | extraUserProperties: [] 39 | clipAnimations: [] 40 | isReadable: 1 41 | meshes: 42 | lODScreenPercentages: [] 43 | globalScale: 1 44 | meshCompression: 0 45 | addColliders: 0 46 | importVisibility: 1 47 | importBlendShapes: 1 48 | importCameras: 1 49 | importLights: 1 50 | swapUVChannels: 0 51 | generateSecondaryUV: 0 52 | useFileUnits: 1 53 | optimizeMeshForGPU: 1 54 | keepQuads: 0 55 | weldVertices: 1 56 | preserveHierarchy: 0 57 | indexFormat: 0 58 | secondaryUVAngleDistortion: 8 59 | secondaryUVAreaDistortion: 15.000001 60 | secondaryUVHardAngle: 88 61 | secondaryUVPackMargin: 4 62 | useFileScale: 1 63 | previousCalculatedGlobalScale: 1 64 | hasPreviousCalculatedGlobalScale: 0 65 | tangentSpace: 66 | normalSmoothAngle: 60 67 | normalImportMode: 0 68 | tangentImportMode: 3 69 | normalCalculationMode: 4 70 | importAnimation: 1 71 | copyAvatar: 0 72 | humanDescription: 73 | serializedVersion: 2 74 | human: [] 75 | skeleton: [] 76 | armTwist: 0.5 77 | foreArmTwist: 0.5 78 | upperLegTwist: 0.5 79 | legTwist: 0.5 80 | armStretch: 0.05 81 | legStretch: 0.05 82 | feetSpacing: 0 83 | rootMotionBoneName: 84 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1} 85 | hasTranslationDoF: 0 86 | hasExtraRoot: 0 87 | skeletonHasParents: 1 88 | lastHumanDescriptionAvatarSource: {instanceID: 0} 89 | animationType: 0 90 | humanoidOversampling: 1 91 | additionalBone: 0 92 | userData: 93 | assetBundleName: 94 | assetBundleVariant: 95 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes/FocE.FBX: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes/FocE.FBX -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes/FocE.FBX.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eeb8d6fd760035741a64df2118f7b69a 3 | ModelImporter: 4 | serializedVersion: 23 5 | fileIDToRecycleName: 6 | 100000: //RootNode 7 | 100002: FocE_Bumper 8 | 100004: FocE_Carbody 9 | 100006: FocE_Collision 10 | 100008: FocE_Front 11 | 100010: FocE_Hood 12 | 400000: //RootNode 13 | 400002: FocE_Bumper 14 | 400004: FocE_Carbody 15 | 400006: FocE_Collision 16 | 400008: FocE_Front 17 | 400010: FocE_Hood 18 | 2100000: FocE_Carbody 19 | 2100002: 'Material #2' 20 | 2100004: FocE_Windows 21 | 2100006: 'Material #5' 22 | 2100008: 'Material #1' 23 | 2100010: 'Material #4' 24 | 2100012: Foc_Carbody 25 | 2300000: FocE_Bumper 26 | 2300002: FocE_Carbody 27 | 2300004: FocE_Collision 28 | 2300006: FocE_Front 29 | 2300008: FocE_Hood 30 | 3300000: FocE_Bumper 31 | 3300002: FocE_Carbody 32 | 3300004: FocE_Collision 33 | 3300006: FocE_Front 34 | 3300008: FocE_Hood 35 | 4300000: FocE_Carbody 36 | 4300002: FocE_Hood 37 | 4300004: FocE_Front 38 | 4300006: FocE_Bumper 39 | 4300008: FocE_Collision 40 | externalObjects: 41 | - first: 42 | type: UnityEngine:Material 43 | assembly: UnityEngine.CoreModule 44 | name: FocE_Carbody 45 | second: {fileID: 2100000, guid: bf7d126ebb4420f4b946dde888b7a49e, type: 2} 46 | - first: 47 | type: UnityEngine:Material 48 | assembly: UnityEngine.CoreModule 49 | name: FocE_Windows 50 | second: {fileID: 2100000, guid: fbdeb30b6baceed46be73ac3fc3ceb13, type: 2} 51 | - first: 52 | type: UnityEngine:Material 53 | assembly: UnityEngine.CoreModule 54 | name: Foc_Carbody 55 | second: {fileID: 2100000, guid: 5acc745969936314ca577a8d551cb6c4, type: 2} 56 | - first: 57 | type: UnityEngine:Material 58 | assembly: UnityEngine.CoreModule 59 | name: 'Material #1' 60 | second: {fileID: 2100000, guid: ff22ae2b25ad468419e1f91d6659886c, type: 2} 61 | - first: 62 | type: UnityEngine:Material 63 | assembly: UnityEngine.CoreModule 64 | name: 'Material #2' 65 | second: {fileID: 2100000, guid: ff81c5ba24405d044b6e7b05963ba71d, type: 2} 66 | - first: 67 | type: UnityEngine:Material 68 | assembly: UnityEngine.CoreModule 69 | name: 'Material #4' 70 | second: {fileID: 2100000, guid: dd6805fbad3b1bc45b98190c78ed4fcd, type: 2} 71 | - first: 72 | type: UnityEngine:Material 73 | assembly: UnityEngine.CoreModule 74 | name: 'Material #5' 75 | second: {fileID: 2100000, guid: 1a54b1336834b2c4db3d7e50786c0ffb, type: 2} 76 | materials: 77 | importMaterials: 1 78 | materialName: 0 79 | materialSearch: 1 80 | materialLocation: 1 81 | animations: 82 | legacyGenerateAnimations: 4 83 | bakeSimulation: 0 84 | resampleCurves: 1 85 | optimizeGameObjects: 0 86 | motionNodeName: 87 | rigImportErrors: 88 | rigImportWarnings: 89 | animationImportErrors: 90 | animationImportWarnings: 91 | animationRetargetingWarnings: 92 | animationDoRetargetingWarnings: 0 93 | importAnimatedCustomProperties: 0 94 | importConstraints: 0 95 | animationCompression: 1 96 | animationRotationError: 0.5 97 | animationPositionError: 0.5 98 | animationScaleError: 0.5 99 | animationWrapMode: 0 100 | extraExposedTransformPaths: [] 101 | extraUserProperties: [] 102 | clipAnimations: [] 103 | isReadable: 1 104 | meshes: 105 | lODScreenPercentages: [] 106 | globalScale: 1 107 | meshCompression: 0 108 | addColliders: 0 109 | importVisibility: 1 110 | importBlendShapes: 1 111 | importCameras: 1 112 | importLights: 1 113 | swapUVChannels: 0 114 | generateSecondaryUV: 0 115 | useFileUnits: 1 116 | optimizeMeshForGPU: 1 117 | keepQuads: 0 118 | weldVertices: 1 119 | preserveHierarchy: 0 120 | indexFormat: 0 121 | secondaryUVAngleDistortion: 8 122 | secondaryUVAreaDistortion: 15.000001 123 | secondaryUVHardAngle: 88 124 | secondaryUVPackMargin: 4 125 | useFileScale: 1 126 | previousCalculatedGlobalScale: 1 127 | hasPreviousCalculatedGlobalScale: 0 128 | tangentSpace: 129 | normalSmoothAngle: 60 130 | normalImportMode: 0 131 | tangentImportMode: 3 132 | normalCalculationMode: 4 133 | importAnimation: 1 134 | copyAvatar: 0 135 | humanDescription: 136 | serializedVersion: 2 137 | human: [] 138 | skeleton: [] 139 | armTwist: 0.5 140 | foreArmTwist: 0.5 141 | upperLegTwist: 0.5 142 | legTwist: 0.5 143 | armStretch: 0.05 144 | legStretch: 0.05 145 | feetSpacing: 0 146 | rootMotionBoneName: 147 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1} 148 | hasTranslationDoF: 0 149 | hasExtraRoot: 0 150 | skeletonHasParents: 1 151 | lastHumanDescriptionAvatarSource: {instanceID: 0} 152 | animationType: 0 153 | humanoidOversampling: 1 154 | additionalBone: 0 155 | userData: 156 | assetBundleName: 157 | assetBundleVariant: 158 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes/Tires.FBX: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes/Tires.FBX -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Meshes/Tires.FBX.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8f43304905a758f499e0a683f44bd9a6 3 | ModelImporter: 4 | serializedVersion: 23 5 | fileIDToRecycleName: 6 | 100000: CIVIC_TLF 7 | 100002: CIVIC_TLR 8 | 100004: CIVIC_TRF 9 | 100006: CIVIC_TRR 10 | 100008: //RootNode 11 | 100010: Civ_TLF 12 | 100012: Civ_TLR 13 | 100014: Civ_TRF 14 | 100016: Civ_TRR 15 | 400000: CIVIC_TLF 16 | 400002: CIVIC_TLR 17 | 400004: CIVIC_TRF 18 | 400006: CIVIC_TRR 19 | 400008: //RootNode 20 | 400010: Civ_TLF 21 | 400012: Civ_TLR 22 | 400014: Civ_TRF 23 | 400016: Civ_TRR 24 | 2100000: Sidewall 25 | 2100002: RimIn 26 | 2100004: Tread 27 | 2100006: Brackedisk 28 | 2100008: Rim 29 | 2300000: CIVIC_TLF 30 | 2300002: CIVIC_TLR 31 | 2300004: CIVIC_TRF 32 | 2300006: CIVIC_TRR 33 | 2300008: Civ_TLF 34 | 2300010: Civ_TLR 35 | 2300012: Civ_TRF 36 | 2300014: Civ_TRR 37 | 3300000: CIVIC_TLF 38 | 3300002: CIVIC_TLR 39 | 3300004: CIVIC_TRF 40 | 3300006: CIVIC_TRR 41 | 3300008: Civ_TLF 42 | 3300010: Civ_TLR 43 | 3300012: Civ_TRF 44 | 3300014: Civ_TRR 45 | 4300000: CIVIC_TLF 46 | 4300002: CIVIC_TLR 47 | 4300004: CIVIC_TRF 48 | 4300006: CIVIC_TRR 49 | 4300008: Civ_TLF 50 | 4300010: Civ_TLR 51 | 4300012: Civ_TRF 52 | 4300014: Civ_TRR 53 | externalObjects: 54 | - first: 55 | type: UnityEngine:Material 56 | assembly: UnityEngine.CoreModule 57 | name: Brackedisk 58 | second: {fileID: 2100000, guid: ed25f86fe6b20c74393571559dc9089b, type: 2} 59 | - first: 60 | type: UnityEngine:Material 61 | assembly: UnityEngine.CoreModule 62 | name: Rim 63 | second: {fileID: 2100000, guid: 0d2adfd07b5055449a30cccc00d426e4, type: 2} 64 | - first: 65 | type: UnityEngine:Material 66 | assembly: UnityEngine.CoreModule 67 | name: RimIn 68 | second: {fileID: 2100000, guid: 41464fb37b851074babaea7f09d15585, type: 2} 69 | - first: 70 | type: UnityEngine:Material 71 | assembly: UnityEngine.CoreModule 72 | name: Sidewall 73 | second: {fileID: 2100000, guid: b92baab000a3ef64ebab89273e82ebed, type: 2} 74 | - first: 75 | type: UnityEngine:Material 76 | assembly: UnityEngine.CoreModule 77 | name: Tread 78 | second: {fileID: 2100000, guid: dfe35f6e8cdbce24baf1ff1485d52c4d, type: 2} 79 | - first: 80 | type: UnityEngine:Texture2D 81 | assembly: UnityEngine.CoreModule 82 | name: Brakedisc 83 | second: {fileID: 2800000, guid: c5b3020d56c480742a976e2e3db1dbde, type: 3} 84 | - first: 85 | type: UnityEngine:Texture2D 86 | assembly: UnityEngine.CoreModule 87 | name: Rim 88 | second: {fileID: 2800000, guid: 4c8254837174a9746bcda3bd51bd9d77, type: 3} 89 | - first: 90 | type: UnityEngine:Texture2D 91 | assembly: UnityEngine.CoreModule 92 | name: SIDEWALL 93 | second: {fileID: 2800000, guid: a90c14cab06d833409247cb1b7351a9b, type: 3} 94 | - first: 95 | type: UnityEngine:Texture2D 96 | assembly: UnityEngine.CoreModule 97 | name: TREAD 98 | second: {fileID: 2800000, guid: d536e25545ee43d409c35b8d850c002e, type: 3} 99 | materials: 100 | importMaterials: 1 101 | materialName: 0 102 | materialSearch: 1 103 | materialLocation: 1 104 | animations: 105 | legacyGenerateAnimations: 4 106 | bakeSimulation: 0 107 | resampleCurves: 1 108 | optimizeGameObjects: 0 109 | motionNodeName: 110 | rigImportErrors: 111 | rigImportWarnings: 112 | animationImportErrors: 113 | animationImportWarnings: 114 | animationRetargetingWarnings: 115 | animationDoRetargetingWarnings: 0 116 | importAnimatedCustomProperties: 0 117 | importConstraints: 0 118 | animationCompression: 1 119 | animationRotationError: 0.5 120 | animationPositionError: 0.5 121 | animationScaleError: 0.5 122 | animationWrapMode: 0 123 | extraExposedTransformPaths: [] 124 | extraUserProperties: [] 125 | clipAnimations: [] 126 | isReadable: 1 127 | meshes: 128 | lODScreenPercentages: [] 129 | globalScale: 1 130 | meshCompression: 0 131 | addColliders: 0 132 | importVisibility: 1 133 | importBlendShapes: 1 134 | importCameras: 1 135 | importLights: 1 136 | swapUVChannels: 0 137 | generateSecondaryUV: 0 138 | useFileUnits: 1 139 | optimizeMeshForGPU: 1 140 | keepQuads: 0 141 | weldVertices: 1 142 | preserveHierarchy: 0 143 | indexFormat: 0 144 | secondaryUVAngleDistortion: 8 145 | secondaryUVAreaDistortion: 15.000001 146 | secondaryUVHardAngle: 88 147 | secondaryUVPackMargin: 4 148 | useFileScale: 1 149 | previousCalculatedGlobalScale: 1 150 | hasPreviousCalculatedGlobalScale: 0 151 | tangentSpace: 152 | normalSmoothAngle: 60 153 | normalImportMode: 0 154 | tangentImportMode: 3 155 | normalCalculationMode: 4 156 | importAnimation: 1 157 | copyAvatar: 0 158 | humanDescription: 159 | serializedVersion: 2 160 | human: [] 161 | skeleton: [] 162 | armTwist: 0.5 163 | foreArmTwist: 0.5 164 | upperLegTwist: 0.5 165 | legTwist: 0.5 166 | armStretch: 0.05 167 | legStretch: 0.05 168 | feetSpacing: 0 169 | rootMotionBoneName: 170 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1} 171 | hasTranslationDoF: 0 172 | hasExtraRoot: 0 173 | skeletonHasParents: 1 174 | lastHumanDescriptionAvatarSource: {instanceID: 0} 175 | animationType: 0 176 | humanoidOversampling: 1 177 | additionalBone: 0 178 | userData: 179 | assetBundleName: 180 | assetBundleVariant: 181 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48234114bc6e0a14f8a3b9a8503d5fd8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Prefabs/Floor.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_SourcePrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1000373801300752} 13 | m_IsPrefabAsset: 1 14 | --- !u!1 &1000373801300752 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_CorrespondingSourceObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 6 20 | m_Component: 21 | - component: {fileID: 4797186684410950} 22 | - component: {fileID: 33703960817973592} 23 | - component: {fileID: 23946094244664038} 24 | - component: {fileID: 64687531579251072} 25 | m_Layer: 0 26 | m_Name: Floor 27 | m_TagString: Untagged 28 | m_Icon: {fileID: 0} 29 | m_NavMeshLayer: 0 30 | m_StaticEditorFlags: 0 31 | m_IsActive: 1 32 | --- !u!4 &4797186684410950 33 | Transform: 34 | m_ObjectHideFlags: 1 35 | m_CorrespondingSourceObject: {fileID: 0} 36 | m_PrefabInternal: {fileID: 100100000} 37 | m_GameObject: {fileID: 1000373801300752} 38 | m_LocalRotation: {x: 0.000000021855694, y: 0, z: -0, w: 1} 39 | m_LocalPosition: {x: -0, y: 0, z: 0} 40 | m_LocalScale: {x: 1, y: 1, z: 1} 41 | m_Children: [] 42 | m_Father: {fileID: 0} 43 | m_RootOrder: 0 44 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 45 | --- !u!23 &23946094244664038 46 | MeshRenderer: 47 | m_ObjectHideFlags: 1 48 | m_CorrespondingSourceObject: {fileID: 0} 49 | m_PrefabInternal: {fileID: 100100000} 50 | m_GameObject: {fileID: 1000373801300752} 51 | m_Enabled: 1 52 | m_CastShadows: 1 53 | m_ReceiveShadows: 1 54 | m_DynamicOccludee: 1 55 | m_MotionVectors: 1 56 | m_LightProbeUsage: 1 57 | m_ReflectionProbeUsage: 1 58 | m_RenderingLayerMask: 4294967295 59 | m_Materials: 60 | - {fileID: 2100000, guid: 02df6f6fbb3eea845a3dec3a1db888b7, type: 2} 61 | m_StaticBatchInfo: 62 | firstSubMesh: 0 63 | subMeshCount: 0 64 | m_StaticBatchRoot: {fileID: 0} 65 | m_ProbeAnchor: {fileID: 0} 66 | m_LightProbeVolumeOverride: {fileID: 0} 67 | m_ScaleInLightmap: 1 68 | m_PreserveUVs: 0 69 | m_IgnoreNormalsForChartDetection: 0 70 | m_ImportantGI: 0 71 | m_StitchLightmapSeams: 0 72 | m_SelectedEditorRenderState: 3 73 | m_MinimumChartSize: 4 74 | m_AutoUVMaxDistance: 0.5 75 | m_AutoUVMaxAngle: 89 76 | m_LightmapParameters: {fileID: 0} 77 | m_SortingLayerID: 0 78 | m_SortingLayer: 0 79 | m_SortingOrder: 0 80 | --- !u!33 &33703960817973592 81 | MeshFilter: 82 | m_ObjectHideFlags: 1 83 | m_CorrespondingSourceObject: {fileID: 0} 84 | m_PrefabInternal: {fileID: 100100000} 85 | m_GameObject: {fileID: 1000373801300752} 86 | m_Mesh: {fileID: 4300000, guid: 20b56c9cb66d69041bdcd27809e9b34b, type: 3} 87 | --- !u!64 &64687531579251072 88 | MeshCollider: 89 | m_ObjectHideFlags: 1 90 | m_CorrespondingSourceObject: {fileID: 0} 91 | m_PrefabInternal: {fileID: 100100000} 92 | m_GameObject: {fileID: 1000373801300752} 93 | m_Material: {fileID: 0} 94 | m_IsTrigger: 0 95 | m_Enabled: 1 96 | serializedVersion: 3 97 | m_Convex: 0 98 | m_CookingOptions: 14 99 | m_SkinWidth: 0.01 100 | m_Mesh: {fileID: 4300000, guid: 20b56c9cb66d69041bdcd27809e9b34b, type: 3} 101 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Prefabs/Floor.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5a6081ffcbefb814491c0e4a2f84206a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Prefabs/FocE08.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 764bc68a1a0dd384184fdeedf75892f9 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Prefabs/Tires.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_SourcePrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1689570964630316} 13 | m_IsPrefabAsset: 1 14 | --- !u!1 &1166948455886960 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_CorrespondingSourceObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 6 20 | m_Component: 21 | - component: {fileID: 4338541621196754} 22 | - component: {fileID: 33738123838584884} 23 | - component: {fileID: 23468089378888676} 24 | m_Layer: 0 25 | m_Name: Tire_LF 26 | m_TagString: Untagged 27 | m_Icon: {fileID: 0} 28 | m_NavMeshLayer: 0 29 | m_StaticEditorFlags: 0 30 | m_IsActive: 1 31 | --- !u!1 &1341019773796300 32 | GameObject: 33 | m_ObjectHideFlags: 0 34 | m_CorrespondingSourceObject: {fileID: 0} 35 | m_PrefabInternal: {fileID: 100100000} 36 | serializedVersion: 6 37 | m_Component: 38 | - component: {fileID: 4822354386096834} 39 | - component: {fileID: 33141269664744956} 40 | - component: {fileID: 23757823457161520} 41 | m_Layer: 0 42 | m_Name: Tire_LR 43 | m_TagString: Untagged 44 | m_Icon: {fileID: 0} 45 | m_NavMeshLayer: 0 46 | m_StaticEditorFlags: 0 47 | m_IsActive: 1 48 | --- !u!1 &1373530343864186 49 | GameObject: 50 | m_ObjectHideFlags: 0 51 | m_CorrespondingSourceObject: {fileID: 0} 52 | m_PrefabInternal: {fileID: 100100000} 53 | serializedVersion: 6 54 | m_Component: 55 | - component: {fileID: 4598993390499592} 56 | - component: {fileID: 33186282570722646} 57 | - component: {fileID: 23195981289396342} 58 | m_Layer: 0 59 | m_Name: Tire_RR 60 | m_TagString: Untagged 61 | m_Icon: {fileID: 0} 62 | m_NavMeshLayer: 0 63 | m_StaticEditorFlags: 0 64 | m_IsActive: 1 65 | --- !u!1 &1689570964630316 66 | GameObject: 67 | m_ObjectHideFlags: 0 68 | m_CorrespondingSourceObject: {fileID: 0} 69 | m_PrefabInternal: {fileID: 100100000} 70 | serializedVersion: 6 71 | m_Component: 72 | - component: {fileID: 4202769853023384} 73 | m_Layer: 0 74 | m_Name: Tires 75 | m_TagString: Untagged 76 | m_Icon: {fileID: 0} 77 | m_NavMeshLayer: 0 78 | m_StaticEditorFlags: 0 79 | m_IsActive: 1 80 | --- !u!1 &1961783148707774 81 | GameObject: 82 | m_ObjectHideFlags: 0 83 | m_CorrespondingSourceObject: {fileID: 0} 84 | m_PrefabInternal: {fileID: 100100000} 85 | serializedVersion: 6 86 | m_Component: 87 | - component: {fileID: 4678782509644320} 88 | - component: {fileID: 33683413475557422} 89 | - component: {fileID: 23188193264933666} 90 | m_Layer: 0 91 | m_Name: Tire_RF 92 | m_TagString: Untagged 93 | m_Icon: {fileID: 0} 94 | m_NavMeshLayer: 0 95 | m_StaticEditorFlags: 0 96 | m_IsActive: 1 97 | --- !u!4 &4202769853023384 98 | Transform: 99 | m_ObjectHideFlags: 1 100 | m_CorrespondingSourceObject: {fileID: 0} 101 | m_PrefabInternal: {fileID: 100100000} 102 | m_GameObject: {fileID: 1689570964630316} 103 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 104 | m_LocalPosition: {x: 0, y: 0, z: 0} 105 | m_LocalScale: {x: 1, y: 1, z: 1} 106 | m_Children: 107 | - {fileID: 4338541621196754} 108 | - {fileID: 4822354386096834} 109 | - {fileID: 4678782509644320} 110 | - {fileID: 4598993390499592} 111 | m_Father: {fileID: 0} 112 | m_RootOrder: 0 113 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 114 | --- !u!4 &4338541621196754 115 | Transform: 116 | m_ObjectHideFlags: 1 117 | m_CorrespondingSourceObject: {fileID: 0} 118 | m_PrefabInternal: {fileID: 100100000} 119 | m_GameObject: {fileID: 1166948455886960} 120 | m_LocalRotation: {x: 0.000000021855694, y: 0, z: -0, w: 1} 121 | m_LocalPosition: {x: -0.789, y: 0.34056628, z: 1.3854136} 122 | m_LocalScale: {x: 1, y: 1, z: 1} 123 | m_Children: [] 124 | m_Father: {fileID: 4202769853023384} 125 | m_RootOrder: 0 126 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 127 | --- !u!4 &4598993390499592 128 | Transform: 129 | m_ObjectHideFlags: 1 130 | m_CorrespondingSourceObject: {fileID: 0} 131 | m_PrefabInternal: {fileID: 100100000} 132 | m_GameObject: {fileID: 1373530343864186} 133 | m_LocalRotation: {x: 0.000000021855694, y: 0, z: -0, w: 1} 134 | m_LocalPosition: {x: 0.789, y: 0.34056628, z: -1.2983892} 135 | m_LocalScale: {x: 1, y: 1, z: 1} 136 | m_Children: [] 137 | m_Father: {fileID: 4202769853023384} 138 | m_RootOrder: 3 139 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 140 | --- !u!4 &4678782509644320 141 | Transform: 142 | m_ObjectHideFlags: 1 143 | m_CorrespondingSourceObject: {fileID: 0} 144 | m_PrefabInternal: {fileID: 100100000} 145 | m_GameObject: {fileID: 1961783148707774} 146 | m_LocalRotation: {x: 0.000000021855694, y: 0, z: -0, w: 1} 147 | m_LocalPosition: {x: 0.789, y: 0.34056628, z: 1.3854136} 148 | m_LocalScale: {x: 1, y: 1, z: 1} 149 | m_Children: [] 150 | m_Father: {fileID: 4202769853023384} 151 | m_RootOrder: 2 152 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 153 | --- !u!4 &4822354386096834 154 | Transform: 155 | m_ObjectHideFlags: 1 156 | m_CorrespondingSourceObject: {fileID: 0} 157 | m_PrefabInternal: {fileID: 100100000} 158 | m_GameObject: {fileID: 1341019773796300} 159 | m_LocalRotation: {x: 0.000000021855694, y: 0, z: -0, w: 1} 160 | m_LocalPosition: {x: -0.78929836, y: 0.34056628, z: -1.2983892} 161 | m_LocalScale: {x: 1, y: 1, z: 1} 162 | m_Children: [] 163 | m_Father: {fileID: 4202769853023384} 164 | m_RootOrder: 1 165 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 166 | --- !u!23 &23188193264933666 167 | MeshRenderer: 168 | m_ObjectHideFlags: 1 169 | m_CorrespondingSourceObject: {fileID: 0} 170 | m_PrefabInternal: {fileID: 100100000} 171 | m_GameObject: {fileID: 1961783148707774} 172 | m_Enabled: 1 173 | m_CastShadows: 1 174 | m_ReceiveShadows: 1 175 | m_DynamicOccludee: 1 176 | m_MotionVectors: 1 177 | m_LightProbeUsage: 1 178 | m_ReflectionProbeUsage: 1 179 | m_RenderingLayerMask: 4294967295 180 | m_Materials: 181 | - {fileID: 2100000, guid: b92baab000a3ef64ebab89273e82ebed, type: 2} 182 | - {fileID: 2100000, guid: dfe35f6e8cdbce24baf1ff1485d52c4d, type: 2} 183 | - {fileID: 2100000, guid: ed25f86fe6b20c74393571559dc9089b, type: 2} 184 | - {fileID: 2100000, guid: 0d2adfd07b5055449a30cccc00d426e4, type: 2} 185 | m_StaticBatchInfo: 186 | firstSubMesh: 0 187 | subMeshCount: 0 188 | m_StaticBatchRoot: {fileID: 0} 189 | m_ProbeAnchor: {fileID: 0} 190 | m_LightProbeVolumeOverride: {fileID: 0} 191 | m_ScaleInLightmap: 1 192 | m_PreserveUVs: 0 193 | m_IgnoreNormalsForChartDetection: 0 194 | m_ImportantGI: 0 195 | m_StitchLightmapSeams: 0 196 | m_SelectedEditorRenderState: 3 197 | m_MinimumChartSize: 4 198 | m_AutoUVMaxDistance: 0.5 199 | m_AutoUVMaxAngle: 89 200 | m_LightmapParameters: {fileID: 0} 201 | m_SortingLayerID: 0 202 | m_SortingLayer: 0 203 | m_SortingOrder: 0 204 | --- !u!23 &23195981289396342 205 | MeshRenderer: 206 | m_ObjectHideFlags: 1 207 | m_CorrespondingSourceObject: {fileID: 0} 208 | m_PrefabInternal: {fileID: 100100000} 209 | m_GameObject: {fileID: 1373530343864186} 210 | m_Enabled: 1 211 | m_CastShadows: 1 212 | m_ReceiveShadows: 1 213 | m_DynamicOccludee: 1 214 | m_MotionVectors: 1 215 | m_LightProbeUsage: 1 216 | m_ReflectionProbeUsage: 1 217 | m_RenderingLayerMask: 4294967295 218 | m_Materials: 219 | - {fileID: 2100000, guid: b92baab000a3ef64ebab89273e82ebed, type: 2} 220 | - {fileID: 2100000, guid: dfe35f6e8cdbce24baf1ff1485d52c4d, type: 2} 221 | - {fileID: 2100000, guid: ed25f86fe6b20c74393571559dc9089b, type: 2} 222 | - {fileID: 2100000, guid: 0d2adfd07b5055449a30cccc00d426e4, type: 2} 223 | m_StaticBatchInfo: 224 | firstSubMesh: 0 225 | subMeshCount: 0 226 | m_StaticBatchRoot: {fileID: 0} 227 | m_ProbeAnchor: {fileID: 0} 228 | m_LightProbeVolumeOverride: {fileID: 0} 229 | m_ScaleInLightmap: 1 230 | m_PreserveUVs: 0 231 | m_IgnoreNormalsForChartDetection: 0 232 | m_ImportantGI: 0 233 | m_StitchLightmapSeams: 0 234 | m_SelectedEditorRenderState: 3 235 | m_MinimumChartSize: 4 236 | m_AutoUVMaxDistance: 0.5 237 | m_AutoUVMaxAngle: 89 238 | m_LightmapParameters: {fileID: 0} 239 | m_SortingLayerID: 0 240 | m_SortingLayer: 0 241 | m_SortingOrder: 0 242 | --- !u!23 &23468089378888676 243 | MeshRenderer: 244 | m_ObjectHideFlags: 1 245 | m_CorrespondingSourceObject: {fileID: 0} 246 | m_PrefabInternal: {fileID: 100100000} 247 | m_GameObject: {fileID: 1166948455886960} 248 | m_Enabled: 1 249 | m_CastShadows: 1 250 | m_ReceiveShadows: 1 251 | m_DynamicOccludee: 1 252 | m_MotionVectors: 1 253 | m_LightProbeUsage: 1 254 | m_ReflectionProbeUsage: 1 255 | m_RenderingLayerMask: 4294967295 256 | m_Materials: 257 | - {fileID: 2100000, guid: b92baab000a3ef64ebab89273e82ebed, type: 2} 258 | - {fileID: 2100000, guid: 41464fb37b851074babaea7f09d15585, type: 2} 259 | - {fileID: 2100000, guid: dfe35f6e8cdbce24baf1ff1485d52c4d, type: 2} 260 | - {fileID: 2100000, guid: ed25f86fe6b20c74393571559dc9089b, type: 2} 261 | - {fileID: 2100000, guid: 0d2adfd07b5055449a30cccc00d426e4, type: 2} 262 | m_StaticBatchInfo: 263 | firstSubMesh: 0 264 | subMeshCount: 0 265 | m_StaticBatchRoot: {fileID: 0} 266 | m_ProbeAnchor: {fileID: 0} 267 | m_LightProbeVolumeOverride: {fileID: 0} 268 | m_ScaleInLightmap: 1 269 | m_PreserveUVs: 0 270 | m_IgnoreNormalsForChartDetection: 0 271 | m_ImportantGI: 0 272 | m_StitchLightmapSeams: 0 273 | m_SelectedEditorRenderState: 3 274 | m_MinimumChartSize: 4 275 | m_AutoUVMaxDistance: 0.5 276 | m_AutoUVMaxAngle: 89 277 | m_LightmapParameters: {fileID: 0} 278 | m_SortingLayerID: 0 279 | m_SortingLayer: 0 280 | m_SortingOrder: 0 281 | --- !u!23 &23757823457161520 282 | MeshRenderer: 283 | m_ObjectHideFlags: 1 284 | m_CorrespondingSourceObject: {fileID: 0} 285 | m_PrefabInternal: {fileID: 100100000} 286 | m_GameObject: {fileID: 1341019773796300} 287 | m_Enabled: 1 288 | m_CastShadows: 1 289 | m_ReceiveShadows: 1 290 | m_DynamicOccludee: 1 291 | m_MotionVectors: 1 292 | m_LightProbeUsage: 1 293 | m_ReflectionProbeUsage: 1 294 | m_RenderingLayerMask: 4294967295 295 | m_Materials: 296 | - {fileID: 2100000, guid: b92baab000a3ef64ebab89273e82ebed, type: 2} 297 | - {fileID: 2100000, guid: dfe35f6e8cdbce24baf1ff1485d52c4d, type: 2} 298 | - {fileID: 2100000, guid: ed25f86fe6b20c74393571559dc9089b, type: 2} 299 | - {fileID: 2100000, guid: 0d2adfd07b5055449a30cccc00d426e4, type: 2} 300 | m_StaticBatchInfo: 301 | firstSubMesh: 0 302 | subMeshCount: 0 303 | m_StaticBatchRoot: {fileID: 0} 304 | m_ProbeAnchor: {fileID: 0} 305 | m_LightProbeVolumeOverride: {fileID: 0} 306 | m_ScaleInLightmap: 1 307 | m_PreserveUVs: 0 308 | m_IgnoreNormalsForChartDetection: 0 309 | m_ImportantGI: 0 310 | m_StitchLightmapSeams: 0 311 | m_SelectedEditorRenderState: 3 312 | m_MinimumChartSize: 4 313 | m_AutoUVMaxDistance: 0.5 314 | m_AutoUVMaxAngle: 89 315 | m_LightmapParameters: {fileID: 0} 316 | m_SortingLayerID: 0 317 | m_SortingLayer: 0 318 | m_SortingOrder: 0 319 | --- !u!33 &33141269664744956 320 | MeshFilter: 321 | m_ObjectHideFlags: 1 322 | m_CorrespondingSourceObject: {fileID: 0} 323 | m_PrefabInternal: {fileID: 100100000} 324 | m_GameObject: {fileID: 1341019773796300} 325 | m_Mesh: {fileID: 4300010, guid: 8f43304905a758f499e0a683f44bd9a6, type: 3} 326 | --- !u!33 &33186282570722646 327 | MeshFilter: 328 | m_ObjectHideFlags: 1 329 | m_CorrespondingSourceObject: {fileID: 0} 330 | m_PrefabInternal: {fileID: 100100000} 331 | m_GameObject: {fileID: 1373530343864186} 332 | m_Mesh: {fileID: 4300014, guid: 8f43304905a758f499e0a683f44bd9a6, type: 3} 333 | --- !u!33 &33683413475557422 334 | MeshFilter: 335 | m_ObjectHideFlags: 1 336 | m_CorrespondingSourceObject: {fileID: 0} 337 | m_PrefabInternal: {fileID: 100100000} 338 | m_GameObject: {fileID: 1961783148707774} 339 | m_Mesh: {fileID: 4300012, guid: 8f43304905a758f499e0a683f44bd9a6, type: 3} 340 | --- !u!33 &33738123838584884 341 | MeshFilter: 342 | m_ObjectHideFlags: 1 343 | m_CorrespondingSourceObject: {fileID: 0} 344 | m_PrefabInternal: {fileID: 100100000} 345 | m_GameObject: {fileID: 1166948455886960} 346 | m_Mesh: {fileID: 4300008, guid: 8f43304905a758f499e0a683f44bd9a6, type: 3} 347 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Prefabs/Tires.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7dcaa2e217549b643a83a684e662d87e 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c8791a99b7af6343bf5ea4835bfe75d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Scenes/FocE08.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac3ad38d4cf84ef4e9531f4c913ea7d5 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Scenes/Tires.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ae39d56f3a4afa34a9793cd342afb897 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aab0be0882fac9e43bea388bc1331e5b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/FocE.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c824b75bdef949545ae7f3993150879d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/FocE/FocE_Carbody08.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/FocE/FocE_Carbody08.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/FocE/FocE_Carbody08.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4333fb712d1993c45a86d682e9896726 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/FocE/FocE_Windows.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/FocE/FocE_Windows.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/FocE/FocE_Windows.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 63513073a217801459bfa6d0f12c8f18 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 217aa7e2f22b4e84197368f1705e5504 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Brakedisc.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Brakedisc.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Brakedisc.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c5b3020d56c480742a976e2e3db1dbde 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Engine.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Engine.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Engine.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a585889e5ca8a3a4d9900a23fb375a0e 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Engine_S.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Engine_S.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Engine_S.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e1f96232edadc86449c55694ef0037e3 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Glass.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Glass.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Glass.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ba9ddc268fc7ba54d90ee9b14b1ddf62 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Interior.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Interior.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Interior.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a0ff94ff9a863ef4db36de560c4d95b3 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Interior_S.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Interior_S.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Interior_S.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a17b864812a89134f8276f83a00cdebc 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Rim.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Rim.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Rim.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c8254837174a9746bcda3bd51bd9d77 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Sidewall.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Sidewall.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Sidewall.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a90c14cab06d833409247cb1b7351a9b 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Sidewall_S.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Sidewall_S.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Sidewall_S.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 68e9444cb8e00ea43889e070ec62afa9 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Tread.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Tread.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Tread.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d536e25545ee43d409c35b8d850c002e 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Tread_N.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Tread_N.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Tread_N.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6889322fc8b586b4cbbecbfb6cf90ea5 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 0 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 1 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Tread_S.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Tread_S.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/Tread_S.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 38b65737a41c6c145ad035588789361e 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/wiring.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/wiring.tga -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Common/wiring.tga.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 93b005da0b748774788ec1c77a7057df 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Templates.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b6edeb335b217494b8670db4b00bb636 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Templates/FocE_Carbody.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Templates/FocE_Carbody.psd -------------------------------------------------------------------------------- /Assets/ExternalAssets/Modern_Touring_Carpack_Demo/Textures/_Templates/FocE_Carbody.psd.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08f285193b7f4834284f3695bc6103e0 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 7 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 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: 2 35 | aniso: 4 36 | mipBias: -100 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 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Assets/FXAA.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b6d67dea86c3c7e42a8d03241ee675ff 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/FXAA/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d1fcb34893e4aea44a0ffcedac97b749 3 | folderAsset: yes 4 | timeCreated: 1460647184 5 | licenseType: Store 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/FXAA/Scripts/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3ada5859fe9708649ac35b587cfa216c 3 | folderAsset: yes 4 | timeCreated: 1510324554 5 | licenseType: Store 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/FXAA/Scripts/Editor/BannerOffline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rico345100/unity-multiplayer-with-nodejs/b14d805a2e56df2e78744b358ebaf2ab36ea7206/Assets/FXAA/Scripts/Editor/BannerOffline.png -------------------------------------------------------------------------------- /Assets/FXAA/Scripts/Editor/BannerOffline.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dd17fcfd0f1d6b540a22a6b89c9e8b06 3 | timeCreated: 1508252123 4 | licenseType: Store 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: 0.5, y: 0.5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 1 48 | spriteTessellationDetail: -1 49 | textureType: 2 50 | buildTargetSettings: 51 | - buildTarget: Standalone 52 | maxTextureSize: 2048 53 | textureFormat: -3 54 | compressionQuality: 50 55 | allowsAlphaSplitting: 0 56 | spriteSheet: 57 | serializedVersion: 2 58 | sprites: [] 59 | outline: [] 60 | spritePackingTag: 61 | userData: 62 | assetBundleName: 63 | assetBundleVariant: 64 | -------------------------------------------------------------------------------- /Assets/FXAA/Scripts/Editor/FXAAEditor.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using System; 4 | using UnityEditor; 5 | using AseFxaa; 6 | 7 | namespace AseFxaa 8 | { 9 | internal class AboutAffiliate : EditorWindow 10 | { 11 | public static void Init() 12 | { 13 | AboutAffiliate window = (AboutAffiliate)GetWindow( typeof( AboutAffiliate ), true, "Affiliate Link Information" ); 14 | window.minSize = new Vector2( 400, 130 ); 15 | window.maxSize = new Vector2( 400, 130 ); 16 | window.Show(); 17 | } 18 | 19 | public void OnGUI() 20 | { 21 | GUIStyle lableStyle = new GUIStyle( GUI.skin.label ); 22 | lableStyle.wordWrap = true; 23 | lableStyle.alignment = TextAnchor.MiddleCenter; 24 | lableStyle.richText = true; 25 | 26 | GUIStyle textLink = new GUIStyle( GUI.skin.label ); 27 | textLink.normal.textColor = EditorGUIUtility.isProSkin ? FXAAEditor.LinkColorInPro : FXAAEditor.LinkColorInPersonal; 28 | GUILayout.Space( 16 ); 29 | GUILayout.Label( "By using our Publisher Affiliate link we receive a small commission for all Asset Store purchases done in the following 7 days. If you want to support free content such as the one you are using, please consider using our unique Publisher link. Thank You!", lableStyle ); 30 | GUILayout.Space( 16 ); 31 | GUILayout.BeginHorizontal(); 32 | if( GUILayout.Button( "Learn more about the Unity Affiliate program here", lableStyle ) ) 33 | { 34 | Help.BrowseURL( "https://unity3d.com/affiliates" ); 35 | } 36 | GUILayout.EndHorizontal(); 37 | } 38 | } 39 | 40 | [Serializable] 41 | internal class BannerInfo 42 | { 43 | public string imageURL; 44 | public string message; 45 | public string affiliateLink; 46 | 47 | public static BannerInfo CreateFromJSON( string jsonString ) 48 | { 49 | return JsonUtility.FromJson( jsonString ); 50 | } 51 | 52 | public BannerInfo( string i, string m, string a ) 53 | { 54 | imageURL = i; 55 | message = m; 56 | affiliateLink = a; 57 | } 58 | } 59 | } 60 | 61 | [CustomEditor( typeof( FXAA ) )] 62 | public class FXAAEditor : Editor 63 | { 64 | private GUIStyle m_linkStyle; 65 | private GUIStyle m_lableStyle; 66 | private GUIStyle m_textLink; 67 | private GUIContent m_button = new GUIContent( "" ); 68 | 69 | private bool m_initialized = false; 70 | private bool m_imageLoaded = false; 71 | 72 | private int m_maxheight = 105; 73 | private float m_currheight = 105; 74 | private float m_imageRatio = 0.23863f; 75 | 76 | public static Color LinkColorInPro = new Color( 0.3f, 0.5f, 1 ); 77 | public static Color LinkColorInPersonal = new Color( 0.1f, 0.3f, 0.8f ); 78 | private Texture2D m_fetchedImage = null; 79 | private Texture2D m_defaultImage; 80 | 81 | private string m_jsonURL = "http://amplify.pt/Banner/FxaaInfo.json"; 82 | private BannerInfo m_info = new BannerInfo( 83 | "http://amplify.pt/Banner/Banner_Fxaa.jpg", 84 | "Like FXAA? Check out Amplify Shader Editor, award-winning node-based shader editor for Unity!", 85 | "https://www.assetstore.unity3d.com/en/#!/content/68570?aid=1011lPwI&pubref=FXAA" ); 86 | 87 | IEnumerator coroutine; 88 | IEnumerator StartRequest( string url ) 89 | { 90 | WWW www = new WWW( url ); 91 | yield return www; 92 | } 93 | 94 | public void EditorUpdateFetchInfo() 95 | { 96 | WWW www = (WWW)coroutine.Current; 97 | if( !coroutine.MoveNext() ) 98 | { 99 | if( !www.isDone ) 100 | { 101 | coroutine.MoveNext(); 102 | } 103 | else 104 | { 105 | if( string.IsNullOrEmpty( www.error ) ) 106 | { 107 | m_info = BannerInfo.CreateFromJSON( www.text ); 108 | this.Repaint(); 109 | 110 | EditorApplication.update += EditorUpdateFetchImage; 111 | coroutine = StartRequest( m_info.imageURL ); 112 | } 113 | EditorApplication.update -= EditorUpdateFetchInfo; 114 | } 115 | } 116 | } 117 | 118 | public void EditorUpdateFetchImage() 119 | { 120 | WWW www = (WWW)coroutine.Current; 121 | if( !coroutine.MoveNext() ) 122 | { 123 | if( !www.isDone ) 124 | { 125 | coroutine.MoveNext(); 126 | } 127 | else 128 | { 129 | if( string.IsNullOrEmpty( www.error ) ) 130 | { 131 | m_fetchedImage = new Texture2D( www.texture.width, www.texture.height, TextureFormat.RGB24, false, true ); 132 | m_fetchedImage.SetPixels( www.texture.GetPixels() ); 133 | m_fetchedImage.Apply(); 134 | this.Repaint(); 135 | } 136 | EditorApplication.update -= EditorUpdateFetchImage; 137 | } 138 | } 139 | } 140 | 141 | public override void OnInspectorGUI() 142 | { 143 | if( !m_initialized ) 144 | { 145 | m_initialized = true; 146 | m_linkStyle = new GUIStyle( GUIStyle.none ); 147 | m_linkStyle.alignment = TextAnchor.UpperCenter; 148 | 149 | m_lableStyle = new GUIStyle( GUI.skin.label ); 150 | 151 | m_lableStyle.wordWrap = true; 152 | m_lableStyle.alignment = TextAnchor.MiddleLeft; 153 | m_defaultImage = AssetDatabase.LoadAssetAtPath( AssetDatabase.GUIDToAssetPath( "dd17fcfd0f1d6b540a22a6b89c9e8b06" ) ); 154 | m_imageRatio = (float)m_defaultImage.height / (float)m_defaultImage.width; 155 | m_maxheight = m_defaultImage.height; 156 | 157 | m_textLink = new GUIStyle( GUI.skin.label ); 158 | m_textLink.normal.textColor = Color.white; 159 | m_textLink.alignment = TextAnchor.MiddleCenter; 160 | m_textLink.fontSize = 9; 161 | } 162 | 163 | if( m_fetchedImage != null ) 164 | { 165 | m_button.image = m_fetchedImage; 166 | m_imageRatio = (float)m_fetchedImage.height / (float)m_fetchedImage.width; 167 | m_maxheight = m_fetchedImage.height; 168 | } 169 | else 170 | { 171 | m_button.image = m_defaultImage; 172 | m_imageRatio = (float)m_defaultImage.height / (float)m_defaultImage.width; 173 | m_maxheight = m_defaultImage.height; 174 | 175 | if( !m_imageLoaded ) 176 | { 177 | m_imageLoaded = true; 178 | 179 | EditorApplication.update += EditorUpdateFetchInfo; 180 | coroutine = StartRequest( m_jsonURL ); 181 | } 182 | } 183 | 184 | EditorGUILayout.BeginVertical( "ObjectFieldThumb" ); 185 | { 186 | m_currheight = Mathf.Min( m_maxheight, ( EditorGUIUtility.currentViewWidth - 30 ) * m_imageRatio ); 187 | Rect buttonRect = EditorGUILayout.GetControlRect( false, m_currheight ); 188 | EditorGUIUtility.AddCursorRect( buttonRect, MouseCursor.Link ); 189 | if( GUI.Button( buttonRect, m_button, m_linkStyle ) ) 190 | { 191 | Help.BrowseURL( m_info.affiliateLink ); 192 | } 193 | GUILayout.BeginHorizontal(); 194 | GUILayout.Label( m_info.message, m_lableStyle ); 195 | GUILayout.FlexibleSpace(); 196 | GUILayout.BeginVertical(); 197 | if( GUILayout.Button( "Learn More", GUILayout.Height( 25 ) ) ) 198 | { 199 | Help.BrowseURL( m_info.affiliateLink ); 200 | } 201 | Color cache = GUI.color; 202 | GUI.color = EditorGUIUtility.isProSkin ? LinkColorInPro : LinkColorInPersonal; 203 | if( GUILayout.Button( "Affiliate Link", m_textLink ) ) 204 | { 205 | AboutAffiliate.Init(); 206 | } 207 | GUI.color = cache; 208 | GUILayout.EndVertical(); 209 | GUILayout.EndHorizontal(); 210 | } 211 | EditorGUILayout.EndVertical(); 212 | } 213 | } 214 | -------------------------------------------------------------------------------- /Assets/FXAA/Scripts/Editor/FXAAEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 30b839ec048fa7b4f85c1cd5b651c411 3 | timeCreated: 1510324573 4 | licenseType: Store 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/FXAA/Scripts/FXAA.cs: -------------------------------------------------------------------------------- 1 | 2 | using System; 3 | using UnityEngine; 4 | 5 | [ExecuteInEditMode] 6 | [RequireComponent( typeof( Camera ) )] 7 | [AddComponentMenu( "Image Effects/FXAA" )] 8 | public class FXAA : FXAAPostEffectsBase 9 | { 10 | private Shader shader; 11 | private Material mat; 12 | 13 | void CreateMaterials () 14 | { 15 | if ( mat == null ) 16 | mat = CheckShaderAndCreateMaterial( shader, mat ); 17 | } 18 | 19 | void Start() 20 | { 21 | shader = Shader.Find( "Hidden/FXAA3" ); 22 | CreateMaterials(); 23 | CheckSupport( false ); 24 | } 25 | 26 | public void OnRenderImage( RenderTexture source, RenderTexture destination ) 27 | { 28 | CreateMaterials(); 29 | 30 | float rcpWidth = 1.0f / Screen.width; 31 | float rcpHeight = 1.0f / Screen.height; 32 | 33 | mat.SetVector( "_rcpFrame", new Vector4( rcpWidth, rcpHeight, 0, 0 ) ); 34 | mat.SetVector( "_rcpFrameOpt", new Vector4( rcpWidth * 2, rcpHeight * 2, rcpWidth * 0.5f, rcpHeight * 0.5f ) ); 35 | 36 | Graphics.Blit( source, destination, mat ); 37 | } 38 | } 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /Assets/FXAA/Scripts/FXAA.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 301eca71255100647bb9bad1d5641921 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/FXAA/Scripts/FXAAPostEffectsBase.cs: -------------------------------------------------------------------------------- 1 | 2 | using UnityEngine; 3 | 4 | [ExecuteInEditMode] 5 | [RequireComponent( typeof( Camera ) )] 6 | public class FXAAPostEffectsBase : MonoBehaviour 7 | { 8 | protected bool supportHDRTextures = true; 9 | protected bool isSupported = true; 10 | 11 | public Material CheckShaderAndCreateMaterial (Shader s, Material m2Create) { 12 | if (!s) { 13 | Debug.Log("Missing shader in " + this.ToString ()); 14 | enabled = false; 15 | return null; 16 | } 17 | 18 | if (s.isSupported && m2Create && m2Create.shader == s) 19 | return m2Create; 20 | 21 | if (!s.isSupported) { 22 | NotSupported (); 23 | Debug.LogError("The shader " + s.ToString() + " on effect "+this.ToString()+" is not supported on this platform!"); 24 | return null; 25 | } 26 | else { 27 | m2Create = new Material (s); 28 | m2Create.hideFlags = HideFlags.DontSave; 29 | if (m2Create) 30 | return m2Create; 31 | else return null; 32 | } 33 | } 34 | 35 | Material CreateMaterial (Shader s, Material m2Create) { 36 | if (!s) { 37 | Debug.Log ("Missing shader in " + this.ToString ()); 38 | return null; 39 | } 40 | 41 | if (m2Create && (m2Create.shader == s) && (s.isSupported)) 42 | return m2Create; 43 | 44 | if (!s.isSupported) { 45 | return null; 46 | } 47 | else { 48 | m2Create = new Material (s); 49 | m2Create.hideFlags = HideFlags.DontSave; 50 | if (m2Create) 51 | return m2Create; 52 | else return null; 53 | } 54 | } 55 | 56 | void OnEnable() { 57 | isSupported = true; 58 | } 59 | 60 | // deprecated but needed for old effects to survive upgrade 61 | bool CheckSupport () { 62 | return CheckSupport (false); 63 | } 64 | 65 | bool CheckResources () { 66 | Debug.LogWarning ("CheckResources () for " + this.ToString() + " should be overwritten."); 67 | return isSupported; 68 | } 69 | 70 | void Start () { 71 | CheckResources (); 72 | } 73 | 74 | public bool CheckSupport (bool needDepth) { 75 | isSupported = true; 76 | supportHDRTextures = SystemInfo.SupportsRenderTextureFormat(RenderTextureFormat.ARGBHalf); 77 | 78 | #if UNITY_5_5_OR_NEWER 79 | if (!SystemInfo.supportsImageEffects) { 80 | NotSupported (); 81 | return false; 82 | } 83 | #else 84 | if( !SystemInfo.supportsImageEffects || !SystemInfo.supportsRenderTextures ) 85 | { 86 | NotSupported(); 87 | return false; 88 | } 89 | #endif 90 | 91 | if( needDepth && !SystemInfo.SupportsRenderTextureFormat (RenderTextureFormat.Depth)) { 92 | NotSupported (); 93 | return false; 94 | } 95 | 96 | if(needDepth) 97 | GetComponent().depthTextureMode |= DepthTextureMode.Depth; 98 | 99 | return true; 100 | } 101 | 102 | bool CheckSupport (bool needDepth, bool needHdr) { 103 | if(!CheckSupport(needDepth)) 104 | return false; 105 | 106 | if(needHdr && !supportHDRTextures) { 107 | NotSupported (); 108 | return false; 109 | } 110 | 111 | return true; 112 | } 113 | 114 | void ReportAutoDisable () { 115 | Debug.LogWarning ("The image effect " + this.ToString() + " has been disabled as it's not supported on the current platform."); 116 | } 117 | 118 | // deprecated but needed for old effects to survive upgrading 119 | bool CheckShader (Shader s) { 120 | Debug.Log("The shader " + s.ToString () + " on effect "+ this.ToString () + " is not part of the Unity 3.2+ effects suite anymore. For best performance and quality, please ensure you are using the latest Standard Assets Image Effects (Pro only) package."); 121 | if (!s.isSupported) { 122 | NotSupported (); 123 | return false; 124 | } 125 | else { 126 | return false; 127 | } 128 | } 129 | 130 | void NotSupported () { 131 | enabled = false; 132 | isSupported = false; 133 | return; 134 | } 135 | 136 | void DrawBorder (RenderTexture dest, Material material) { 137 | float x1, x2, y1, y2; 138 | 139 | RenderTexture.active = dest; 140 | bool invertY = true; // source.texelSize.y < 0.0f; 141 | // Set up the simple Matrix 142 | GL.PushMatrix(); 143 | GL.LoadOrtho(); 144 | 145 | for (int i = 0; i < material.passCount; i++) 146 | { 147 | material.SetPass(i); 148 | 149 | float y1_, y2_; 150 | if (invertY) 151 | { 152 | y1_ = 1.0f; y2_ = 0.0f; 153 | } 154 | else 155 | { 156 | y1_ = 0.0f; y2_ = 1.0f; 157 | } 158 | 159 | // left 160 | x1 = 0.0f; 161 | x2 = 0.0f + 1.0f/(dest.width*1.0f); 162 | y1 = 0.0f; 163 | y2 = 1.0f; 164 | GL.Begin(GL.QUADS); 165 | 166 | GL.TexCoord2(0.0f, y1_); GL.Vertex3(x1, y1, 0.1f); 167 | GL.TexCoord2(1.0f, y1_); GL.Vertex3(x2, y1, 0.1f); 168 | GL.TexCoord2(1.0f, y2_); GL.Vertex3(x2, y2, 0.1f); 169 | GL.TexCoord2(0.0f, y2_); GL.Vertex3(x1, y2, 0.1f); 170 | 171 | // right 172 | x1 = 1.0f - 1.0f/(dest.width*1.0f); 173 | x2 = 1.0f; 174 | y1 = 0.0f; 175 | y2 = 1.0f; 176 | 177 | GL.TexCoord2(0.0f, y1_); GL.Vertex3(x1, y1, 0.1f); 178 | GL.TexCoord2(1.0f, y1_); GL.Vertex3(x2, y1, 0.1f); 179 | GL.TexCoord2(1.0f, y2_); GL.Vertex3(x2, y2, 0.1f); 180 | GL.TexCoord2(0.0f, y2_); GL.Vertex3(x1, y2, 0.1f); 181 | 182 | // top 183 | x1 = 0.0f; 184 | x2 = 1.0f; 185 | y1 = 0.0f; 186 | y2 = 0.0f + 1.0f/(dest.height*1.0f); 187 | 188 | GL.TexCoord2(0.0f, y1_); GL.Vertex3(x1, y1, 0.1f); 189 | GL.TexCoord2(1.0f, y1_); GL.Vertex3(x2, y1, 0.1f); 190 | GL.TexCoord2(1.0f, y2_); GL.Vertex3(x2, y2, 0.1f); 191 | GL.TexCoord2(0.0f, y2_); GL.Vertex3(x1, y2, 0.1f); 192 | 193 | // bottom 194 | x1 = 0.0f; 195 | x2 = 1.0f; 196 | y1 = 1.0f - 1.0f/(dest.height*1.0f); 197 | y2 = 1.0f; 198 | 199 | GL.TexCoord2(0.0f, y1_); GL.Vertex3(x1, y1, 0.1f); 200 | GL.TexCoord2(1.0f, y1_); GL.Vertex3(x2, y1, 0.1f); 201 | GL.TexCoord2(1.0f, y2_); GL.Vertex3(x2, y2, 0.1f); 202 | GL.TexCoord2(0.0f, y2_); GL.Vertex3(x1, y2, 0.1f); 203 | 204 | GL.End(); 205 | } 206 | 207 | GL.PopMatrix(); 208 | } 209 | } 210 | -------------------------------------------------------------------------------- /Assets/FXAA/Scripts/FXAAPostEffectsBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1df0351a3c15109448ad33dca4669bdc 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/FXAA/Shaders.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8449acc64b221ab4ba80324efa905485 3 | folderAsset: yes 4 | timeCreated: 1460647184 5 | licenseType: Store 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/FXAA/Shaders/Fxaa3.shader: -------------------------------------------------------------------------------- 1 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 2 | 3 | 4 | Shader "Hidden/FXAA3" { 5 | Properties { 6 | _MainTex ("Base (RGB)", 2D) = "white" {} 7 | } 8 | SubShader { 9 | Pass { 10 | ZTest Always Cull Off ZWrite Off 11 | Fog { Mode off } 12 | 13 | CGPROGRAM 14 | #pragma vertex vert 15 | #pragma fragment frag 16 | #pragma fragmentoption ARB_precision_hint_fastest 17 | #pragma target 3.0 18 | #pragma glsl 19 | 20 | #include "UnityCG.cginc" 21 | 22 | #define FXAA_PC 23 | #define FXAA_HLSL_3 24 | #define FXAA_EARLY_EXIT 0 25 | #include "Fxaa3_9.cginc" 26 | 27 | uniform sampler2D _MainTex; 28 | uniform float4 _MainTex_TexelSize; 29 | uniform float4 _rcpFrame; 30 | uniform float4 _rcpFrameOpt; 31 | 32 | struct v2f { 33 | float4 pos : POSITION; 34 | float2 uv : TEXCOORD0; 35 | float4 uvAux : TEXCOORD1; 36 | }; 37 | 38 | v2f vert( appdata_img v ) 39 | { 40 | v2f o; 41 | o.pos = UnityObjectToClipPos (v.vertex); 42 | 43 | float2 uv = v.texcoord.xy; 44 | o.uv = uv; 45 | 46 | #if SHADER_API_D3D9 47 | o.uv.y += _MainTex_TexelSize.y; 48 | #endif 49 | 50 | o.uvAux.xy = uv + float2( -_MainTex_TexelSize.x, +_MainTex_TexelSize.y ) * 0.5f; 51 | o.uvAux.zw = uv + float2( +_MainTex_TexelSize.x, -_MainTex_TexelSize.y ) * 0.5f; 52 | 53 | #if SHADER_API_D3D9 54 | if ( _MainTex_TexelSize.y < 0 ) 55 | uv.y = 1 - uv.y; 56 | #endif 57 | 58 | return o; 59 | } 60 | 61 | half4 frag (v2f i) : COLOR 62 | { 63 | return FxaaPixelShader_Quality( 64 | i.uv, 65 | i.uvAux, 66 | _MainTex, 67 | _rcpFrame.xy, 68 | _rcpFrameOpt ); 69 | } 70 | ENDCG 71 | } 72 | } 73 | 74 | Fallback off 75 | 76 | } 77 | -------------------------------------------------------------------------------- /Assets/FXAA/Shaders/Fxaa3.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d417cf48fde7da46b5a79811115e87f 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/FXAA/Shaders/Fxaa3_9.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 85979c6b5c6ded743b66588026b1915f 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c77e6518c75b5d64ba434910858946e1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/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_CorrespondingSourceObject: {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, g: 0, b: 0, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /Assets/Materials/Ground.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 67e19533792e4954590bcb129f949250 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4cc6962dbdba3db4a96d47a6b902d2bc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Prefabs/Player.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8628f4d3005749f4389613e1809744b4 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f704ae4b4f98ae41a0bce26658850c1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scenes/SampleScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 99c9720ab356a0642a771bea13969a05 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 160c2a2bff644104ba1b4847a6da5fea 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/GameManager.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Network; 5 | 6 | public class GameManager : MonoBehaviour { 7 | [Header("Lobby Refs")] 8 | public GameObject lobbyCam; 9 | 10 | [Header("Game Refs")] 11 | public Transform spawnPoint; 12 | 13 | void Start() { 14 | NetworkManager.Instance.onConnected.AddListener(() => { 15 | NetworkManager.Instance.Log("Connected."); 16 | NetworkManager.Instance.Log("Creating Player..."); 17 | 18 | lobbyCam.SetActive(false); 19 | 20 | // Spawn next to the previous player 21 | Vector3 newPos = new Vector3( 22 | spawnPoint.position.x + (NetworkManager.Instance.clientID * 10), 23 | spawnPoint.position.y, 24 | spawnPoint.position.z 25 | ); 26 | NetworkManager.Instance.Instantiate(InstantiateType.Player, newPos, spawnPoint.rotation); 27 | }); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Assets/Scripts/GameManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3b8947525c65de04a90ac42ba3214fce 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Network.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 07c1abb0a7081cc48a119126e17fc7df 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/ByteIO.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace Network { 5 | public static class ByteIO { 6 | // Write Int32 into specified offset 7 | public static void WriteInt(ref byte[] data, int offset, int variable) { 8 | Buffer.BlockCopy(BitConverter.GetBytes(variable), 0, data, offset, sizeof(int)); 9 | } 10 | 11 | // Write Float into specified offset 12 | public static void WriteFloat(ref byte[] data, int offset, float variable) { 13 | Buffer.BlockCopy(BitConverter.GetBytes(variable), 0, data, offset, sizeof(float)); 14 | } 15 | 16 | // Write Vector2 into specified offset 17 | public static void WriteVector2(ref byte[] data, int offset, Vector2 vector) { 18 | Buffer.BlockCopy(BitConverter.GetBytes(vector.x), 0, data, offset + sizeof(float) * 0, sizeof(float)); 19 | Buffer.BlockCopy(BitConverter.GetBytes(vector.y), 0, data, offset + sizeof(float) * 1, sizeof(float)); 20 | } 21 | 22 | // Write Vector3 into specified offset 23 | public static void WriteVector3(ref byte[] data, int offset, Vector3 vector) { 24 | Buffer.BlockCopy(BitConverter.GetBytes(vector.x), 0, data, offset + sizeof(float) * 0, sizeof(float)); 25 | Buffer.BlockCopy(BitConverter.GetBytes(vector.y), 0, data, offset + sizeof(float) * 1, sizeof(float)); 26 | Buffer.BlockCopy(BitConverter.GetBytes(vector.z), 0, data, offset + sizeof(float) * 2, sizeof(float)); 27 | } 28 | 29 | // Write Quaternion into specified offset 30 | public static void WriteQuaternion(ref byte[] data, int offset, Quaternion quaternion) { 31 | Buffer.BlockCopy(BitConverter.GetBytes(quaternion.x), 0, data, offset + sizeof(float) * 0, sizeof(float)); 32 | Buffer.BlockCopy(BitConverter.GetBytes(quaternion.y), 0, data, offset + sizeof(float) * 1, sizeof(float)); 33 | Buffer.BlockCopy(BitConverter.GetBytes(quaternion.z), 0, data, offset + sizeof(float) * 2, sizeof(float)); 34 | Buffer.BlockCopy(BitConverter.GetBytes(quaternion.w), 0, data, offset + sizeof(float) * 3, sizeof(float)); 35 | } 36 | 37 | // Write byte[] into specified offset 38 | public static void WriteBytes(ref byte[] data, int offset, byte[] byteArray) { 39 | for(int i = 0; i < byteArray.Length; i++) { 40 | data[i + offset] = byteArray[i]; 41 | } 42 | } 43 | 44 | // Write byte into specified offset 45 | public static void WriteByte(ref byte[] data, int offset, byte b) { 46 | data[offset] = b; 47 | } 48 | 49 | // Read Int32 from specified offset 50 | public static int ReadInt(ref byte[] data, int offset) { 51 | return BitConverter.ToInt32(data, offset); 52 | } 53 | 54 | // Read Float from specified offset 55 | public static float ReadFloat(ref byte[] data, int offset) { 56 | return BitConverter.ToSingle(data, offset); 57 | } 58 | 59 | // Read Vector2 from specified offset 60 | public static Vector2 ReadVector2(ref byte[] data, int offset) { 61 | return new Vector2( 62 | BitConverter.ToSingle(data, offset + sizeof(float) * 0), 63 | BitConverter.ToSingle(data, offset + sizeof(float) * 1) 64 | ); 65 | } 66 | 67 | // Read Vector3 from specified offset 68 | public static Vector3 ReadVector3(ref byte[] data, int offset) { 69 | return new Vector3( 70 | BitConverter.ToSingle(data, offset + sizeof(float) * 0), 71 | BitConverter.ToSingle(data, offset + sizeof(float) * 1), 72 | BitConverter.ToSingle(data, offset + sizeof(float) * 2) 73 | ); 74 | } 75 | 76 | // Read Quaternion from specified offset 77 | public static Quaternion ReadQuaternion(ref byte[] data, int offset) { 78 | return new Quaternion( 79 | BitConverter.ToSingle(data, offset + sizeof(float) * 0), 80 | BitConverter.ToSingle(data, offset + sizeof(float) * 1), 81 | BitConverter.ToSingle(data, offset + sizeof(float) * 2), 82 | BitConverter.ToSingle(data, offset + sizeof(float) * 3) 83 | ); 84 | } 85 | 86 | // Read byte[] from specified offset 87 | public static byte[] ReadBytes(ref byte[] data, int offset, int length) { 88 | byte[] result = new byte[length]; 89 | 90 | for(int i = 0; i < result.Length; i++) { 91 | result[i] = data[offset + i]; 92 | } 93 | 94 | return result; 95 | } 96 | 97 | // Read byte from specified offset 98 | public static byte ReadByte(ref byte[] data, int offset) { 99 | return data[offset]; 100 | } 101 | 102 | // API with Cursors 103 | public static void WriteInt(ref int cursor, ref byte[] data, int variable) { 104 | WriteInt(ref data, cursor, variable); 105 | cursor += sizeof(int); 106 | } 107 | 108 | public static void WriteFloat(ref int cursor, ref byte[] data, float variable) { 109 | WriteFloat(ref data, cursor, variable); 110 | cursor += sizeof(float); 111 | } 112 | 113 | public static void WriteVector2(ref int cursor, ref byte[] data, Vector2 vector) { 114 | WriteVector2(ref data, cursor, vector); 115 | cursor += sizeof(float) * 2; 116 | } 117 | 118 | public static void WriteVector3(ref int cursor, ref byte[] data, Vector3 vector) { 119 | WriteVector3(ref data, cursor, vector); 120 | cursor += sizeof(float) * 3; 121 | } 122 | 123 | public static void WriteQuaternion(ref int cursor, ref byte[] data, Quaternion quaternion) { 124 | WriteQuaternion(ref data, cursor, quaternion); 125 | cursor += sizeof(float) * 4; 126 | } 127 | 128 | public static void WriteBytes(ref int cursor, ref byte[] data, byte[] byteArray) { 129 | WriteBytes(ref data, cursor, byteArray); 130 | cursor += byteArray.Length; 131 | } 132 | 133 | public static void WriteByte(ref int cursor, ref byte[] data, byte b) { 134 | WriteByte(ref data, cursor, b); 135 | cursor++; 136 | } 137 | 138 | public static int ReadInt(ref int cursor, ref byte[] data) { 139 | int value = ReadInt(ref data, cursor); 140 | cursor += sizeof(int); 141 | return value; 142 | } 143 | 144 | public static float ReadFloat(ref int cursor, ref byte[] data) { 145 | float value = ReadFloat(ref data, cursor); 146 | cursor += sizeof(float); 147 | return value; 148 | } 149 | 150 | public static Vector2 ReadVector2(ref int cursor, ref byte[] data) { 151 | Vector2 value = ReadVector2(ref data, cursor); 152 | cursor += sizeof(float) * 2; 153 | return value; 154 | } 155 | 156 | public static Vector3 ReadVector3(ref int cursor, ref byte[] data) { 157 | Vector3 value = ReadVector3(ref data, cursor); 158 | cursor += sizeof(float) * 3; 159 | return value; 160 | } 161 | 162 | public static Quaternion ReadQuaternion(ref int cursor, ref byte[] data) { 163 | Quaternion value = ReadQuaternion(ref data, cursor); 164 | cursor += sizeof(float) * 4; 165 | return value; 166 | } 167 | 168 | public static byte[] ReadBytes(ref int cursor, ref byte[] data, int length) { 169 | byte[] value = ReadBytes(ref data, cursor, length); 170 | cursor += length; 171 | return value; 172 | } 173 | 174 | public static byte ReadByte(ref int cursor, ref byte[] data) { 175 | byte value = ReadByte(ref data, cursor); 176 | cursor++; 177 | return value; 178 | } 179 | } 180 | } 181 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/ByteIO.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: df3842e8aad07794a9a22ed747c7c019 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/ByteReader.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace Network { 5 | public class ByteReader: ICursor { 6 | private int m_Cursor = 0; 7 | private byte[] m_DataSource; 8 | 9 | public int Cursor { 10 | get { 11 | return m_Cursor; 12 | } 13 | } 14 | 15 | public byte[] DataSource { 16 | get { 17 | return m_DataSource; 18 | } 19 | } 20 | 21 | public ByteReader(byte[] dataSource, int initOffset = 0) { 22 | this.m_DataSource = dataSource; 23 | this.m_Cursor = initOffset; 24 | } 25 | 26 | public void ResetCursor () { 27 | m_Cursor = 0; 28 | } 29 | 30 | public void MoveCursor(int offset) { 31 | m_Cursor = offset; 32 | } 33 | 34 | // Read Int32 35 | public int ReadInt() { 36 | var value = BitConverter.ToInt32(m_DataSource, m_Cursor); 37 | m_Cursor += sizeof(int); 38 | return value; 39 | } 40 | 41 | // Read Float 42 | public float ReadFloat() { 43 | var value = BitConverter.ToSingle(m_DataSource, m_Cursor); 44 | m_Cursor += sizeof(float); 45 | return value; 46 | } 47 | 48 | // Read Vector2 49 | public Vector2 ReadVector2() { 50 | var value = new Vector2( 51 | BitConverter.ToSingle(m_DataSource, m_Cursor + sizeof(float) * 0), 52 | BitConverter.ToSingle(m_DataSource, m_Cursor + sizeof(float) * 1) 53 | ); 54 | 55 | m_Cursor += sizeof(float) * 2; 56 | 57 | return value; 58 | } 59 | 60 | // Read Vector3 61 | public Vector3 ReadVector3() { 62 | var value = new Vector3( 63 | BitConverter.ToSingle(m_DataSource, m_Cursor + sizeof(float) * 0), 64 | BitConverter.ToSingle(m_DataSource, m_Cursor + sizeof(float) * 1), 65 | BitConverter.ToSingle(m_DataSource, m_Cursor + sizeof(float) * 2) 66 | ); 67 | 68 | m_Cursor += sizeof(float) * 3; 69 | 70 | return value; 71 | } 72 | 73 | // Read Quaternion 74 | public Quaternion ReadQuaternion() { 75 | var value = new Quaternion( 76 | BitConverter.ToSingle(m_DataSource, m_Cursor + sizeof(float) * 0), 77 | BitConverter.ToSingle(m_DataSource, m_Cursor + sizeof(float) * 1), 78 | BitConverter.ToSingle(m_DataSource, m_Cursor + sizeof(float) * 2), 79 | BitConverter.ToSingle(m_DataSource, m_Cursor + sizeof(float) * 3) 80 | ); 81 | 82 | m_Cursor += sizeof(float) * 4; 83 | 84 | return value; 85 | } 86 | 87 | // Read byte[] 88 | public byte[] ReadBytes(int length) { 89 | byte[] result = new byte[length]; 90 | 91 | for(int i = 0; i < result.Length; i++) { 92 | result[i] = m_DataSource[m_Cursor + i]; 93 | m_Cursor++; 94 | } 95 | 96 | return result; 97 | } 98 | 99 | // Read byte 100 | public byte ReadByte() { 101 | var value = m_DataSource[m_Cursor]; 102 | m_Cursor++; 103 | 104 | return value; 105 | } 106 | } 107 | } -------------------------------------------------------------------------------- /Assets/Scripts/Network/ByteReader.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7889e367022c75d47aacbaf17fe07364 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/ByteWriter.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace Network { 5 | public class ByteWriter: ICursor { 6 | private int m_Cursor = 0; 7 | private byte[] m_DataSource; 8 | 9 | public int Cursor { 10 | get { 11 | return m_Cursor; 12 | } 13 | } 14 | 15 | public byte[] DataSource { 16 | get { 17 | return m_DataSource; 18 | } 19 | } 20 | 21 | public ByteWriter(byte[] dataSource, int initOffset = 0) { 22 | this.m_DataSource = dataSource; 23 | this.m_Cursor = initOffset; 24 | } 25 | 26 | public void ResetCursor () { 27 | m_Cursor = 0; 28 | } 29 | 30 | public void MoveCursor(int offset) { 31 | m_Cursor = offset; 32 | } 33 | 34 | // Write Int32 35 | public void WriteInt(int variable) { 36 | Buffer.BlockCopy(BitConverter.GetBytes(variable), 0, m_DataSource, m_Cursor, sizeof(int)); 37 | m_Cursor += sizeof(int); 38 | } 39 | 40 | // Write Float 41 | public void WriteFloat(float variable) { 42 | Buffer.BlockCopy(BitConverter.GetBytes(variable), 0, m_DataSource, m_Cursor, sizeof(float)); 43 | m_Cursor += sizeof(float); 44 | } 45 | 46 | // Write Vector2 47 | public void WriteVector2(Vector2 vector) { 48 | Buffer.BlockCopy(BitConverter.GetBytes(vector.x), 0, m_DataSource, m_Cursor + sizeof(float) * 0, sizeof(float)); 49 | Buffer.BlockCopy(BitConverter.GetBytes(vector.y), 0, m_DataSource, m_Cursor + sizeof(float) * 1, sizeof(float)); 50 | m_Cursor += sizeof(float) * 2; 51 | } 52 | 53 | // Write Vector3 54 | public void WriteVector3(Vector3 vector) { 55 | Buffer.BlockCopy(BitConverter.GetBytes(vector.x), 0, m_DataSource, m_Cursor + sizeof(float) * 0, sizeof(float)); 56 | Buffer.BlockCopy(BitConverter.GetBytes(vector.y), 0, m_DataSource, m_Cursor + sizeof(float) * 1, sizeof(float)); 57 | Buffer.BlockCopy(BitConverter.GetBytes(vector.z), 0, m_DataSource, m_Cursor + sizeof(float) * 2, sizeof(float)); 58 | m_Cursor += sizeof(float) * 3; 59 | } 60 | 61 | // Write Quaternion 62 | public void WriteQuaternion(Quaternion quaternion) { 63 | Buffer.BlockCopy(BitConverter.GetBytes(quaternion.x), 0, m_DataSource, m_Cursor + sizeof(float) * 0, sizeof(float)); 64 | Buffer.BlockCopy(BitConverter.GetBytes(quaternion.y), 0, m_DataSource, m_Cursor + sizeof(float) * 1, sizeof(float)); 65 | Buffer.BlockCopy(BitConverter.GetBytes(quaternion.z), 0, m_DataSource, m_Cursor + sizeof(float) * 2, sizeof(float)); 66 | Buffer.BlockCopy(BitConverter.GetBytes(quaternion.w), 0, m_DataSource, m_Cursor + sizeof(float) * 3, sizeof(float)); 67 | m_Cursor += sizeof(float) * 4; 68 | } 69 | 70 | // Write byte[] 71 | public void WriteBytes(byte[] byteArray) { 72 | for(int i = 0; i < byteArray.Length; i++) { 73 | m_DataSource[i + m_Cursor] = byteArray[i]; 74 | } 75 | 76 | m_Cursor += byteArray.Length; 77 | } 78 | 79 | // Write byte 80 | public void WriteByte(byte b) { 81 | m_DataSource[m_Cursor] = b; 82 | m_Cursor++; 83 | } 84 | } 85 | } -------------------------------------------------------------------------------- /Assets/Scripts/Network/ByteWriter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1cbbeaee646971949a7673e1d6621fc2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/ICursor.cs: -------------------------------------------------------------------------------- 1 | namespace Network { 2 | interface ICursor { 3 | int Cursor { 4 | get; 5 | } 6 | byte[] DataSource { 7 | get; 8 | } 9 | 10 | void ResetCursor(); 11 | void MoveCursor(int offset); 12 | } 13 | } -------------------------------------------------------------------------------- /Assets/Scripts/Network/ICursor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ebf89bc8268eb75489785924ce69e4ca 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/InstantiateType.cs: -------------------------------------------------------------------------------- 1 | namespace Network { 2 | public enum InstantiateType { 3 | Player = 0 4 | }; 5 | } -------------------------------------------------------------------------------- /Assets/Scripts/Network/InstantiateType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 251578ff28a0bb146a8af78a79a69d1c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/MessageType.cs: -------------------------------------------------------------------------------- 1 | namespace Network { 2 | public enum MessageType { 3 | AssignID = 0, 4 | ClientRequestObjectSync = 10, 5 | ServerRequestObjectSync = 11, 6 | ServerRequestObjectSyncComplete = 12, 7 | Instantiate = 20, 8 | Destroy = 21, 9 | DestroyNetworkObjects = 22, 10 | SyncTransform = 30 11 | } 12 | } -------------------------------------------------------------------------------- /Assets/Scripts/Network/MessageType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7bfd9fdc5cd97d24d9dce7ec1f946b25 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/NetworkManager.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections; 3 | using System.Collections.Generic; 4 | using System.Net; 5 | using System.Net.Sockets; 6 | using Network; 7 | using UnityEngine; 8 | using UnityEngine.UI; 9 | using UnityEngine.Events; 10 | 11 | public delegate void Task(); 12 | 13 | public class NetworkManager : MonoBehaviour { 14 | private static NetworkManager m_Instance; 15 | private static int localIDCounter = 0; 16 | private static int m_BufferSize = 1024; 17 | private Socket m_Socket; 18 | private bool m_Active = false; 19 | private List m_NetworkObjects = new List(); 20 | private byte[] m_Buffer = new byte[m_BufferSize]; 21 | 22 | [Header("Network Settings")] 23 | public string ipAddress = "127.0.0.1"; 24 | public const int port = 1337; 25 | public int clientID; 26 | public bool Active { 27 | get { 28 | return m_Active; 29 | } 30 | set { 31 | m_Active = value; 32 | } 33 | } 34 | public static NetworkManager Instance { 35 | get { 36 | return m_Instance; 37 | } 38 | } 39 | public Socket Socket { 40 | get { 41 | return m_Socket; 42 | } 43 | } 44 | public List NetworkObjects { 45 | get { 46 | return m_NetworkObjects; 47 | } 48 | } 49 | 50 | [Header("Network Prefabs")] 51 | public GameObject playerPrefab; 52 | 53 | [HideInInspector] 54 | public UnityEvent onConnected; 55 | public UnityEvent onObjectSync; 56 | 57 | [Header("Object Refs")] 58 | public Text logText; 59 | 60 | // For safe multithreading works... 61 | private Queue m_TaskQueue = new Queue(); 62 | private object m_QueueLock = new object(); 63 | 64 | public static int AssignLocalID() { 65 | return localIDCounter++; 66 | } 67 | 68 | void Awake() { 69 | if(onConnected == null) { 70 | onConnected = new UnityEvent(); 71 | } 72 | if(onObjectSync == null) { 73 | onObjectSync = new UnityEvent(); 74 | } 75 | 76 | m_Instance = this; 77 | } 78 | 79 | IEnumerator Start() { 80 | // Give Some delays to other GameObject can set Event handlers 81 | yield return new WaitForSecondsRealtime(1f); 82 | 83 | InitializeSocket(); 84 | Connect(); 85 | } 86 | 87 | public void Log(string message) { 88 | ScheduleTask(new Task(delegate { 89 | logText.text += "\n" + message; 90 | })); 91 | } 92 | 93 | void InitializeSocket() { 94 | m_Socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); 95 | m_Socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 10000); 96 | m_Socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveTimeout, 10000); 97 | } 98 | 99 | void Connect() { 100 | try { 101 | Log("Waiting for a connection..."); 102 | 103 | IPAddress ipAddr = IPAddress.Parse(ipAddress); 104 | m_Socket.BeginConnect(ipAddr, port, HandleConnected, null); 105 | } 106 | catch(SocketException e) { 107 | Log("Failed to connect: " + e.ToString()); 108 | } 109 | } 110 | 111 | void HandleConnected(IAsyncResult result) { 112 | m_Socket.EndConnect(result); 113 | m_Socket.NoDelay = true; 114 | 115 | Log("Connected"); 116 | 117 | ScheduleTask(new Task(delegate { 118 | onConnected.Invoke(); 119 | })); 120 | 121 | ReceiveData(); 122 | } 123 | 124 | void ReceiveData() { 125 | m_Socket.BeginReceive(m_Buffer, 0, m_BufferSize, SocketFlags.None, HandleReceiveData, null); 126 | } 127 | 128 | void HandleReceiveData(IAsyncResult result) { 129 | m_Socket.EndReceive(result); 130 | 131 | ByteReader byteReader = new ByteReader(m_Buffer); 132 | MessageType messageType = (MessageType) byteReader.ReadByte(); 133 | 134 | if(messageType != MessageType.SyncTransform) { 135 | Log("Message Type: " + messageType); 136 | } 137 | 138 | // Handle Messsage 139 | DispatchMessage(m_Buffer); 140 | 141 | // Receive Again 142 | ReceiveData(); 143 | } 144 | 145 | void DispatchMessage(byte[] data) { 146 | ByteReader byteReader = new ByteReader(data); 147 | MessageType messageType = (MessageType) byteReader.ReadByte(); 148 | byteReader.ReadInt(); // ClientID 149 | byteReader.ReadInt(); // LocalID 150 | 151 | if(messageType != MessageType.SyncTransform) { 152 | Log("Receive Message"); 153 | Log("MessageType: " + messageType); 154 | } 155 | 156 | // Prevent reference changes 157 | byte[] clonedData = (byte[]) data.Clone(); 158 | 159 | // Dispatch 160 | switch(messageType) { 161 | case MessageType.AssignID: 162 | SetClientID(clonedData); 163 | RequestSyncNetworkObjects(); 164 | break; 165 | case MessageType.ServerRequestObjectSync: 166 | ScheduleTask(new Task(delegate { 167 | CreateNetworkObject(clonedData); 168 | })); 169 | break; 170 | case MessageType.ServerRequestObjectSyncComplete: 171 | HandleNetworkObjectSyncComplete(clonedData); 172 | break; 173 | case MessageType.DestroyNetworkObjects: 174 | ScheduleTask(new Task(delegate { 175 | DestroyNetworkObjects(clonedData); 176 | })); 177 | break; 178 | case MessageType.Instantiate: 179 | ScheduleTask(new Task(delegate { 180 | HandleInstantiate(clonedData); 181 | })); 182 | break; 183 | case MessageType.SyncTransform: 184 | ScheduleTask(new Task(delegate { 185 | HandleSyncTransform(clonedData); 186 | })); 187 | break; 188 | default: 189 | throw new System.InvalidOperationException("Unknown MessageType " + messageType); 190 | } 191 | } 192 | 193 | void SetClientID(byte[] data) { 194 | ByteReader byteReader = new ByteReader(data); 195 | byteReader.ReadByte(); // MessageType 196 | this.clientID = byteReader.ReadInt(); 197 | 198 | Log("Received ClientID: " + clientID); 199 | } 200 | 201 | void RequestSyncNetworkObjects() { 202 | Log("Request Server to Synchronize Network Objects"); 203 | SendMessage(MessageType.ClientRequestObjectSync); 204 | } 205 | 206 | void CreateNetworkObject(byte[] data) { 207 | ByteReader byteReader = new ByteReader(data); 208 | byteReader.ReadByte(); 209 | int clientID = byteReader.ReadInt(); 210 | int localID = byteReader.ReadInt(); 211 | InstantiateType instanceType = (InstantiateType) byteReader.ReadByte(); 212 | Vector3 position = byteReader.ReadVector3(); 213 | Quaternion rotation = byteReader.ReadQuaternion(); 214 | 215 | Log(string.Format("Instantiate Object: {0} {1} {2}", instanceType, clientID, localID)); 216 | InstantiateFromNetwork(instanceType, clientID, localID, position, rotation); 217 | } 218 | 219 | void HandleNetworkObjectSyncComplete(byte[] data) { 220 | Log("All Network Objects synchornized."); 221 | 222 | ScheduleTask(new Task(delegate { 223 | onObjectSync.Invoke(); 224 | })); 225 | } 226 | 227 | void DestroyNetworkObjects(byte[] data) { 228 | ByteReader byteReader = new ByteReader(data); 229 | byteReader.ReadByte(); // MessageType 230 | int clientID = byteReader.ReadInt(); 231 | 232 | for(int i = m_NetworkObjects.Count - 1; i >= 0; i--) { 233 | if(m_NetworkObjects[i].clientID == clientID) { 234 | Destroy(m_NetworkObjects[i].gameObject); 235 | m_NetworkObjects.RemoveAt(i); 236 | } 237 | } 238 | } 239 | 240 | void HandleInstantiate(byte[] data) { 241 | ByteReader byteReader = new ByteReader(data); 242 | byteReader.ReadByte(); // MessageType 243 | int clientID = byteReader.ReadInt(); 244 | int localID = byteReader.ReadInt(); 245 | InstantiateType instanceType = (InstantiateType) byteReader.ReadByte(); 246 | Vector3 spawnPos = byteReader.ReadVector3(); 247 | Quaternion spawnRot = byteReader.ReadQuaternion(); 248 | 249 | InstantiateFromNetwork(instanceType, clientID, localID, spawnPos, spawnRot); 250 | } 251 | 252 | GameObject GetPrefab(InstantiateType type) { 253 | switch(type) { 254 | case InstantiateType.Player: 255 | return playerPrefab; 256 | default: 257 | throw new System.InvalidOperationException("Unknown InstantiateType " + type); 258 | } 259 | } 260 | 261 | public void SendMessage(MessageType messageType, byte[] data = null) { 262 | // Check empty data 263 | if(data == null) { 264 | data = new byte[0]; 265 | } 266 | 267 | // Byte Order 268 | // byte MessageType 269 | // byte[] data 270 | byte[] sendingData = new byte[sizeof(byte) + sizeof(int) + data.Length]; 271 | ByteWriter byteWriter = new ByteWriter(sendingData); 272 | byteWriter.WriteByte((byte) messageType); 273 | byteWriter.WriteInt(clientID); 274 | byteWriter.WriteBytes(data); 275 | 276 | m_Socket.BeginSend(sendingData, 0, sendingData.Length, SocketFlags.None, HandleSendDone, null); 277 | } 278 | 279 | void HandleSendDone(IAsyncResult result) { 280 | m_Socket.EndSend(result); 281 | } 282 | 283 | public GameObject Instantiate(InstantiateType instantiateType, Vector3 spawnPos, Quaternion spawnRot) { 284 | // Byte Order 285 | // int localID 286 | // Vector3 instantiateType 287 | // Vecotr3 spawnPos 288 | // Quaternion spawnRot 289 | byte[] sendingData = new byte[sizeof(int) + sizeof(byte) + sizeof(float) * 7]; 290 | ByteWriter byteWriter = new ByteWriter(sendingData); 291 | byteWriter.WriteInt(localIDCounter); 292 | byteWriter.WriteByte((byte) instantiateType); 293 | byteWriter.WriteVector3(spawnPos); 294 | byteWriter.WriteQuaternion(spawnRot); 295 | 296 | Log("Instantiating Object..."); 297 | Log("Assigned LocalID: " + (localIDCounter)); 298 | 299 | SendMessage(MessageType.Instantiate, sendingData); 300 | 301 | // Actual instantiate from Unity 302 | GameObject instance = GameObject.Instantiate(GetPrefab(instantiateType), spawnPos, spawnRot); 303 | NetworkObject networkObject = instance.GetComponent(); 304 | 305 | if(networkObject == null) { 306 | throw new System.NullReferenceException("Object must have NetworkObject Component."); 307 | } 308 | 309 | networkObject.clientID = clientID; 310 | networkObject.isLocal = true; 311 | networkObject.localID = localIDCounter; 312 | 313 | m_NetworkObjects.Add(networkObject); 314 | 315 | // Increase LocalID Counter 316 | localIDCounter++; 317 | 318 | return instance; 319 | } 320 | 321 | GameObject InstantiateFromNetwork(InstantiateType instantiateType, int clientID, int localID, Vector3 spawnPos, Quaternion spawnRot) { 322 | GameObject instance = GameObject.Instantiate(GetPrefab(instantiateType), spawnPos, spawnRot); 323 | NetworkObject networkObject = instance.GetComponent(); 324 | 325 | if(networkObject == null) { 326 | throw new System.NullReferenceException("Object must have NetworkObject Component."); 327 | } 328 | 329 | networkObject.isLocal = false; 330 | networkObject.clientID = clientID; 331 | networkObject.localID = localID; 332 | 333 | m_NetworkObjects.Add(networkObject); 334 | 335 | return instance; 336 | } 337 | 338 | void HandleSyncTransform(byte[] data) { 339 | ByteReader byteReader = new ByteReader(data); 340 | byteReader.ReadByte(); 341 | int cid = byteReader.ReadInt(); 342 | int lid = byteReader.ReadInt(); 343 | 344 | foreach(NetworkObject networkObject in m_NetworkObjects) { 345 | if(networkObject.clientID == cid && networkObject.localID == lid) { 346 | networkObject.ReceiveBytes(data); 347 | break; 348 | } 349 | } 350 | } 351 | 352 | void OnApplicationQuit() { 353 | if(m_Socket != null) { 354 | m_Socket.Close(); 355 | m_Socket = null; 356 | } 357 | } 358 | 359 | void Update() { 360 | lock(m_QueueLock) { 361 | if(m_TaskQueue.Count > 0) { 362 | Task m_Task = m_TaskQueue.Dequeue(); 363 | m_Task(); 364 | } 365 | } 366 | } 367 | 368 | void ScheduleTask(Task newTask) { 369 | lock(m_QueueLock) { 370 | if(m_TaskQueue.Count < 100) { 371 | m_TaskQueue.Enqueue(newTask); 372 | } 373 | } 374 | } 375 | } 376 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/NetworkManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d182551e8c3487b4480ab5d796ddc111 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/NetworkObject.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Events; 4 | using System.Collections; 5 | using System.Net.Sockets; 6 | using Network; 7 | 8 | public class NetworkEvent: UnityEvent {} 9 | 10 | public class NetworkObject : MonoBehaviour { 11 | // Expose these values just for debugging purpose 12 | public int clientID; 13 | public int localID; 14 | public float m_SyncRate = 0.1f; 15 | public bool isLocal = false; 16 | 17 | public NetworkEvent onReceivedBytes; 18 | public UnityEvent onSendingBytes; 19 | 20 | void Awake() { 21 | if(onReceivedBytes == null) { 22 | onReceivedBytes = new NetworkEvent(); 23 | } 24 | if(onSendingBytes == null) { 25 | onSendingBytes = new UnityEvent(); 26 | } 27 | } 28 | 29 | void Start() { 30 | if(!isLocal) return; 31 | StartCoroutine(CoStartSync()); 32 | } 33 | 34 | IEnumerator CoStartSync() { 35 | m_SyncRate = Mathf.Max(0.1f, m_SyncRate); // Set minimum sync rate to 0.1 second 36 | 37 | while(true) { 38 | onSendingBytes.Invoke(); 39 | yield return new WaitForSecondsRealtime(m_SyncRate); 40 | } 41 | } 42 | 43 | public void SendBytes(MessageType messageType, byte[] data) { 44 | if(data == null) return; 45 | NetworkManager.Instance.SendMessage(messageType, data); 46 | } 47 | 48 | public void ReceiveBytes(byte[] data) { 49 | onReceivedBytes.Invoke(data); 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /Assets/Scripts/Network/NetworkObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: edd2f1b02de5c7349abdf8c7ddc14360 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Player.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using Network; 3 | 4 | public class Player : MonoBehaviour { 5 | private NetworkObject m_NetworkObject; 6 | private Vector3 m_SyncPos; 7 | private Quaternion m_SyncRot; 8 | public float syncSmooth = 10.0f; 9 | 10 | void Start() { 11 | m_NetworkObject = GetComponent(); 12 | m_SyncPos = transform.position; 13 | m_SyncRot = transform.rotation; 14 | 15 | m_NetworkObject.onReceivedBytes.AddListener(UpdateTransform); 16 | m_NetworkObject.onSendingBytes.AddListener(SendTransform); 17 | 18 | if(!m_NetworkObject.isLocal) { 19 | WheelCollider[] wheelColliders = GetComponentsInChildren(); 20 | 21 | foreach(WheelCollider wheelCollider in wheelColliders) { 22 | Destroy(wheelCollider); 23 | } 24 | 25 | Destroy(GetComponent()); 26 | Destroy(GetComponent()); 27 | Destroy(transform.Find("Main Camera").gameObject); 28 | } 29 | } 30 | 31 | void FixedUpdate() { 32 | if(m_NetworkObject.isLocal) return; 33 | 34 | transform.position = Vector3.Lerp(transform.position, m_SyncPos, Time.fixedDeltaTime * syncSmooth); 35 | transform.rotation = Quaternion.Lerp(transform.rotation, m_SyncRot, Time.fixedDeltaTime * syncSmooth); 36 | } 37 | 38 | void SendTransform() { 39 | byte[] data = new byte[sizeof(int) + sizeof(float) * 7]; 40 | ByteWriter byteWriter = new ByteWriter(data); 41 | byteWriter.WriteInt(m_NetworkObject.localID); 42 | byteWriter.WriteVector3(transform.position); 43 | byteWriter.WriteQuaternion(transform.rotation); 44 | 45 | m_NetworkObject.SendBytes(MessageType.SyncTransform, data); 46 | } 47 | 48 | void UpdateTransform(byte[] data) { 49 | ByteReader byteReader = new ByteReader(data); 50 | byteReader.ReadByte(); // MessageType 51 | byteReader.ReadInt(); // clientID 52 | byteReader.ReadInt(); // localID 53 | m_SyncPos = byteReader.ReadVector3(); 54 | m_SyncRot = byteReader.ReadQuaternion(); 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /Assets/Scripts/Player.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dad4ffa25b3fb714eaeef96561cbd0a3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Packages/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "com.unity.ads": "2.0.8", 4 | "com.unity.analytics": "2.0.16", 5 | "com.unity.package-manager-ui": "1.9.11", 6 | "com.unity.purchasing": "2.0.3", 7 | "com.unity.textmeshpro": "1.2.4", 8 | "com.unity.modules.ai": "1.0.0", 9 | "com.unity.modules.animation": "1.0.0", 10 | "com.unity.modules.assetbundle": "1.0.0", 11 | "com.unity.modules.audio": "1.0.0", 12 | "com.unity.modules.cloth": "1.0.0", 13 | "com.unity.modules.director": "1.0.0", 14 | "com.unity.modules.imageconversion": "1.0.0", 15 | "com.unity.modules.imgui": "1.0.0", 16 | "com.unity.modules.jsonserialize": "1.0.0", 17 | "com.unity.modules.particlesystem": "1.0.0", 18 | "com.unity.modules.physics": "1.0.0", 19 | "com.unity.modules.physics2d": "1.0.0", 20 | "com.unity.modules.screencapture": "1.0.0", 21 | "com.unity.modules.terrain": "1.0.0", 22 | "com.unity.modules.terrainphysics": "1.0.0", 23 | "com.unity.modules.tilemap": "1.0.0", 24 | "com.unity.modules.ui": "1.0.0", 25 | "com.unity.modules.uielements": "1.0.0", 26 | "com.unity.modules.umbra": "1.0.0", 27 | "com.unity.modules.unityanalytics": "1.0.0", 28 | "com.unity.modules.unitywebrequest": "1.0.0", 29 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0", 30 | "com.unity.modules.unitywebrequestaudio": "1.0.0", 31 | "com.unity.modules.unitywebrequesttexture": "1.0.0", 32 | "com.unity.modules.unitywebrequestwww": "1.0.0", 33 | "com.unity.modules.vehicles": "1.0.0", 34 | "com.unity.modules.video": "1.0.0", 35 | "com.unity.modules.vr": "1.0.0", 36 | "com.unity.modules.wind": "1.0.0", 37 | "com.unity.modules.xr": "1.0.0" 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /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: 1024 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.81, 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 | - enabled: 1 9 | path: Assets/Scenes/SampleScene.unity 10 | guid: 99c9720ab356a0642a771bea13969a05 11 | m_configObjects: {} 12 | -------------------------------------------------------------------------------- /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: Visible 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 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 | - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0} 39 | - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0} 40 | m_PreloadedShaders: [] 41 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, 42 | type: 0} 43 | m_CustomRenderPipeline: {fileID: 0} 44 | m_TransparencySortMode: 0 45 | m_TransparencySortAxis: {x: 0, y: 0, z: 1} 46 | m_DefaultRenderingPath: 1 47 | m_DefaultMobileRenderingPath: 1 48 | m_TierSettings: [] 49 | m_LightmapStripping: 0 50 | m_FogStripping: 0 51 | m_InstancingStripping: 0 52 | m_LightmapKeepPlain: 1 53 | m_LightmapKeepDirCombined: 1 54 | m_LightmapKeepDynamicPlain: 1 55 | m_LightmapKeepDynamicDirCombined: 1 56 | m_LightmapKeepShadowMask: 1 57 | m_LightmapKeepSubtractive: 1 58 | m_FogKeepLinear: 1 59 | m_FogKeepExp: 1 60 | m_FogKeepExp2: 1 61 | m_AlbedoSwatchInfos: [] 62 | m_LightsUseLinearIntensity: 0 63 | m_LightsUseColorTemperature: 0 64 | -------------------------------------------------------------------------------- /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/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | m_DefaultList: 7 | - type: 8 | m_NativeTypeID: 108 9 | m_ManagedTypePPtr: {fileID: 0} 10 | m_ManagedTypeFallback: 11 | defaultPresets: 12 | - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea, 13 | type: 2} 14 | - type: 15 | m_NativeTypeID: 1020 16 | m_ManagedTypePPtr: {fileID: 0} 17 | m_ManagedTypeFallback: 18 | defaultPresets: 19 | - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6, 20 | type: 2} 21 | - type: 22 | m_NativeTypeID: 1006 23 | m_ManagedTypePPtr: {fileID: 0} 24 | m_ManagedTypeFallback: 25 | defaultPresets: 26 | - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9, 27 | type: 2} 28 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2018.2.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: 4 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: 2 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: 40 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: 1 136 | antiAliasing: 4 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: 1 164 | antiAliasing: 4 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 | PSP2: 2 183 | Standalone: 5 184 | Tizen: 2 185 | WebGL: 3 186 | WiiU: 5 187 | Windows Store Apps: 5 188 | XboxOne: 5 189 | iPhone: 2 190 | tvOS: 2 191 | -------------------------------------------------------------------------------- /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 | - PostProcessing 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.1 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: 1 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: 1 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 | # Unity Multiplayer Example with Node.js 2 | Simple Multiplayer implemenation with Node.js TCP Server. See also [https://github.com/rico345100/nodejs-tcp-server-for-unity](https://github.com/rico345100/nodejs-tcp-server-for-unity). 3 | 4 | ## Requirements 5 | - Unity@2018.2.1f1 6 | 7 | ## Getting Started 8 | You have to run the Node.js Server before game starts. 9 | 10 | 1. Import from Unity 2018.2.1f1 11 | 2. Run Game (or build and Run) 12 | 13 | ## Buy me a coffee! 14 | Donations are big help for me to continue my development! 15 | 16 | [![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=PVXTU5FJNBLDS) 17 | --------------------------------------------------------------------------------