├── .gitignore ├── Assets ├── Materials.meta ├── Materials │ ├── Sinbad_Blue.mat │ ├── Sinbad_Blue.mat.meta │ ├── Sinbad_Dynamic_Params.mat │ ├── Sinbad_Dynamic_Params.mat.meta │ ├── Sinbad_Grey.mat │ ├── Sinbad_Grey.mat.meta │ ├── Sinbad_Original.mat │ ├── Sinbad_Original.mat.meta │ ├── Sinbad_Yellow.mat │ ├── Sinbad_Yellow.mat.meta │ ├── sprite_recolour.shader │ ├── sprite_recolour.shader.meta │ ├── sprite_recolour_params.shader │ └── sprite_recolour_params.shader.meta ├── Scenes.meta ├── Scenes │ ├── Start.unity │ └── Start.unity.meta ├── Scripts.meta ├── Scripts │ ├── SpriteRecolourDynamic.cs │ └── SpriteRecolourDynamic.cs.meta ├── Sprites.meta └── Sprites │ ├── sinbad_palette.png │ ├── sinbad_palette.png.meta │ ├── sinbad_palette_blue.png │ ├── sinbad_palette_blue.png.meta │ ├── sinbad_palette_grey.png │ ├── sinbad_palette_grey.png.meta │ ├── sinbad_palette_yellow.png │ ├── sinbad_palette_yellow.png.meta │ ├── sinbad_reference.png │ ├── sinbad_reference.png.meta │ ├── sinbad_reference_params.png │ └── sinbad_reference_params.png.meta ├── LICENSE ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset ├── UnityAdsSettings.asset └── UnityConnectSettings.asset ├── README.md └── SpriteRecolourAnimated.gif /.gitignore: -------------------------------------------------------------------------------- 1 | # =============== # 2 | # Unity generated # 3 | # =============== # 4 | Temp/ 5 | Library/ 6 | 7 | # ===================================== # 8 | # Visual Studio / MonoDevelop generated # 9 | # ===================================== # 10 | ExportedObj/ 11 | obj/ 12 | *.svd 13 | *.userprefs 14 | /*.csproj 15 | *.pidb 16 | *.suo 17 | /*.sln 18 | *.user 19 | *.unityproj 20 | *.booproj 21 | 22 | # ============ # 23 | # OS generated # 24 | # ============ # 25 | .DS_Store 26 | .DS_Store? 27 | ._* 28 | .Spotlight-V100 29 | .Trashes 30 | ehthumbs.db 31 | Thumbs.db 32 | 33 | # Build output 34 | *.app 35 | *.exe 36 | 37 | -------------------------------------------------------------------------------- /Assets/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c84882c49881e4afa83e5fab0c68b2a4 3 | folderAsset: yes 4 | timeCreated: 1478799445 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Blue.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Sinbad_Blue 10 | m_Shader: {fileID: 4800000, guid: 95a610336930747c19c1ff4b0f76d234, type: 3} 11 | m_ShaderKeywords: _EMISSION 12 | m_LightmapFlags: 1 13 | m_CustomRenderQueue: -1 14 | stringTagMap: {} 15 | m_SavedProperties: 16 | serializedVersion: 2 17 | m_TexEnvs: 18 | - first: 19 | name: _BumpMap 20 | second: 21 | m_Texture: {fileID: 0} 22 | m_Scale: {x: 1, y: 1} 23 | m_Offset: {x: 0, y: 0} 24 | - first: 25 | name: _DetailAlbedoMap 26 | second: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - first: 31 | name: _DetailMask 32 | second: 33 | m_Texture: {fileID: 0} 34 | m_Scale: {x: 1, y: 1} 35 | m_Offset: {x: 0, y: 0} 36 | - first: 37 | name: _DetailNormalMap 38 | second: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - first: 43 | name: _EmissionMap 44 | second: 45 | m_Texture: {fileID: 0} 46 | m_Scale: {x: 1, y: 1} 47 | m_Offset: {x: 0, y: 0} 48 | - first: 49 | name: _MainTex 50 | second: 51 | m_Texture: {fileID: 2800000, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - first: 55 | name: _MetallicGlossMap 56 | second: 57 | m_Texture: {fileID: 0} 58 | m_Scale: {x: 1, y: 1} 59 | m_Offset: {x: 0, y: 0} 60 | - first: 61 | name: _OcclusionMap 62 | second: 63 | m_Texture: {fileID: 0} 64 | m_Scale: {x: 1, y: 1} 65 | m_Offset: {x: 0, y: 0} 66 | - first: 67 | name: _PaletteTex 68 | second: 69 | m_Texture: {fileID: 2800000, guid: 5164dd4626bda4f46bc5bb98f687e57f, type: 3} 70 | m_Scale: {x: 1, y: 1} 71 | m_Offset: {x: 0, y: 0} 72 | - first: 73 | name: _ParallaxMap 74 | second: 75 | m_Texture: {fileID: 0} 76 | m_Scale: {x: 1, y: 1} 77 | m_Offset: {x: 0, y: 0} 78 | m_Floats: 79 | - first: 80 | name: _BumpScale 81 | second: 1 82 | - first: 83 | name: _Cutoff 84 | second: 0.5 85 | - first: 86 | name: _DetailNormalMapScale 87 | second: 1 88 | - first: 89 | name: _DstBlend 90 | second: 0 91 | - first: 92 | name: _GlossMapScale 93 | second: 1 94 | - first: 95 | name: _Glossiness 96 | second: 0.5 97 | - first: 98 | name: _GlossyReflections 99 | second: 1 100 | - first: 101 | name: _Metallic 102 | second: 0 103 | - first: 104 | name: _Mode 105 | second: 0 106 | - first: 107 | name: _OcclusionStrength 108 | second: 1 109 | - first: 110 | name: _Parallax 111 | second: 0.02 112 | - first: 113 | name: _SmoothnessTextureChannel 114 | second: 0 115 | - first: 116 | name: _SpecularHighlights 117 | second: 1 118 | - first: 119 | name: _SrcBlend 120 | second: 1 121 | - first: 122 | name: _UVSec 123 | second: 0 124 | - first: 125 | name: _ZWrite 126 | second: 1 127 | m_Colors: 128 | - first: 129 | name: _Color 130 | second: {r: 1, g: 1, b: 1, a: 1} 131 | - first: 132 | name: _EmissionColor 133 | second: {r: 0, g: 0, b: 0, a: 1} 134 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Blue.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 27bca53fca6624adb89c7c2e0c11cf4f 3 | timeCreated: 1478802887 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Dynamic_Params.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Sinbad_Dynamic_Params 10 | m_Shader: {fileID: 4800000, guid: a7abe6338aa0944bd97a4cfaa2d1228c, type: 3} 11 | m_ShaderKeywords: _EMISSION 12 | m_LightmapFlags: 1 13 | m_CustomRenderQueue: -1 14 | stringTagMap: {} 15 | m_SavedProperties: 16 | serializedVersion: 2 17 | m_TexEnvs: 18 | - first: 19 | name: _BumpMap 20 | second: 21 | m_Texture: {fileID: 0} 22 | m_Scale: {x: 1, y: 1} 23 | m_Offset: {x: 0, y: 0} 24 | - first: 25 | name: _DetailAlbedoMap 26 | second: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - first: 31 | name: _DetailMask 32 | second: 33 | m_Texture: {fileID: 0} 34 | m_Scale: {x: 1, y: 1} 35 | m_Offset: {x: 0, y: 0} 36 | - first: 37 | name: _DetailNormalMap 38 | second: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - first: 43 | name: _EmissionMap 44 | second: 45 | m_Texture: {fileID: 0} 46 | m_Scale: {x: 1, y: 1} 47 | m_Offset: {x: 0, y: 0} 48 | - first: 49 | name: _MainTex 50 | second: 51 | m_Texture: {fileID: 2800000, guid: 2e0254b4faaba48298b6c3f2cb703ae4, type: 3} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - first: 55 | name: _MetallicGlossMap 56 | second: 57 | m_Texture: {fileID: 0} 58 | m_Scale: {x: 1, y: 1} 59 | m_Offset: {x: 0, y: 0} 60 | - first: 61 | name: _OcclusionMap 62 | second: 63 | m_Texture: {fileID: 0} 64 | m_Scale: {x: 1, y: 1} 65 | m_Offset: {x: 0, y: 0} 66 | - first: 67 | name: _PaletteTex 68 | second: 69 | m_Texture: {fileID: 2800000, guid: bfb7990a0ebf049e8a444a6077b9a03c, type: 3} 70 | m_Scale: {x: 1, y: 1} 71 | m_Offset: {x: 0, y: 0} 72 | - first: 73 | name: _ParallaxMap 74 | second: 75 | m_Texture: {fileID: 0} 76 | m_Scale: {x: 1, y: 1} 77 | m_Offset: {x: 0, y: 0} 78 | m_Floats: 79 | - first: 80 | name: _BumpScale 81 | second: 1 82 | - first: 83 | name: _Cutoff 84 | second: 0.5 85 | - first: 86 | name: _DetailNormalMapScale 87 | second: 1 88 | - first: 89 | name: _DstBlend 90 | second: 0 91 | - first: 92 | name: _GlossMapScale 93 | second: 1 94 | - first: 95 | name: _Glossiness 96 | second: 0.5 97 | - first: 98 | name: _GlossyReflections 99 | second: 1 100 | - first: 101 | name: _Metallic 102 | second: 0 103 | - first: 104 | name: _Mode 105 | second: 0 106 | - first: 107 | name: _OcclusionStrength 108 | second: 1 109 | - first: 110 | name: _Parallax 111 | second: 0.02 112 | - first: 113 | name: _SmoothnessTextureChannel 114 | second: 0 115 | - first: 116 | name: _SpecularHighlights 117 | second: 1 118 | - first: 119 | name: _SrcBlend 120 | second: 1 121 | - first: 122 | name: _UVSec 123 | second: 0 124 | - first: 125 | name: _ZWrite 126 | second: 1 127 | m_Colors: 128 | - first: 129 | name: _Color 130 | second: {r: 1, g: 1, b: 1, a: 1} 131 | - first: 132 | name: _EmissionColor 133 | second: {r: 0, g: 0, b: 0, a: 1} 134 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Dynamic_Params.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7548579bb26fa4006a40c470004935e7 3 | timeCreated: 1478799926 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Grey.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Sinbad_Grey 10 | m_Shader: {fileID: 4800000, guid: 95a610336930747c19c1ff4b0f76d234, type: 3} 11 | m_ShaderKeywords: _EMISSION 12 | m_LightmapFlags: 1 13 | m_CustomRenderQueue: -1 14 | stringTagMap: {} 15 | m_SavedProperties: 16 | serializedVersion: 2 17 | m_TexEnvs: 18 | - first: 19 | name: _BumpMap 20 | second: 21 | m_Texture: {fileID: 0} 22 | m_Scale: {x: 1, y: 1} 23 | m_Offset: {x: 0, y: 0} 24 | - first: 25 | name: _DetailAlbedoMap 26 | second: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - first: 31 | name: _DetailMask 32 | second: 33 | m_Texture: {fileID: 0} 34 | m_Scale: {x: 1, y: 1} 35 | m_Offset: {x: 0, y: 0} 36 | - first: 37 | name: _DetailNormalMap 38 | second: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - first: 43 | name: _EmissionMap 44 | second: 45 | m_Texture: {fileID: 0} 46 | m_Scale: {x: 1, y: 1} 47 | m_Offset: {x: 0, y: 0} 48 | - first: 49 | name: _MainTex 50 | second: 51 | m_Texture: {fileID: 2800000, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - first: 55 | name: _MetallicGlossMap 56 | second: 57 | m_Texture: {fileID: 0} 58 | m_Scale: {x: 1, y: 1} 59 | m_Offset: {x: 0, y: 0} 60 | - first: 61 | name: _OcclusionMap 62 | second: 63 | m_Texture: {fileID: 0} 64 | m_Scale: {x: 1, y: 1} 65 | m_Offset: {x: 0, y: 0} 66 | - first: 67 | name: _PaletteTex 68 | second: 69 | m_Texture: {fileID: 2800000, guid: 334c9b5ea5d7347759fe96209b0bc3f0, type: 3} 70 | m_Scale: {x: 1, y: 1} 71 | m_Offset: {x: 0, y: 0} 72 | - first: 73 | name: _ParallaxMap 74 | second: 75 | m_Texture: {fileID: 0} 76 | m_Scale: {x: 1, y: 1} 77 | m_Offset: {x: 0, y: 0} 78 | m_Floats: 79 | - first: 80 | name: _BumpScale 81 | second: 1 82 | - first: 83 | name: _Cutoff 84 | second: 0.5 85 | - first: 86 | name: _DetailNormalMapScale 87 | second: 1 88 | - first: 89 | name: _DstBlend 90 | second: 0 91 | - first: 92 | name: _GlossMapScale 93 | second: 1 94 | - first: 95 | name: _Glossiness 96 | second: 0.5 97 | - first: 98 | name: _GlossyReflections 99 | second: 1 100 | - first: 101 | name: _Metallic 102 | second: 0 103 | - first: 104 | name: _Mode 105 | second: 0 106 | - first: 107 | name: _OcclusionStrength 108 | second: 1 109 | - first: 110 | name: _Parallax 111 | second: 0.02 112 | - first: 113 | name: _SmoothnessTextureChannel 114 | second: 0 115 | - first: 116 | name: _SpecularHighlights 117 | second: 1 118 | - first: 119 | name: _SrcBlend 120 | second: 1 121 | - first: 122 | name: _UVSec 123 | second: 0 124 | - first: 125 | name: _ZWrite 126 | second: 1 127 | m_Colors: 128 | - first: 129 | name: _Color 130 | second: {r: 1, g: 1, b: 1, a: 1} 131 | - first: 132 | name: _EmissionColor 133 | second: {r: 0, g: 0, b: 0, a: 1} 134 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Grey.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 30e3850862e24497ea447a1b0b9e7e31 3 | timeCreated: 1478799926 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Original.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Sinbad_Original 10 | m_Shader: {fileID: 4800000, guid: 95a610336930747c19c1ff4b0f76d234, type: 3} 11 | m_ShaderKeywords: _EMISSION 12 | m_LightmapFlags: 1 13 | m_CustomRenderQueue: -1 14 | stringTagMap: {} 15 | m_SavedProperties: 16 | serializedVersion: 2 17 | m_TexEnvs: 18 | - first: 19 | name: _BumpMap 20 | second: 21 | m_Texture: {fileID: 0} 22 | m_Scale: {x: 1, y: 1} 23 | m_Offset: {x: 0, y: 0} 24 | - first: 25 | name: _DetailAlbedoMap 26 | second: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - first: 31 | name: _DetailMask 32 | second: 33 | m_Texture: {fileID: 0} 34 | m_Scale: {x: 1, y: 1} 35 | m_Offset: {x: 0, y: 0} 36 | - first: 37 | name: _DetailNormalMap 38 | second: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - first: 43 | name: _EmissionMap 44 | second: 45 | m_Texture: {fileID: 0} 46 | m_Scale: {x: 1, y: 1} 47 | m_Offset: {x: 0, y: 0} 48 | - first: 49 | name: _MainTex 50 | second: 51 | m_Texture: {fileID: 2800000, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - first: 55 | name: _MetallicGlossMap 56 | second: 57 | m_Texture: {fileID: 0} 58 | m_Scale: {x: 1, y: 1} 59 | m_Offset: {x: 0, y: 0} 60 | - first: 61 | name: _OcclusionMap 62 | second: 63 | m_Texture: {fileID: 0} 64 | m_Scale: {x: 1, y: 1} 65 | m_Offset: {x: 0, y: 0} 66 | - first: 67 | name: _PaletteTex 68 | second: 69 | m_Texture: {fileID: 2800000, guid: bfb7990a0ebf049e8a444a6077b9a03c, type: 3} 70 | m_Scale: {x: 1, y: 1} 71 | m_Offset: {x: 0, y: 0} 72 | - first: 73 | name: _ParallaxMap 74 | second: 75 | m_Texture: {fileID: 0} 76 | m_Scale: {x: 1, y: 1} 77 | m_Offset: {x: 0, y: 0} 78 | m_Floats: 79 | - first: 80 | name: _BumpScale 81 | second: 1 82 | - first: 83 | name: _Cutoff 84 | second: 0.5 85 | - first: 86 | name: _DetailNormalMapScale 87 | second: 1 88 | - first: 89 | name: _DstBlend 90 | second: 0 91 | - first: 92 | name: _GlossMapScale 93 | second: 1 94 | - first: 95 | name: _Glossiness 96 | second: 0.5 97 | - first: 98 | name: _GlossyReflections 99 | second: 1 100 | - first: 101 | name: _Metallic 102 | second: 0 103 | - first: 104 | name: _Mode 105 | second: 0 106 | - first: 107 | name: _OcclusionStrength 108 | second: 1 109 | - first: 110 | name: _Parallax 111 | second: 0.02 112 | - first: 113 | name: _SmoothnessTextureChannel 114 | second: 0 115 | - first: 116 | name: _SpecularHighlights 117 | second: 1 118 | - first: 119 | name: _SrcBlend 120 | second: 1 121 | - first: 122 | name: _UVSec 123 | second: 0 124 | - first: 125 | name: _ZWrite 126 | second: 1 127 | m_Colors: 128 | - first: 129 | name: _Color 130 | second: {r: 1, g: 1, b: 1, a: 1} 131 | - first: 132 | name: _EmissionColor 133 | second: {r: 0, g: 0, b: 0, a: 1} 134 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Original.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b25aca52a12b4fd7827ae1db7886c22 3 | timeCreated: 1478799926 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Yellow.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Sinbad_Yellow 10 | m_Shader: {fileID: 4800000, guid: 95a610336930747c19c1ff4b0f76d234, type: 3} 11 | m_ShaderKeywords: _EMISSION 12 | m_LightmapFlags: 1 13 | m_CustomRenderQueue: -1 14 | stringTagMap: {} 15 | m_SavedProperties: 16 | serializedVersion: 2 17 | m_TexEnvs: 18 | - first: 19 | name: _BumpMap 20 | second: 21 | m_Texture: {fileID: 0} 22 | m_Scale: {x: 1, y: 1} 23 | m_Offset: {x: 0, y: 0} 24 | - first: 25 | name: _DetailAlbedoMap 26 | second: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - first: 31 | name: _DetailMask 32 | second: 33 | m_Texture: {fileID: 0} 34 | m_Scale: {x: 1, y: 1} 35 | m_Offset: {x: 0, y: 0} 36 | - first: 37 | name: _DetailNormalMap 38 | second: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - first: 43 | name: _EmissionMap 44 | second: 45 | m_Texture: {fileID: 0} 46 | m_Scale: {x: 1, y: 1} 47 | m_Offset: {x: 0, y: 0} 48 | - first: 49 | name: _MainTex 50 | second: 51 | m_Texture: {fileID: 2800000, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - first: 55 | name: _MetallicGlossMap 56 | second: 57 | m_Texture: {fileID: 0} 58 | m_Scale: {x: 1, y: 1} 59 | m_Offset: {x: 0, y: 0} 60 | - first: 61 | name: _OcclusionMap 62 | second: 63 | m_Texture: {fileID: 0} 64 | m_Scale: {x: 1, y: 1} 65 | m_Offset: {x: 0, y: 0} 66 | - first: 67 | name: _PaletteTex 68 | second: 69 | m_Texture: {fileID: 2800000, guid: 0ecc184dc73b44fd0b8929e2b15cceac, type: 3} 70 | m_Scale: {x: 1, y: 1} 71 | m_Offset: {x: 0, y: 0} 72 | - first: 73 | name: _ParallaxMap 74 | second: 75 | m_Texture: {fileID: 0} 76 | m_Scale: {x: 1, y: 1} 77 | m_Offset: {x: 0, y: 0} 78 | m_Floats: 79 | - first: 80 | name: _BumpScale 81 | second: 1 82 | - first: 83 | name: _Cutoff 84 | second: 0.5 85 | - first: 86 | name: _DetailNormalMapScale 87 | second: 1 88 | - first: 89 | name: _DstBlend 90 | second: 0 91 | - first: 92 | name: _GlossMapScale 93 | second: 1 94 | - first: 95 | name: _Glossiness 96 | second: 0.5 97 | - first: 98 | name: _GlossyReflections 99 | second: 1 100 | - first: 101 | name: _Metallic 102 | second: 0 103 | - first: 104 | name: _Mode 105 | second: 0 106 | - first: 107 | name: _OcclusionStrength 108 | second: 1 109 | - first: 110 | name: _Parallax 111 | second: 0.02 112 | - first: 113 | name: _SmoothnessTextureChannel 114 | second: 0 115 | - first: 116 | name: _SpecularHighlights 117 | second: 1 118 | - first: 119 | name: _SrcBlend 120 | second: 1 121 | - first: 122 | name: _UVSec 123 | second: 0 124 | - first: 125 | name: _ZWrite 126 | second: 1 127 | m_Colors: 128 | - first: 129 | name: _Color 130 | second: {r: 1, g: 1, b: 1, a: 1} 131 | - first: 132 | name: _EmissionColor 133 | second: {r: 0, g: 0, b: 0, a: 1} 134 | -------------------------------------------------------------------------------- /Assets/Materials/Sinbad_Yellow.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d29f5253530d04ed9aa6eaf115213691 3 | timeCreated: 1478799926 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Materials/sprite_recolour.shader: -------------------------------------------------------------------------------- 1 | Shader "Unlit/sprite_recolour" 2 | { 3 | Properties 4 | { 5 | _MainTex ("Reference Sprite", 2D) = "white" {} 6 | [NoScaleOffset] _PaletteTex ("Palette", 2D) = "white" {} 7 | } 8 | SubShader 9 | { 10 | Tags { "Queue" = "Transparent" "RenderType"="Transparent" } 11 | LOD 100 12 | 13 | Pass 14 | { 15 | Blend SrcAlpha OneMinusSrcAlpha 16 | BlendOp Add 17 | 18 | CGPROGRAM 19 | #pragma vertex vert 20 | #pragma fragment frag 21 | 22 | #include "UnityCG.cginc" 23 | 24 | struct appdata 25 | { 26 | float4 vertex : POSITION; 27 | float2 uv : TEXCOORD0; 28 | }; 29 | 30 | struct v2f 31 | { 32 | float2 uv : TEXCOORD0; 33 | float4 vertex : SV_POSITION; 34 | }; 35 | 36 | sampler2D _MainTex; 37 | sampler2D _PaletteTex; 38 | float4 _MainTex_ST; 39 | 40 | v2f vert (appdata v) 41 | { 42 | v2f o; 43 | o.vertex = UnityObjectToClipPos(v.vertex); 44 | o.uv = TRANSFORM_TEX(v.uv, _MainTex); 45 | return o; 46 | } 47 | 48 | fixed4 frag (v2f i) : SV_Target 49 | { 50 | // reference texture 51 | fixed4 ref = tex2D(_MainTex, i.uv); 52 | fixed4 palette = tex2D(_PaletteTex, ref.rg); 53 | 54 | return fixed4(palette.r, palette.g, palette.b, ref.a); 55 | } 56 | ENDCG 57 | } 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /Assets/Materials/sprite_recolour.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 95a610336930747c19c1ff4b0f76d234 3 | timeCreated: 1478799475 4 | licenseType: Free 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Materials/sprite_recolour_params.shader: -------------------------------------------------------------------------------- 1 | Shader "Unlit/sprite_recolour_params" 2 | { 3 | Properties 4 | { 5 | _MainTex ("Reference Sprite", 2D) = "white" {} 6 | } 7 | SubShader 8 | { 9 | Tags { "Queue" = "Transparent" "RenderType"="Transparent" } 10 | LOD 100 11 | 12 | Pass 13 | { 14 | Blend SrcAlpha OneMinusSrcAlpha 15 | BlendOp Add 16 | 17 | CGPROGRAM 18 | #pragma vertex vert 19 | #pragma fragment frag 20 | 21 | #include "UnityCG.cginc" 22 | 23 | // Can't expose arrays in Properties above, have to set in own script 24 | float4 paletteData[32]; 25 | 26 | struct appdata 27 | { 28 | float4 vertex : POSITION; 29 | float2 uv : TEXCOORD0; 30 | }; 31 | 32 | struct v2f 33 | { 34 | float2 uv : TEXCOORD0; 35 | float4 vertex : SV_POSITION; 36 | }; 37 | 38 | sampler2D _MainTex; 39 | sampler2D _PaletteTex; 40 | float4 _MainTex_ST; 41 | 42 | v2f vert (appdata v) 43 | { 44 | v2f o; 45 | o.vertex = UnityObjectToClipPos(v.vertex); 46 | o.uv = TRANSFORM_TEX(v.uv, _MainTex); 47 | return o; 48 | } 49 | 50 | fixed4 frag (v2f i) : SV_Target 51 | { 52 | // reference texture 53 | fixed4 ref = tex2D(_MainTex, i.uv); 54 | float4 palette = paletteData[floor(ref.r * 255.0)]; 55 | 56 | return fixed4(palette.r, palette.g, palette.b, ref.a); 57 | //return ref; 58 | } 59 | ENDCG 60 | } 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /Assets/Materials/sprite_recolour_params.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a7abe6338aa0944bd97a4cfaa2d1228c 3 | timeCreated: 1478799475 4 | licenseType: Free 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 536ba1e11a6b54a6595053147a64f886 3 | folderAsset: yes 4 | timeCreated: 1474646325 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Scenes/Start.unity: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!29 &1 4 | SceneSettings: 5 | m_ObjectHideFlags: 0 6 | m_PVSData: 7 | m_PVSObjectsArray: [] 8 | m_PVSPortalsArray: [] 9 | m_OcclusionBakeSettings: 10 | smallestOccluder: 5 11 | smallestHole: 0.25 12 | backfaceThreshold: 100 13 | --- !u!104 &2 14 | RenderSettings: 15 | m_ObjectHideFlags: 0 16 | serializedVersion: 7 17 | m_Fog: 0 18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} 19 | m_FogMode: 3 20 | m_FogDensity: 0.01 21 | m_LinearFogStart: 0 22 | m_LinearFogEnd: 300 23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} 24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} 25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} 26 | m_AmbientIntensity: 1 27 | m_AmbientMode: 0 28 | m_SkyboxMaterial: {fileID: 0} 29 | m_HaloStrength: 0.5 30 | m_FlareStrength: 1 31 | m_FlareFadeSpeed: 3 32 | m_HaloTexture: {fileID: 0} 33 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} 34 | m_DefaultReflectionMode: 0 35 | m_DefaultReflectionResolution: 128 36 | m_ReflectionBounces: 1 37 | m_ReflectionIntensity: 1 38 | m_CustomReflection: {fileID: 0} 39 | m_Sun: {fileID: 0} 40 | m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} 41 | --- !u!157 &3 42 | LightmapSettings: 43 | m_ObjectHideFlags: 0 44 | serializedVersion: 7 45 | m_GIWorkflowMode: 0 46 | m_GISettings: 47 | serializedVersion: 2 48 | m_BounceScale: 1 49 | m_IndirectOutputScale: 1 50 | m_AlbedoBoost: 1 51 | m_TemporalCoherenceThreshold: 1 52 | m_EnvironmentLightingMode: 0 53 | m_EnableBakedLightmaps: 0 54 | m_EnableRealtimeLightmaps: 0 55 | m_LightmapEditorSettings: 56 | serializedVersion: 4 57 | m_Resolution: 2 58 | m_BakeResolution: 40 59 | m_TextureWidth: 1024 60 | m_TextureHeight: 1024 61 | m_AO: 0 62 | m_AOMaxDistance: 1 63 | m_CompAOExponent: 1 64 | m_CompAOExponentDirect: 0 65 | m_Padding: 2 66 | m_LightmapParameters: {fileID: 0} 67 | m_LightmapsBakeMode: 1 68 | m_TextureCompression: 1 69 | m_DirectLightInLightProbes: 1 70 | m_FinalGather: 0 71 | m_FinalGatherFiltering: 1 72 | m_FinalGatherRayCount: 256 73 | m_ReflectionCompression: 2 74 | m_LightingDataAsset: {fileID: 0} 75 | m_RuntimeCPUUsage: 25 76 | --- !u!196 &4 77 | NavMeshSettings: 78 | serializedVersion: 2 79 | m_ObjectHideFlags: 0 80 | m_BuildSettings: 81 | serializedVersion: 2 82 | agentRadius: 0.5 83 | agentHeight: 2 84 | agentSlope: 45 85 | agentClimb: 0.4 86 | ledgeDropHeight: 0 87 | maxJumpAcrossDistance: 0 88 | accuratePlacement: 0 89 | minRegionArea: 2 90 | cellSize: 0.16666667 91 | manualCellSize: 0 92 | m_NavMeshData: {fileID: 0} 93 | --- !u!1 &182242149 94 | GameObject: 95 | m_ObjectHideFlags: 0 96 | m_PrefabParentObject: {fileID: 0} 97 | m_PrefabInternal: {fileID: 0} 98 | serializedVersion: 4 99 | m_Component: 100 | - 4: {fileID: 182242151} 101 | - 212: {fileID: 182242150} 102 | m_Layer: 0 103 | m_Name: Sinbad Front Blue 104 | m_TagString: Untagged 105 | m_Icon: {fileID: 0} 106 | m_NavMeshLayer: 0 107 | m_StaticEditorFlags: 0 108 | m_IsActive: 1 109 | --- !u!212 &182242150 110 | SpriteRenderer: 111 | m_ObjectHideFlags: 0 112 | m_PrefabParentObject: {fileID: 0} 113 | m_PrefabInternal: {fileID: 0} 114 | m_GameObject: {fileID: 182242149} 115 | m_Enabled: 1 116 | m_CastShadows: 0 117 | m_ReceiveShadows: 0 118 | m_MotionVectors: 1 119 | m_LightProbeUsage: 0 120 | m_ReflectionProbeUsage: 0 121 | m_Materials: 122 | - {fileID: 2100000, guid: 27bca53fca6624adb89c7c2e0c11cf4f, type: 2} 123 | m_SubsetIndices: 124 | m_StaticBatchRoot: {fileID: 0} 125 | m_ProbeAnchor: {fileID: 0} 126 | m_LightProbeVolumeOverride: {fileID: 0} 127 | m_ScaleInLightmap: 1 128 | m_PreserveUVs: 0 129 | m_IgnoreNormalsForChartDetection: 0 130 | m_ImportantGI: 0 131 | m_SelectedWireframeHidden: 1 132 | m_MinimumChartSize: 4 133 | m_AutoUVMaxDistance: 0.5 134 | m_AutoUVMaxAngle: 89 135 | m_LightmapParameters: {fileID: 0} 136 | m_SortingLayerID: 0 137 | m_SortingOrder: 0 138 | m_Sprite: {fileID: 21300002, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 139 | m_Color: {r: 1, g: 1, b: 1, a: 1} 140 | m_FlipX: 0 141 | m_FlipY: 0 142 | --- !u!4 &182242151 143 | Transform: 144 | m_ObjectHideFlags: 0 145 | m_PrefabParentObject: {fileID: 0} 146 | m_PrefabInternal: {fileID: 0} 147 | m_GameObject: {fileID: 182242149} 148 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 149 | m_LocalPosition: {x: -0.843, y: -0.718, z: 0} 150 | m_LocalScale: {x: 3, y: 3, z: 1} 151 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 152 | m_Children: [] 153 | m_Father: {fileID: 0} 154 | m_RootOrder: 3 155 | --- !u!1 &306007712 156 | GameObject: 157 | m_ObjectHideFlags: 0 158 | m_PrefabParentObject: {fileID: 0} 159 | m_PrefabInternal: {fileID: 0} 160 | serializedVersion: 4 161 | m_Component: 162 | - 4: {fileID: 306007714} 163 | - 212: {fileID: 306007713} 164 | - 114: {fileID: 306007715} 165 | m_Layer: 0 166 | m_Name: Sinbad Dynamic Params 167 | m_TagString: Untagged 168 | m_Icon: {fileID: 0} 169 | m_NavMeshLayer: 0 170 | m_StaticEditorFlags: 0 171 | m_IsActive: 1 172 | --- !u!212 &306007713 173 | SpriteRenderer: 174 | m_ObjectHideFlags: 0 175 | m_PrefabParentObject: {fileID: 0} 176 | m_PrefabInternal: {fileID: 0} 177 | m_GameObject: {fileID: 306007712} 178 | m_Enabled: 1 179 | m_CastShadows: 0 180 | m_ReceiveShadows: 0 181 | m_MotionVectors: 1 182 | m_LightProbeUsage: 0 183 | m_ReflectionProbeUsage: 0 184 | m_Materials: 185 | - {fileID: 2100000, guid: 7548579bb26fa4006a40c470004935e7, type: 2} 186 | m_SubsetIndices: 187 | m_StaticBatchRoot: {fileID: 0} 188 | m_ProbeAnchor: {fileID: 0} 189 | m_LightProbeVolumeOverride: {fileID: 0} 190 | m_ScaleInLightmap: 1 191 | m_PreserveUVs: 0 192 | m_IgnoreNormalsForChartDetection: 0 193 | m_ImportantGI: 0 194 | m_SelectedWireframeHidden: 1 195 | m_MinimumChartSize: 4 196 | m_AutoUVMaxDistance: 0.5 197 | m_AutoUVMaxAngle: 89 198 | m_LightmapParameters: {fileID: 0} 199 | m_SortingLayerID: 0 200 | m_SortingOrder: 0 201 | m_Sprite: {fileID: 21300002, guid: 2e0254b4faaba48298b6c3f2cb703ae4, type: 3} 202 | m_Color: {r: 1, g: 1, b: 1, a: 1} 203 | m_FlipX: 0 204 | m_FlipY: 0 205 | --- !u!4 &306007714 206 | Transform: 207 | m_ObjectHideFlags: 0 208 | m_PrefabParentObject: {fileID: 0} 209 | m_PrefabInternal: {fileID: 0} 210 | m_GameObject: {fileID: 306007712} 211 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 212 | m_LocalPosition: {x: 2.2, y: -0.726, z: 0} 213 | m_LocalScale: {x: 3, y: 3, z: 1} 214 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 215 | m_Children: [] 216 | m_Father: {fileID: 0} 217 | m_RootOrder: 9 218 | --- !u!114 &306007715 219 | MonoBehaviour: 220 | m_ObjectHideFlags: 0 221 | m_PrefabParentObject: {fileID: 0} 222 | m_PrefabInternal: {fileID: 0} 223 | m_GameObject: {fileID: 306007712} 224 | m_Enabled: 1 225 | m_EditorHideFlags: 0 226 | m_Script: {fileID: 11500000, guid: 1dc6da7af6eb94e32b55c70d0e69babc, type: 3} 227 | m_Name: 228 | m_EditorClassIdentifier: 229 | palette: 230 | - {r: 0, g: 0, b: 0, a: 1} 231 | - {r: 0.039215688, g: 0.023529412, b: 0.015686275, a: 1} 232 | - {r: 0.078431375, g: 0.047058824, b: 0.03529412, a: 1} 233 | - {r: 0.13333334, g: 0.09019608, b: 0.07450981, a: 1} 234 | - {r: 0.15686275, g: 0.14117648, b: 0.101960786, a: 1} 235 | - {r: 0.16470589, g: 0.16470589, b: 0.16470589, a: 1} 236 | - {r: 0.09019608, g: 0.15294118, b: 0.20392157, a: 1} 237 | - {r: 0.13725491, g: 0.21176471, b: 0.16470589, a: 1} 238 | - {r: 0.22745098, g: 0.21568628, b: 0.15294118, a: 1} 239 | - {r: 0.20784314, g: 0.13333334, b: 0.09411765, a: 1} 240 | - {r: 0.34117648, g: 0.21960784, b: 0.13333334, a: 1} 241 | - {r: 0.4862745, g: 0.43529412, b: 0.24313726, a: 1} 242 | - {r: 0.49803922, g: 0.45882353, b: 0.32156864, a: 1} 243 | - {r: 0.5803922, g: 0.5411765, b: 0.3764706, a: 1} 244 | - {r: 0.7019608, g: 0.6509804, b: 0.4745098, a: 1} 245 | - {r: 0.81960785, g: 0.7647059, b: 0.54509807, a: 1} 246 | - {r: 0.8039216, g: 0.7647059, b: 0.6313726, a: 1} 247 | - {r: 0.7882353, g: 0.7882353, b: 0.7882353, a: 1} 248 | - {r: 1, g: 1, b: 1, a: 1} 249 | - {r: 0.5019608, g: 0.5019608, b: 0.5019608, a: 1} 250 | - {r: 0.25699705, g: 0.06906584, b: 0.07679639, a: 1} 251 | - {r: 0.14558928, g: 0.03294475, b: 0.038027376, a: 1} 252 | - {r: 0.06520897, g: 0.017412191, b: 0.019594807, a: 1} 253 | - {r: 0.42903584, g: 0.085074745, b: 0.10172732, a: 1} 254 | - {r: 0.59511286, g: 0.15202747, b: 0.17075802, a: 1} 255 | - {r: 0.6879729, g: 0.24203505, b: 0.25791922, a: 1} 256 | - {r: 0.703906, g: 0.3466685, b: 0.35737318, a: 1} 257 | - {r: 0.9843137, g: 0.94509804, b: 0.2509804, a: 1} 258 | --- !u!1 &361351910 259 | GameObject: 260 | m_ObjectHideFlags: 0 261 | m_PrefabParentObject: {fileID: 0} 262 | m_PrefabInternal: {fileID: 0} 263 | serializedVersion: 4 264 | m_Component: 265 | - 4: {fileID: 361351913} 266 | - 23: {fileID: 361351912} 267 | - 102: {fileID: 361351911} 268 | m_Layer: 0 269 | m_Name: Palette Texture 270 | m_TagString: Untagged 271 | m_Icon: {fileID: 0} 272 | m_NavMeshLayer: 0 273 | m_StaticEditorFlags: 0 274 | m_IsActive: 1 275 | --- !u!102 &361351911 276 | TextMesh: 277 | serializedVersion: 3 278 | m_ObjectHideFlags: 0 279 | m_PrefabParentObject: {fileID: 0} 280 | m_PrefabInternal: {fileID: 0} 281 | m_GameObject: {fileID: 361351910} 282 | m_Text: Palette Textures 283 | m_OffsetZ: 0 284 | m_CharacterSize: 1 285 | m_LineSpacing: 1 286 | m_Anchor: 0 287 | m_Alignment: 0 288 | m_TabSize: 4 289 | m_FontSize: 0 290 | m_FontStyle: 0 291 | m_RichText: 1 292 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 293 | m_Color: 294 | serializedVersion: 2 295 | rgba: 4291493887 296 | --- !u!23 &361351912 297 | MeshRenderer: 298 | m_ObjectHideFlags: 0 299 | m_PrefabParentObject: {fileID: 0} 300 | m_PrefabInternal: {fileID: 0} 301 | m_GameObject: {fileID: 361351910} 302 | m_Enabled: 1 303 | m_CastShadows: 1 304 | m_ReceiveShadows: 1 305 | m_MotionVectors: 1 306 | m_LightProbeUsage: 1 307 | m_ReflectionProbeUsage: 1 308 | m_Materials: 309 | - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} 310 | m_SubsetIndices: 311 | m_StaticBatchRoot: {fileID: 0} 312 | m_ProbeAnchor: {fileID: 0} 313 | m_LightProbeVolumeOverride: {fileID: 0} 314 | m_ScaleInLightmap: 1 315 | m_PreserveUVs: 0 316 | m_IgnoreNormalsForChartDetection: 0 317 | m_ImportantGI: 0 318 | m_SelectedWireframeHidden: 0 319 | m_MinimumChartSize: 4 320 | m_AutoUVMaxDistance: 0.5 321 | m_AutoUVMaxAngle: 89 322 | m_LightmapParameters: {fileID: 0} 323 | m_SortingLayerID: 0 324 | m_SortingOrder: 0 325 | --- !u!4 &361351913 326 | Transform: 327 | m_ObjectHideFlags: 0 328 | m_PrefabParentObject: {fileID: 0} 329 | m_PrefabInternal: {fileID: 0} 330 | m_GameObject: {fileID: 361351910} 331 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 332 | m_LocalPosition: {x: -1.648, y: -1.537, z: 0} 333 | m_LocalScale: {x: 0.2, y: 0.2, z: 1} 334 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 335 | m_Children: [] 336 | m_Father: {fileID: 0} 337 | m_RootOrder: 12 338 | --- !u!1 &615285256 339 | GameObject: 340 | m_ObjectHideFlags: 0 341 | m_PrefabParentObject: {fileID: 0} 342 | m_PrefabInternal: {fileID: 0} 343 | serializedVersion: 4 344 | m_Component: 345 | - 4: {fileID: 615285258} 346 | - 212: {fileID: 615285257} 347 | m_Layer: 0 348 | m_Name: Sinbad Front Yellow 349 | m_TagString: Untagged 350 | m_Icon: {fileID: 0} 351 | m_NavMeshLayer: 0 352 | m_StaticEditorFlags: 0 353 | m_IsActive: 1 354 | --- !u!212 &615285257 355 | SpriteRenderer: 356 | m_ObjectHideFlags: 0 357 | m_PrefabParentObject: {fileID: 0} 358 | m_PrefabInternal: {fileID: 0} 359 | m_GameObject: {fileID: 615285256} 360 | m_Enabled: 1 361 | m_CastShadows: 0 362 | m_ReceiveShadows: 0 363 | m_MotionVectors: 1 364 | m_LightProbeUsage: 0 365 | m_ReflectionProbeUsage: 0 366 | m_Materials: 367 | - {fileID: 2100000, guid: d29f5253530d04ed9aa6eaf115213691, type: 2} 368 | m_SubsetIndices: 369 | m_StaticBatchRoot: {fileID: 0} 370 | m_ProbeAnchor: {fileID: 0} 371 | m_LightProbeVolumeOverride: {fileID: 0} 372 | m_ScaleInLightmap: 1 373 | m_PreserveUVs: 0 374 | m_IgnoreNormalsForChartDetection: 0 375 | m_ImportantGI: 0 376 | m_SelectedWireframeHidden: 1 377 | m_MinimumChartSize: 4 378 | m_AutoUVMaxDistance: 0.5 379 | m_AutoUVMaxAngle: 89 380 | m_LightmapParameters: {fileID: 0} 381 | m_SortingLayerID: 0 382 | m_SortingOrder: 0 383 | m_Sprite: {fileID: 21300002, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 384 | m_Color: {r: 1, g: 1, b: 1, a: 1} 385 | m_FlipX: 0 386 | m_FlipY: 0 387 | --- !u!4 &615285258 388 | Transform: 389 | m_ObjectHideFlags: 0 390 | m_PrefabParentObject: {fileID: 0} 391 | m_PrefabInternal: {fileID: 0} 392 | m_GameObject: {fileID: 615285256} 393 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 394 | m_LocalPosition: {x: 0.553, y: -0.702, z: 0} 395 | m_LocalScale: {x: 3, y: 3, z: 1} 396 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 397 | m_Children: [] 398 | m_Father: {fileID: 0} 399 | m_RootOrder: 5 400 | --- !u!1 &691607234 401 | GameObject: 402 | m_ObjectHideFlags: 0 403 | m_PrefabParentObject: {fileID: 0} 404 | m_PrefabInternal: {fileID: 0} 405 | serializedVersion: 4 406 | m_Component: 407 | - 4: {fileID: 691607236} 408 | - 212: {fileID: 691607235} 409 | m_Layer: 0 410 | m_Name: Sinbad Front 411 | m_TagString: Untagged 412 | m_Icon: {fileID: 0} 413 | m_NavMeshLayer: 0 414 | m_StaticEditorFlags: 0 415 | m_IsActive: 1 416 | --- !u!212 &691607235 417 | SpriteRenderer: 418 | m_ObjectHideFlags: 0 419 | m_PrefabParentObject: {fileID: 0} 420 | m_PrefabInternal: {fileID: 0} 421 | m_GameObject: {fileID: 691607234} 422 | m_Enabled: 1 423 | m_CastShadows: 0 424 | m_ReceiveShadows: 0 425 | m_MotionVectors: 1 426 | m_LightProbeUsage: 0 427 | m_ReflectionProbeUsage: 0 428 | m_Materials: 429 | - {fileID: 2100000, guid: 4b25aca52a12b4fd7827ae1db7886c22, type: 2} 430 | m_SubsetIndices: 431 | m_StaticBatchRoot: {fileID: 0} 432 | m_ProbeAnchor: {fileID: 0} 433 | m_LightProbeVolumeOverride: {fileID: 0} 434 | m_ScaleInLightmap: 1 435 | m_PreserveUVs: 0 436 | m_IgnoreNormalsForChartDetection: 0 437 | m_ImportantGI: 0 438 | m_SelectedWireframeHidden: 1 439 | m_MinimumChartSize: 4 440 | m_AutoUVMaxDistance: 0.5 441 | m_AutoUVMaxAngle: 89 442 | m_LightmapParameters: {fileID: 0} 443 | m_SortingLayerID: 0 444 | m_SortingOrder: 0 445 | m_Sprite: {fileID: 21300002, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 446 | m_Color: {r: 1, g: 1, b: 1, a: 1} 447 | m_FlipX: 0 448 | m_FlipY: 0 449 | --- !u!4 &691607236 450 | Transform: 451 | m_ObjectHideFlags: 0 452 | m_PrefabParentObject: {fileID: 0} 453 | m_PrefabInternal: {fileID: 0} 454 | m_GameObject: {fileID: 691607234} 455 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 456 | m_LocalPosition: {x: -1.87, y: 0.96, z: 0} 457 | m_LocalScale: {x: 3, y: 3, z: 1} 458 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 459 | m_Children: [] 460 | m_Father: {fileID: 0} 461 | m_RootOrder: 2 462 | --- !u!1 &1036785459 463 | GameObject: 464 | m_ObjectHideFlags: 0 465 | m_PrefabParentObject: {fileID: 0} 466 | m_PrefabInternal: {fileID: 0} 467 | serializedVersion: 4 468 | m_Component: 469 | - 4: {fileID: 1036785462} 470 | - 212: {fileID: 1036785461} 471 | - 114: {fileID: 1036785460} 472 | m_Layer: 0 473 | m_Name: Sinbad Dynamic Params Right 474 | m_TagString: Untagged 475 | m_Icon: {fileID: 0} 476 | m_NavMeshLayer: 0 477 | m_StaticEditorFlags: 0 478 | m_IsActive: 1 479 | --- !u!114 &1036785460 480 | MonoBehaviour: 481 | m_ObjectHideFlags: 0 482 | m_PrefabParentObject: {fileID: 0} 483 | m_PrefabInternal: {fileID: 0} 484 | m_GameObject: {fileID: 1036785459} 485 | m_Enabled: 1 486 | m_EditorHideFlags: 0 487 | m_Script: {fileID: 11500000, guid: 1dc6da7af6eb94e32b55c70d0e69babc, type: 3} 488 | m_Name: 489 | m_EditorClassIdentifier: 490 | palette: 491 | - {r: 0, g: 0, b: 0, a: 1} 492 | - {r: 0.039215688, g: 0.023529412, b: 0.015686275, a: 1} 493 | - {r: 0.078431375, g: 0.047058824, b: 0.03529412, a: 1} 494 | - {r: 0.13333334, g: 0.09019608, b: 0.07450981, a: 1} 495 | - {r: 0.15686275, g: 0.14117648, b: 0.101960786, a: 1} 496 | - {r: 0.16470589, g: 0.16470589, b: 0.16470589, a: 1} 497 | - {r: 0.09019608, g: 0.15294118, b: 0.20392157, a: 1} 498 | - {r: 0.13725491, g: 0.21176471, b: 0.16470589, a: 1} 499 | - {r: 0.22745098, g: 0.21568628, b: 0.15294118, a: 1} 500 | - {r: 0.20784314, g: 0.13333334, b: 0.09411765, a: 1} 501 | - {r: 0.34117648, g: 0.21960784, b: 0.13333334, a: 1} 502 | - {r: 0.4862745, g: 0.43529412, b: 0.24313726, a: 1} 503 | - {r: 0.49803922, g: 0.45882353, b: 0.32156864, a: 1} 504 | - {r: 0.5803922, g: 0.5411765, b: 0.3764706, a: 1} 505 | - {r: 0.7019608, g: 0.6509804, b: 0.4745098, a: 1} 506 | - {r: 0.81960785, g: 0.7647059, b: 0.54509807, a: 1} 507 | - {r: 0.8039216, g: 0.7647059, b: 0.6313726, a: 1} 508 | - {r: 0.7882353, g: 0.7882353, b: 0.7882353, a: 1} 509 | - {r: 1, g: 1, b: 1, a: 1} 510 | - {r: 0.5019608, g: 0.5019608, b: 0.5019608, a: 1} 511 | - {r: 0.25699705, g: 0.06906584, b: 0.07679639, a: 1} 512 | - {r: 0.14558928, g: 0.03294475, b: 0.038027376, a: 1} 513 | - {r: 0.06520897, g: 0.017412191, b: 0.019594807, a: 1} 514 | - {r: 0.42903584, g: 0.085074745, b: 0.10172732, a: 1} 515 | - {r: 0.59511286, g: 0.15202747, b: 0.17075802, a: 1} 516 | - {r: 0.6879729, g: 0.24203505, b: 0.25791922, a: 1} 517 | - {r: 0.703906, g: 0.3466685, b: 0.35737318, a: 1} 518 | - {r: 0.9843137, g: 0.94509804, b: 0.2509804, a: 1} 519 | --- !u!212 &1036785461 520 | SpriteRenderer: 521 | m_ObjectHideFlags: 0 522 | m_PrefabParentObject: {fileID: 0} 523 | m_PrefabInternal: {fileID: 0} 524 | m_GameObject: {fileID: 1036785459} 525 | m_Enabled: 1 526 | m_CastShadows: 0 527 | m_ReceiveShadows: 0 528 | m_MotionVectors: 1 529 | m_LightProbeUsage: 0 530 | m_ReflectionProbeUsage: 0 531 | m_Materials: 532 | - {fileID: 2100000, guid: 7548579bb26fa4006a40c470004935e7, type: 2} 533 | m_SubsetIndices: 534 | m_StaticBatchRoot: {fileID: 0} 535 | m_ProbeAnchor: {fileID: 0} 536 | m_LightProbeVolumeOverride: {fileID: 0} 537 | m_ScaleInLightmap: 1 538 | m_PreserveUVs: 0 539 | m_IgnoreNormalsForChartDetection: 0 540 | m_ImportantGI: 0 541 | m_SelectedWireframeHidden: 1 542 | m_MinimumChartSize: 4 543 | m_AutoUVMaxDistance: 0.5 544 | m_AutoUVMaxAngle: 89 545 | m_LightmapParameters: {fileID: 0} 546 | m_SortingLayerID: 0 547 | m_SortingOrder: 0 548 | m_Sprite: {fileID: 21300000, guid: 2e0254b4faaba48298b6c3f2cb703ae4, type: 3} 549 | m_Color: {r: 1, g: 1, b: 1, a: 1} 550 | m_FlipX: 0 551 | m_FlipY: 0 552 | --- !u!4 &1036785462 553 | Transform: 554 | m_ObjectHideFlags: 0 555 | m_PrefabParentObject: {fileID: 0} 556 | m_PrefabInternal: {fileID: 0} 557 | m_GameObject: {fileID: 1036785459} 558 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 559 | m_LocalPosition: {x: 2.08, y: 0.89, z: 0} 560 | m_LocalScale: {x: 3, y: 3, z: 1} 561 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 562 | m_Children: [] 563 | m_Father: {fileID: 0} 564 | m_RootOrder: 10 565 | --- !u!1 &1075247271 566 | GameObject: 567 | m_ObjectHideFlags: 0 568 | m_PrefabParentObject: {fileID: 0} 569 | m_PrefabInternal: {fileID: 0} 570 | serializedVersion: 4 571 | m_Component: 572 | - 4: {fileID: 1075247276} 573 | - 20: {fileID: 1075247275} 574 | - 92: {fileID: 1075247274} 575 | - 124: {fileID: 1075247273} 576 | - 81: {fileID: 1075247272} 577 | m_Layer: 0 578 | m_Name: Main Camera 579 | m_TagString: MainCamera 580 | m_Icon: {fileID: 0} 581 | m_NavMeshLayer: 0 582 | m_StaticEditorFlags: 0 583 | m_IsActive: 1 584 | --- !u!81 &1075247272 585 | AudioListener: 586 | m_ObjectHideFlags: 0 587 | m_PrefabParentObject: {fileID: 0} 588 | m_PrefabInternal: {fileID: 0} 589 | m_GameObject: {fileID: 1075247271} 590 | m_Enabled: 1 591 | --- !u!124 &1075247273 592 | Behaviour: 593 | m_ObjectHideFlags: 0 594 | m_PrefabParentObject: {fileID: 0} 595 | m_PrefabInternal: {fileID: 0} 596 | m_GameObject: {fileID: 1075247271} 597 | m_Enabled: 1 598 | --- !u!92 &1075247274 599 | Behaviour: 600 | m_ObjectHideFlags: 0 601 | m_PrefabParentObject: {fileID: 0} 602 | m_PrefabInternal: {fileID: 0} 603 | m_GameObject: {fileID: 1075247271} 604 | m_Enabled: 1 605 | --- !u!20 &1075247275 606 | Camera: 607 | m_ObjectHideFlags: 0 608 | m_PrefabParentObject: {fileID: 0} 609 | m_PrefabInternal: {fileID: 0} 610 | m_GameObject: {fileID: 1075247271} 611 | m_Enabled: 1 612 | serializedVersion: 2 613 | m_ClearFlags: 1 614 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} 615 | m_NormalizedViewPortRect: 616 | serializedVersion: 2 617 | x: 0 618 | y: 0 619 | width: 1 620 | height: 1 621 | near clip plane: 0.3 622 | far clip plane: 1000 623 | field of view: 60 624 | orthographic: 1 625 | orthographic size: 2 626 | m_Depth: -1 627 | m_CullingMask: 628 | serializedVersion: 2 629 | m_Bits: 4294967295 630 | m_RenderingPath: -1 631 | m_TargetTexture: {fileID: 0} 632 | m_TargetDisplay: 0 633 | m_TargetEye: 3 634 | m_HDR: 0 635 | m_OcclusionCulling: 1 636 | m_StereoConvergence: 10 637 | m_StereoSeparation: 0.022 638 | m_StereoMirrorMode: 0 639 | --- !u!4 &1075247276 640 | Transform: 641 | m_ObjectHideFlags: 0 642 | m_PrefabParentObject: {fileID: 0} 643 | m_PrefabInternal: {fileID: 0} 644 | m_GameObject: {fileID: 1075247271} 645 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 646 | m_LocalPosition: {x: 0, y: 0, z: -10} 647 | m_LocalScale: {x: 1, y: 1, z: 1} 648 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 649 | m_Children: [] 650 | m_Father: {fileID: 0} 651 | m_RootOrder: 0 652 | --- !u!1 &1475214388 653 | GameObject: 654 | m_ObjectHideFlags: 0 655 | m_PrefabParentObject: {fileID: 0} 656 | m_PrefabInternal: {fileID: 0} 657 | serializedVersion: 4 658 | m_Component: 659 | - 4: {fileID: 1475214390} 660 | - 212: {fileID: 1475214389} 661 | m_Layer: 0 662 | m_Name: Sinbad Front Grey 663 | m_TagString: Untagged 664 | m_Icon: {fileID: 0} 665 | m_NavMeshLayer: 0 666 | m_StaticEditorFlags: 0 667 | m_IsActive: 1 668 | --- !u!212 &1475214389 669 | SpriteRenderer: 670 | m_ObjectHideFlags: 0 671 | m_PrefabParentObject: {fileID: 0} 672 | m_PrefabInternal: {fileID: 0} 673 | m_GameObject: {fileID: 1475214388} 674 | m_Enabled: 1 675 | m_CastShadows: 0 676 | m_ReceiveShadows: 0 677 | m_MotionVectors: 1 678 | m_LightProbeUsage: 0 679 | m_ReflectionProbeUsage: 0 680 | m_Materials: 681 | - {fileID: 2100000, guid: 30e3850862e24497ea447a1b0b9e7e31, type: 2} 682 | m_SubsetIndices: 683 | m_StaticBatchRoot: {fileID: 0} 684 | m_ProbeAnchor: {fileID: 0} 685 | m_LightProbeVolumeOverride: {fileID: 0} 686 | m_ScaleInLightmap: 1 687 | m_PreserveUVs: 0 688 | m_IgnoreNormalsForChartDetection: 0 689 | m_ImportantGI: 0 690 | m_SelectedWireframeHidden: 1 691 | m_MinimumChartSize: 4 692 | m_AutoUVMaxDistance: 0.5 693 | m_AutoUVMaxAngle: 89 694 | m_LightmapParameters: {fileID: 0} 695 | m_SortingLayerID: 0 696 | m_SortingOrder: 0 697 | m_Sprite: {fileID: 21300002, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 698 | m_Color: {r: 1, g: 1, b: 1, a: 1} 699 | m_FlipX: 0 700 | m_FlipY: 0 701 | --- !u!4 &1475214390 702 | Transform: 703 | m_ObjectHideFlags: 0 704 | m_PrefabParentObject: {fileID: 0} 705 | m_PrefabInternal: {fileID: 0} 706 | m_GameObject: {fileID: 1475214388} 707 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 708 | m_LocalPosition: {x: 0.54, y: 0.9, z: 0} 709 | m_LocalScale: {x: 3, y: 3, z: 1} 710 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 711 | m_Children: [] 712 | m_Father: {fileID: 0} 713 | m_RootOrder: 4 714 | --- !u!1 &1495134956 715 | GameObject: 716 | m_ObjectHideFlags: 0 717 | m_PrefabParentObject: {fileID: 0} 718 | m_PrefabInternal: {fileID: 0} 719 | serializedVersion: 4 720 | m_Component: 721 | - 4: {fileID: 1495134958} 722 | - 212: {fileID: 1495134957} 723 | m_Layer: 0 724 | m_Name: Sinbad Left Blue 725 | m_TagString: Untagged 726 | m_Icon: {fileID: 0} 727 | m_NavMeshLayer: 0 728 | m_StaticEditorFlags: 0 729 | m_IsActive: 1 730 | --- !u!212 &1495134957 731 | SpriteRenderer: 732 | m_ObjectHideFlags: 0 733 | m_PrefabParentObject: {fileID: 0} 734 | m_PrefabInternal: {fileID: 0} 735 | m_GameObject: {fileID: 1495134956} 736 | m_Enabled: 1 737 | m_CastShadows: 0 738 | m_ReceiveShadows: 0 739 | m_MotionVectors: 1 740 | m_LightProbeUsage: 0 741 | m_ReflectionProbeUsage: 0 742 | m_Materials: 743 | - {fileID: 2100000, guid: 27bca53fca6624adb89c7c2e0c11cf4f, type: 2} 744 | m_SubsetIndices: 745 | m_StaticBatchRoot: {fileID: 0} 746 | m_ProbeAnchor: {fileID: 0} 747 | m_LightProbeVolumeOverride: {fileID: 0} 748 | m_ScaleInLightmap: 1 749 | m_PreserveUVs: 0 750 | m_IgnoreNormalsForChartDetection: 0 751 | m_ImportantGI: 0 752 | m_SelectedWireframeHidden: 1 753 | m_MinimumChartSize: 4 754 | m_AutoUVMaxDistance: 0.5 755 | m_AutoUVMaxAngle: 89 756 | m_LightmapParameters: {fileID: 0} 757 | m_SortingLayerID: 0 758 | m_SortingOrder: 0 759 | m_Sprite: {fileID: 21300000, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 760 | m_Color: {r: 1, g: 1, b: 1, a: 1} 761 | m_FlipX: 0 762 | m_FlipY: 0 763 | --- !u!4 &1495134958 764 | Transform: 765 | m_ObjectHideFlags: 0 766 | m_PrefabParentObject: {fileID: 0} 767 | m_PrefabInternal: {fileID: 0} 768 | m_GameObject: {fileID: 1495134956} 769 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 770 | m_LocalPosition: {x: -2.75, y: 0.04, z: 0} 771 | m_LocalScale: {x: 3, y: 3, z: 1} 772 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 773 | m_Children: [] 774 | m_Father: {fileID: 0} 775 | m_RootOrder: 7 776 | --- !u!1 &1669282784 777 | GameObject: 778 | m_ObjectHideFlags: 0 779 | m_PrefabParentObject: {fileID: 0} 780 | m_PrefabInternal: {fileID: 0} 781 | serializedVersion: 4 782 | m_Component: 783 | - 4: {fileID: 1669282786} 784 | - 212: {fileID: 1669282785} 785 | m_Layer: 0 786 | m_Name: Sinbad Left Grey 787 | m_TagString: Untagged 788 | m_Icon: {fileID: 0} 789 | m_NavMeshLayer: 0 790 | m_StaticEditorFlags: 0 791 | m_IsActive: 1 792 | --- !u!212 &1669282785 793 | SpriteRenderer: 794 | m_ObjectHideFlags: 0 795 | m_PrefabParentObject: {fileID: 0} 796 | m_PrefabInternal: {fileID: 0} 797 | m_GameObject: {fileID: 1669282784} 798 | m_Enabled: 1 799 | m_CastShadows: 0 800 | m_ReceiveShadows: 0 801 | m_MotionVectors: 1 802 | m_LightProbeUsage: 0 803 | m_ReflectionProbeUsage: 0 804 | m_Materials: 805 | - {fileID: 2100000, guid: 30e3850862e24497ea447a1b0b9e7e31, type: 2} 806 | m_SubsetIndices: 807 | m_StaticBatchRoot: {fileID: 0} 808 | m_ProbeAnchor: {fileID: 0} 809 | m_LightProbeVolumeOverride: {fileID: 0} 810 | m_ScaleInLightmap: 1 811 | m_PreserveUVs: 0 812 | m_IgnoreNormalsForChartDetection: 0 813 | m_ImportantGI: 0 814 | m_SelectedWireframeHidden: 1 815 | m_MinimumChartSize: 4 816 | m_AutoUVMaxDistance: 0.5 817 | m_AutoUVMaxAngle: 89 818 | m_LightmapParameters: {fileID: 0} 819 | m_SortingLayerID: 0 820 | m_SortingOrder: 0 821 | m_Sprite: {fileID: 21300006, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 822 | m_Color: {r: 1, g: 1, b: 1, a: 1} 823 | m_FlipX: 0 824 | m_FlipY: 0 825 | --- !u!4 &1669282786 826 | Transform: 827 | m_ObjectHideFlags: 0 828 | m_PrefabParentObject: {fileID: 0} 829 | m_PrefabInternal: {fileID: 0} 830 | m_GameObject: {fileID: 1669282784} 831 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 832 | m_LocalPosition: {x: -1.876, y: -0.757, z: 0} 833 | m_LocalScale: {x: 3, y: 3, z: 1} 834 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 835 | m_Children: [] 836 | m_Father: {fileID: 0} 837 | m_RootOrder: 8 838 | --- !u!1 &1730509795 839 | GameObject: 840 | m_ObjectHideFlags: 0 841 | m_PrefabParentObject: {fileID: 0} 842 | m_PrefabInternal: {fileID: 0} 843 | serializedVersion: 4 844 | m_Component: 845 | - 4: {fileID: 1730509797} 846 | - 212: {fileID: 1730509796} 847 | m_Layer: 0 848 | m_Name: Sinbad Right Yellow 849 | m_TagString: Untagged 850 | m_Icon: {fileID: 0} 851 | m_NavMeshLayer: 0 852 | m_StaticEditorFlags: 0 853 | m_IsActive: 1 854 | --- !u!212 &1730509796 855 | SpriteRenderer: 856 | m_ObjectHideFlags: 0 857 | m_PrefabParentObject: {fileID: 0} 858 | m_PrefabInternal: {fileID: 0} 859 | m_GameObject: {fileID: 1730509795} 860 | m_Enabled: 1 861 | m_CastShadows: 0 862 | m_ReceiveShadows: 0 863 | m_MotionVectors: 1 864 | m_LightProbeUsage: 0 865 | m_ReflectionProbeUsage: 0 866 | m_Materials: 867 | - {fileID: 2100000, guid: d29f5253530d04ed9aa6eaf115213691, type: 2} 868 | m_SubsetIndices: 869 | m_StaticBatchRoot: {fileID: 0} 870 | m_ProbeAnchor: {fileID: 0} 871 | m_LightProbeVolumeOverride: {fileID: 0} 872 | m_ScaleInLightmap: 1 873 | m_PreserveUVs: 0 874 | m_IgnoreNormalsForChartDetection: 0 875 | m_ImportantGI: 0 876 | m_SelectedWireframeHidden: 1 877 | m_MinimumChartSize: 4 878 | m_AutoUVMaxDistance: 0.5 879 | m_AutoUVMaxAngle: 89 880 | m_LightmapParameters: {fileID: 0} 881 | m_SortingLayerID: 0 882 | m_SortingOrder: 0 883 | m_Sprite: {fileID: 21300000, guid: 7c7255fc6cd7549a381043c62c93a193, type: 3} 884 | m_Color: {r: 1, g: 1, b: 1, a: 1} 885 | m_FlipX: 0 886 | m_FlipY: 0 887 | --- !u!4 &1730509797 888 | Transform: 889 | m_ObjectHideFlags: 0 890 | m_PrefabParentObject: {fileID: 0} 891 | m_PrefabInternal: {fileID: 0} 892 | m_GameObject: {fileID: 1730509795} 893 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 894 | m_LocalPosition: {x: -0.75, y: 0.91, z: 0} 895 | m_LocalScale: {x: 3, y: 3, z: 1} 896 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 897 | m_Children: [] 898 | m_Father: {fileID: 0} 899 | m_RootOrder: 6 900 | --- !u!1 &1754567311 901 | GameObject: 902 | m_ObjectHideFlags: 0 903 | m_PrefabParentObject: {fileID: 0} 904 | m_PrefabInternal: {fileID: 0} 905 | serializedVersion: 4 906 | m_Component: 907 | - 4: {fileID: 1754567314} 908 | - 23: {fileID: 1754567313} 909 | - 102: {fileID: 1754567312} 910 | m_Layer: 0 911 | m_Name: Dynamic 912 | m_TagString: Untagged 913 | m_Icon: {fileID: 0} 914 | m_NavMeshLayer: 0 915 | m_StaticEditorFlags: 0 916 | m_IsActive: 1 917 | --- !u!102 &1754567312 918 | TextMesh: 919 | serializedVersion: 3 920 | m_ObjectHideFlags: 0 921 | m_PrefabParentObject: {fileID: 0} 922 | m_PrefabInternal: {fileID: 0} 923 | m_GameObject: {fileID: 1754567311} 924 | m_Text: Parameters 925 | m_OffsetZ: 0 926 | m_CharacterSize: 1 927 | m_LineSpacing: 1 928 | m_Anchor: 0 929 | m_Alignment: 0 930 | m_TabSize: 4 931 | m_FontSize: 0 932 | m_FontStyle: 0 933 | m_RichText: 1 934 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 935 | m_Color: 936 | serializedVersion: 2 937 | rgba: 4294952411 938 | --- !u!23 &1754567313 939 | MeshRenderer: 940 | m_ObjectHideFlags: 0 941 | m_PrefabParentObject: {fileID: 0} 942 | m_PrefabInternal: {fileID: 0} 943 | m_GameObject: {fileID: 1754567311} 944 | m_Enabled: 1 945 | m_CastShadows: 1 946 | m_ReceiveShadows: 1 947 | m_MotionVectors: 1 948 | m_LightProbeUsage: 1 949 | m_ReflectionProbeUsage: 1 950 | m_Materials: 951 | - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} 952 | m_SubsetIndices: 953 | m_StaticBatchRoot: {fileID: 0} 954 | m_ProbeAnchor: {fileID: 0} 955 | m_LightProbeVolumeOverride: {fileID: 0} 956 | m_ScaleInLightmap: 1 957 | m_PreserveUVs: 0 958 | m_IgnoreNormalsForChartDetection: 0 959 | m_ImportantGI: 0 960 | m_SelectedWireframeHidden: 0 961 | m_MinimumChartSize: 4 962 | m_AutoUVMaxDistance: 0.5 963 | m_AutoUVMaxAngle: 89 964 | m_LightmapParameters: {fileID: 0} 965 | m_SortingLayerID: 0 966 | m_SortingOrder: 0 967 | --- !u!4 &1754567314 968 | Transform: 969 | m_ObjectHideFlags: 0 970 | m_PrefabParentObject: {fileID: 0} 971 | m_PrefabInternal: {fileID: 0} 972 | m_GameObject: {fileID: 1754567311} 973 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 974 | m_LocalPosition: {x: 1.53, y: -1.52, z: 0} 975 | m_LocalScale: {x: 0.2, y: 0.2, z: 1} 976 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 977 | m_Children: [] 978 | m_Father: {fileID: 0} 979 | m_RootOrder: 11 980 | --- !u!1 &1918834213 981 | GameObject: 982 | m_ObjectHideFlags: 0 983 | m_PrefabParentObject: {fileID: 0} 984 | m_PrefabInternal: {fileID: 0} 985 | serializedVersion: 4 986 | m_Component: 987 | - 4: {fileID: 1918834215} 988 | - 108: {fileID: 1918834214} 989 | m_Layer: 0 990 | m_Name: Directional Light 991 | m_TagString: Untagged 992 | m_Icon: {fileID: 0} 993 | m_NavMeshLayer: 0 994 | m_StaticEditorFlags: 0 995 | m_IsActive: 1 996 | --- !u!108 &1918834214 997 | Light: 998 | m_ObjectHideFlags: 0 999 | m_PrefabParentObject: {fileID: 0} 1000 | m_PrefabInternal: {fileID: 0} 1001 | m_GameObject: {fileID: 1918834213} 1002 | m_Enabled: 1 1003 | serializedVersion: 7 1004 | m_Type: 1 1005 | m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} 1006 | m_Intensity: 1 1007 | m_Range: 10 1008 | m_SpotAngle: 30 1009 | m_CookieSize: 10 1010 | m_Shadows: 1011 | m_Type: 2 1012 | m_Resolution: -1 1013 | m_CustomResolution: -1 1014 | m_Strength: 1 1015 | m_Bias: 0.05 1016 | m_NormalBias: 0.4 1017 | m_NearPlane: 0.2 1018 | m_Cookie: {fileID: 0} 1019 | m_DrawHalo: 0 1020 | m_Flare: {fileID: 0} 1021 | m_RenderMode: 0 1022 | m_CullingMask: 1023 | serializedVersion: 2 1024 | m_Bits: 4294967295 1025 | m_Lightmapping: 4 1026 | m_AreaSize: {x: 1, y: 1} 1027 | m_BounceIntensity: 1 1028 | m_ShadowRadius: 0 1029 | m_ShadowAngle: 0 1030 | --- !u!4 &1918834215 1031 | Transform: 1032 | m_ObjectHideFlags: 0 1033 | m_PrefabParentObject: {fileID: 0} 1034 | m_PrefabInternal: {fileID: 0} 1035 | m_GameObject: {fileID: 1918834213} 1036 | m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} 1037 | m_LocalPosition: {x: 0, y: 3, z: 0} 1038 | m_LocalScale: {x: 1, y: 1, z: 1} 1039 | m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} 1040 | m_Children: [] 1041 | m_Father: {fileID: 0} 1042 | m_RootOrder: 1 1043 | -------------------------------------------------------------------------------- /Assets/Scenes/Start.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82f3498e556584dd49e541f4a17c249d 3 | timeCreated: 1474646317 4 | licenseType: Free 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 959cc01ddc1494321b5779f910f87056 3 | folderAsset: yes 4 | timeCreated: 1478864728 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Scripts/SpriteRecolourDynamic.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | 5 | // You wouldn't normall use ExecuteInEditMode, I"m just doing this to make 6 | // it appear in the editor 7 | [ExecuteInEditMode] 8 | public class SpriteRecolourDynamic : MonoBehaviour { 9 | 10 | public Color[] palette = new Color[] { 11 | new Color(0, 0, 0, 1), 12 | new Color(0.0392156862745098f, 0.023529411764705882f, 0.01568627450980392f, 1), 13 | new Color(0.0784313725490196f, 0.047058823529411764f, 0.03529411764705882f, 1), 14 | new Color(0.13333333333333333f, 0.09019607843137255f, 0.07450980392156863f, 1), 15 | new Color(0.1568627450980392f, 0.1411764705882353f, 0.10196078431372549f, 1), 16 | new Color(0.16470588235294117f, 0.16470588235294117f, 0.16470588235294117f, 1), 17 | new Color(0.09019607843137255f, 0.15294117647058825f, 0.20392156862745098f, 1), 18 | new Color(0.13725490196078433f, 0.21176470588235294f, 0.16470588235294117f, 1), 19 | new Color(0.22745098039215686f, 0.21568627450980393f, 0.15294117647058825f, 1), 20 | new Color(0.20784313725490197f, 0.13333333333333333f, 0.09411764705882353f, 1), 21 | new Color(0.3411764705882353f, 0.2196078431372549f, 0.13333333333333333f, 1), 22 | new Color(0.48627450980392156f, 0.43529411764705883f, 0.24313725490196078f, 1), 23 | new Color(0.4980392156862745f, 0.4588235294117647f, 0.3215686274509804f, 1), 24 | new Color(0.5803921568627451f, 0.5411764705882353f, 0.3764705882352941f, 1), 25 | new Color(0.7019607843137254f, 0.6509803921568628f, 0.4745098039215686f, 1), 26 | new Color(0.8196078431372549f, 0.7647058823529411f, 0.5450980392156862f, 1), 27 | new Color(0.803921568627451f, 0.7647058823529411f, 0.6313725490196078f, 1), 28 | new Color(0.788235294117647f, 0.788235294117647f, 0.788235294117647f, 1), 29 | new Color(1, 1, 1, 1), 30 | new Color(0.5019607843137255f, 0.5019607843137255f, 0.5019607843137255f, 1), 31 | new Color(0.09803921568627451f, 0.32941176470588235f, 0.11372549019607843f, 1), 32 | new Color(0.03529411764705882f, 0.19607843137254902f, 0.043137254901960784f, 1), 33 | new Color(0.01568627450980392f, 0.08235294117647059f, 0.023529411764705882f, 1), 34 | new Color(0.13333333333333333f, 0.5098039215686274f, 0.21176470588235294f, 1), 35 | new Color(0.2235294117647059f, 0.6666666666666666f, 0.3058823529411765f, 1), 36 | new Color(0.14901960784313725f, 0.6862745098039216f, 0.3254901960784314f, 1), 37 | new Color(0.3254901960784314f, 0.7490196078431373f, 0.44313725490196076f, 1), 38 | new Color(0.984313725490196f, 0.9450980392156862f, 0.25098039215686274f, 1), 39 | }; 40 | 41 | private Color[] defaultPalette = new Color[] { 42 | new Color(0, 0, 0, 1), 43 | new Color(0.0392156862745098f, 0.023529411764705882f, 0.01568627450980392f, 1), 44 | new Color(0.0784313725490196f, 0.047058823529411764f, 0.03529411764705882f, 1), 45 | new Color(0.13333333333333333f, 0.09019607843137255f, 0.07450980392156863f, 1), 46 | new Color(0.1568627450980392f, 0.1411764705882353f, 0.10196078431372549f, 1), 47 | new Color(0.16470588235294117f, 0.16470588235294117f, 0.16470588235294117f, 1), 48 | new Color(0.09019607843137255f, 0.15294117647058825f, 0.20392156862745098f, 1), 49 | new Color(0.13725490196078433f, 0.21176470588235294f, 0.16470588235294117f, 1), 50 | new Color(0.22745098039215686f, 0.21568627450980393f, 0.15294117647058825f, 1), 51 | new Color(0.20784313725490197f, 0.13333333333333333f, 0.09411764705882353f, 1), 52 | new Color(0.3411764705882353f, 0.2196078431372549f, 0.13333333333333333f, 1), 53 | new Color(0.48627450980392156f, 0.43529411764705883f, 0.24313725490196078f, 1), 54 | new Color(0.4980392156862745f, 0.4588235294117647f, 0.3215686274509804f, 1), 55 | new Color(0.5803921568627451f, 0.5411764705882353f, 0.3764705882352941f, 1), 56 | new Color(0.7019607843137254f, 0.6509803921568628f, 0.4745098039215686f, 1), 57 | new Color(0.8196078431372549f, 0.7647058823529411f, 0.5450980392156862f, 1), 58 | new Color(0.803921568627451f, 0.7647058823529411f, 0.6313725490196078f, 1), 59 | new Color(0.788235294117647f, 0.788235294117647f, 0.788235294117647f, 1), 60 | new Color(1, 1, 1, 1), 61 | new Color(0.5019607843137255f, 0.5019607843137255f, 0.5019607843137255f, 1), 62 | new Color(0.09803921568627451f, 0.32941176470588235f, 0.11372549019607843f, 1), 63 | new Color(0.03529411764705882f, 0.19607843137254902f, 0.043137254901960784f, 1), 64 | new Color(0.01568627450980392f, 0.08235294117647059f, 0.023529411764705882f, 1), 65 | new Color(0.13333333333333333f, 0.5098039215686274f, 0.21176470588235294f, 1), 66 | new Color(0.2235294117647059f, 0.6666666666666666f, 0.3058823529411765f, 1), 67 | new Color(0.14901960784313725f, 0.6862745098039216f, 0.3254901960784314f, 1), 68 | new Color(0.3254901960784314f, 0.7490196078431373f, 0.44313725490196076f, 1), 69 | new Color(0.984313725490196f, 0.9450980392156862f, 0.25098039215686274f, 1), 70 | }; 71 | 72 | SpriteRenderer spriteRenderer; 73 | float tDirection; 74 | float t; 75 | Color[] tempPalette; 76 | 77 | void UpdateColours() { 78 | if (spriteRenderer == null) { 79 | spriteRenderer = GetComponent(); 80 | } 81 | // Lerp between default palette and customised 82 | Color[] newPalette; 83 | if (Mathf.Approximately(t, 0.0f)) { 84 | newPalette = defaultPalette; 85 | } else if (Mathf.Approximately(t, 1.0f)) { 86 | newPalette = palette; 87 | } else { 88 | for (int i = 0; i < tempPalette.Length; ++i) { 89 | tempPalette[i] = Color.Lerp(defaultPalette[i], palette[i], t); 90 | } 91 | newPalette = tempPalette; 92 | } 93 | Material mat = spriteRenderer.sharedMaterial; 94 | mat.SetColorArray("paletteData", newPalette); 95 | } 96 | 97 | void Awake() { 98 | tDirection = 1.0f; 99 | tempPalette = new Color[defaultPalette.Length]; 100 | UpdateColours(); 101 | 102 | } 103 | void Update() { 104 | t += Time.deltaTime * tDirection; 105 | if (t < 0.0f) { 106 | t = 0.0f; 107 | tDirection = 1.0f; 108 | } else if (t > 1.0f) { 109 | t = 1.0f; 110 | tDirection = -1.0f; 111 | } 112 | UpdateColours(); 113 | } 114 | } 115 | -------------------------------------------------------------------------------- /Assets/Scripts/SpriteRecolourDynamic.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1dc6da7af6eb94e32b55c70d0e69babc 3 | timeCreated: 1478864747 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Sprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c9b9c9208252448e4a5a5b3229260617 3 | folderAsset: yes 4 | timeCreated: 1478799062 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_palette.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinbad/SpriteRecolourUnity/ab36de035a7719045c733d90950647d6a91f51fb/Assets/Sprites/sinbad_palette.png -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_palette.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bfb7990a0ebf049e8a444a6077b9a03c 3 | timeCreated: 1478859220 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 0 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: 0 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 0 49 | spriteTessellationDetail: -1 50 | textureType: 5 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_palette_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinbad/SpriteRecolourUnity/ab36de035a7719045c733d90950647d6a91f51fb/Assets/Sprites/sinbad_palette_blue.png -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_palette_blue.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5164dd4626bda4f46bc5bb98f687e57f 3 | timeCreated: 1478859490 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 0 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: 0 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 0 49 | spriteTessellationDetail: -1 50 | textureType: 5 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_palette_grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinbad/SpriteRecolourUnity/ab36de035a7719045c733d90950647d6a91f51fb/Assets/Sprites/sinbad_palette_grey.png -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_palette_grey.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 334c9b5ea5d7347759fe96209b0bc3f0 3 | timeCreated: 1478859702 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 0 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: 0 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 0 49 | spriteTessellationDetail: -1 50 | textureType: 5 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_palette_yellow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinbad/SpriteRecolourUnity/ab36de035a7719045c733d90950647d6a91f51fb/Assets/Sprites/sinbad_palette_yellow.png -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_palette_yellow.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0ecc184dc73b44fd0b8929e2b15cceac 3 | timeCreated: 1478859928 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 0 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: 0 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 0 49 | spriteTessellationDetail: -1 50 | textureType: 5 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_reference.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinbad/SpriteRecolourUnity/ab36de035a7719045c733d90950647d6a91f51fb/Assets/Sprites/sinbad_reference.png -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_reference.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c7255fc6cd7549a381043c62c93a193 3 | timeCreated: 1478859359 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: 7 | 21300000: sinbad_reference_0 8 | 21300002: sinbad_reference_1 9 | 21300004: sinbad_reference_2 10 | 21300006: sinbad_reference_3 11 | serializedVersion: 2 12 | mipmaps: 13 | mipMapMode: 0 14 | enableMipMap: 0 15 | linearTexture: 0 16 | correctGamma: 0 17 | fadeOut: 0 18 | borderMipMap: 0 19 | mipMapFadeDistanceStart: 1 20 | mipMapFadeDistanceEnd: 3 21 | bumpmap: 22 | convertToNormalMap: 0 23 | externalNormalMap: 0 24 | heightScale: 0.25 25 | normalMapFilter: 0 26 | isReadable: 0 27 | grayScaleToAlpha: 0 28 | generateCubemap: 0 29 | cubemapConvolution: 0 30 | cubemapConvolutionSteps: 7 31 | cubemapConvolutionExponent: 1.5 32 | seamlessCubemap: 0 33 | textureFormat: -1 34 | maxTextureSize: 2048 35 | textureSettings: 36 | filterMode: 0 37 | aniso: -1 38 | mipBias: -1 39 | wrapMode: 1 40 | nPOTScale: 0 41 | lightmap: 0 42 | rGBM: 0 43 | compressionQuality: 50 44 | allowsAlphaSplitting: 0 45 | spriteMode: 2 46 | spriteExtrude: 1 47 | spriteMeshType: 1 48 | alignment: 0 49 | spritePivot: {x: 0.5, y: 0.5} 50 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 51 | spritePixelsToUnits: 100 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | buildTargetSettings: 56 | - buildTarget: Standalone 57 | maxTextureSize: 2048 58 | textureFormat: -3 59 | compressionQuality: 50 60 | allowsAlphaSplitting: 0 61 | spriteSheet: 62 | serializedVersion: 2 63 | sprites: 64 | - serializedVersion: 2 65 | name: sinbad_reference_0 66 | rect: 67 | serializedVersion: 2 68 | x: 3 69 | y: 1 70 | width: 24 71 | height: 48 72 | alignment: 0 73 | pivot: {x: 0, y: 0} 74 | border: {x: 0, y: 0, z: 0, w: 0} 75 | outline: [] 76 | tessellationDetail: 0 77 | - serializedVersion: 2 78 | name: sinbad_reference_1 79 | rect: 80 | serializedVersion: 2 81 | x: 37 82 | y: 1 83 | width: 36 84 | height: 48 85 | alignment: 0 86 | pivot: {x: 0, y: 0} 87 | border: {x: 0, y: 0, z: 0, w: 0} 88 | outline: [] 89 | tessellationDetail: 0 90 | - serializedVersion: 2 91 | name: sinbad_reference_2 92 | rect: 93 | serializedVersion: 2 94 | x: 79 95 | y: 1 96 | width: 36 97 | height: 48 98 | alignment: 0 99 | pivot: {x: 0, y: 0} 100 | border: {x: 0, y: 0, z: 0, w: 0} 101 | outline: [] 102 | tessellationDetail: 0 103 | - serializedVersion: 2 104 | name: sinbad_reference_3 105 | rect: 106 | serializedVersion: 2 107 | x: 123 108 | y: 2 109 | width: 24 110 | height: 48 111 | alignment: 0 112 | pivot: {x: 0, y: 0} 113 | border: {x: 0, y: 0, z: 0, w: 0} 114 | outline: [] 115 | tessellationDetail: 0 116 | outline: [] 117 | spritePackingTag: 118 | userData: 119 | assetBundleName: 120 | assetBundleVariant: 121 | -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_reference_params.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinbad/SpriteRecolourUnity/ab36de035a7719045c733d90950647d6a91f51fb/Assets/Sprites/sinbad_reference_params.png -------------------------------------------------------------------------------- /Assets/Sprites/sinbad_reference_params.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2e0254b4faaba48298b6c3f2cb703ae4 3 | timeCreated: 1478867342 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: 7 | 21300000: sinbad_reference_params_0 8 | 21300002: sinbad_reference_params_1 9 | 21300004: sinbad_reference_params_2 10 | 21300006: sinbad_reference_params_3 11 | serializedVersion: 2 12 | mipmaps: 13 | mipMapMode: 0 14 | enableMipMap: 0 15 | linearTexture: 0 16 | correctGamma: 0 17 | fadeOut: 0 18 | borderMipMap: 0 19 | mipMapFadeDistanceStart: 1 20 | mipMapFadeDistanceEnd: 3 21 | bumpmap: 22 | convertToNormalMap: 0 23 | externalNormalMap: 0 24 | heightScale: 0.25 25 | normalMapFilter: 0 26 | isReadable: 0 27 | grayScaleToAlpha: 0 28 | generateCubemap: 0 29 | cubemapConvolution: 0 30 | cubemapConvolutionSteps: 7 31 | cubemapConvolutionExponent: 1.5 32 | seamlessCubemap: 0 33 | textureFormat: -1 34 | maxTextureSize: 2048 35 | textureSettings: 36 | filterMode: 0 37 | aniso: 16 38 | mipBias: -1 39 | wrapMode: 0 40 | nPOTScale: 0 41 | lightmap: 0 42 | rGBM: 0 43 | compressionQuality: 50 44 | allowsAlphaSplitting: 0 45 | spriteMode: 2 46 | spriteExtrude: 1 47 | spriteMeshType: 1 48 | alignment: 0 49 | spritePivot: {x: 0.5, y: 0.5} 50 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 51 | spritePixelsToUnits: 100 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 5 55 | buildTargetSettings: 56 | - buildTarget: Standalone 57 | maxTextureSize: 2048 58 | textureFormat: 5 59 | compressionQuality: 50 60 | allowsAlphaSplitting: 0 61 | spriteSheet: 62 | serializedVersion: 2 63 | sprites: 64 | - serializedVersion: 2 65 | name: sinbad_reference_params_0 66 | rect: 67 | serializedVersion: 2 68 | x: 3 69 | y: 1 70 | width: 24 71 | height: 48 72 | alignment: 0 73 | pivot: {x: 0, y: 0} 74 | border: {x: 0, y: 0, z: 0, w: 0} 75 | outline: [] 76 | tessellationDetail: 0 77 | - serializedVersion: 2 78 | name: sinbad_reference_params_1 79 | rect: 80 | serializedVersion: 2 81 | x: 37 82 | y: 1 83 | width: 36 84 | height: 48 85 | alignment: 0 86 | pivot: {x: 0, y: 0} 87 | border: {x: 0, y: 0, z: 0, w: 0} 88 | outline: [] 89 | tessellationDetail: 0 90 | - serializedVersion: 2 91 | name: sinbad_reference_params_2 92 | rect: 93 | serializedVersion: 2 94 | x: 79 95 | y: 1 96 | width: 36 97 | height: 48 98 | alignment: 0 99 | pivot: {x: 0, y: 0} 100 | border: {x: 0, y: 0, z: 0, w: 0} 101 | outline: [] 102 | tessellationDetail: 0 103 | - serializedVersion: 2 104 | name: sinbad_reference_params_3 105 | rect: 106 | serializedVersion: 2 107 | x: 123 108 | y: 2 109 | width: 24 110 | height: 48 111 | alignment: 0 112 | pivot: {x: 0, y: 0} 113 | border: {x: 0, y: 0, z: 0, w: 0} 114 | outline: [] 115 | tessellationDetail: 0 116 | outline: [] 117 | spritePackingTag: 118 | userData: 119 | assetBundleName: 120 | assetBundleVariant: 121 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright © 2016 Steve Streeting 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | The above copyright notice and this permission notice shall be included in 10 | all copies or substantial portions of the Software. 11 | 12 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 13 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 14 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 15 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 16 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 18 | THE SOFTWARE. 19 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | Doppler Factor: 1 9 | Default Speaker Mode: 2 10 | m_SampleRate: 0 11 | m_DSPBufferSize: 0 12 | m_VirtualVoiceCount: 512 13 | m_RealVoiceCount: 32 14 | m_SpatializerPlugin: 15 | m_DisableAudio: 0 16 | m_VirtualizeEffects: 1 17 | -------------------------------------------------------------------------------- /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: 2 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_SolverIterationCount: 6 13 | m_SolverVelocityIterations: 1 14 | m_QueriesHitTriggers: 1 15 | m_EnableAdaptiveForce: 0 16 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 17 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | m_ExternalVersionControlSupport: Visible Meta Files 8 | m_SerializationMode: 2 9 | m_WebSecurityEmulationEnabled: 0 10 | m_WebSecurityEmulationHostUrl: http://www.mydomain.com/mygame.unity3d 11 | m_DefaultBehaviorMode: 0 12 | m_SpritePackerMode: 2 13 | m_SpritePackerPaddingPower: 1 14 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd 15 | m_ProjectGenerationRootNamespace: 16 | -------------------------------------------------------------------------------- /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: 7 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: 10782, guid: 0000000000000000f000000000000000, type: 0} 39 | m_PreloadedShaders: [] 40 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, 41 | type: 0} 42 | m_ShaderSettings_Tier1: 43 | useCascadedShadowMaps: 1 44 | standardShaderQuality: 2 45 | useReflectionProbeBoxProjection: 1 46 | useReflectionProbeBlending: 1 47 | m_ShaderSettings_Tier2: 48 | useCascadedShadowMaps: 1 49 | standardShaderQuality: 2 50 | useReflectionProbeBoxProjection: 1 51 | useReflectionProbeBlending: 1 52 | m_ShaderSettings_Tier3: 53 | useCascadedShadowMaps: 1 54 | standardShaderQuality: 2 55 | useReflectionProbeBoxProjection: 1 56 | useReflectionProbeBlending: 1 57 | m_BuildTargetShaderSettings: [] 58 | m_LightmapStripping: 0 59 | m_FogStripping: 0 60 | m_LightmapKeepPlain: 1 61 | m_LightmapKeepDirCombined: 1 62 | m_LightmapKeepDirSeparate: 1 63 | m_LightmapKeepDynamicPlain: 1 64 | m_LightmapKeepDynamicDirCombined: 1 65 | m_LightmapKeepDynamicDirSeparate: 1 66 | m_FogKeepLinear: 1 67 | m_FogKeepExp: 1 68 | m_FogKeepExp2: 1 69 | -------------------------------------------------------------------------------- /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 | NavMeshAreas: 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 | -------------------------------------------------------------------------------- /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: 2 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_MinPenetrationForPenalty: 0.01 17 | m_BaumgarteScale: 0.2 18 | m_BaumgarteTimeOfImpactScale: 0.75 19 | m_TimeToSleep: 0.5 20 | m_LinearSleepTolerance: 0.01 21 | m_AngularSleepTolerance: 2 22 | m_QueriesHitTriggers: 1 23 | m_QueriesStartInColliders: 1 24 | m_ChangeStopsCallbacks: 0 25 | m_AlwaysShowColliders: 0 26 | m_ShowColliderSleep: 1 27 | m_ShowColliderContacts: 0 28 | m_ContactArrowScale: 0.2 29 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} 30 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} 31 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} 32 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 33 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!129 &1 4 | PlayerSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 8 7 | productGUID: 80c38ea5fd9464d22a84b553aaf14a9a 8 | AndroidProfiler: 0 9 | defaultScreenOrientation: 4 10 | targetDevice: 2 11 | useOnDemandResources: 0 12 | accelerometerFrequency: 60 13 | companyName: TorusKnot 14 | productName: UnityDefaultSetup 15 | defaultCursor: {fileID: 0} 16 | cursorHotspot: {x: 0, y: 0} 17 | m_SplashScreenStyle: 0 18 | m_ShowUnitySplashScreen: 1 19 | m_VirtualRealitySplashScreen: {fileID: 0} 20 | defaultScreenWidth: 1024 21 | defaultScreenHeight: 768 22 | defaultScreenWidthWeb: 960 23 | defaultScreenHeightWeb: 600 24 | m_RenderingPath: 1 25 | m_MobileRenderingPath: 1 26 | m_ActiveColorSpace: 0 27 | m_MTRendering: 1 28 | m_MobileMTRendering: 0 29 | m_StackTraceTypes: 010000000100000001000000010000000100000001000000 30 | iosShowActivityIndicatorOnLoading: -1 31 | androidShowActivityIndicatorOnLoading: -1 32 | iosAppInBackgroundBehavior: 0 33 | displayResolutionDialog: 1 34 | iosAllowHTTPDownload: 1 35 | allowedAutorotateToPortrait: 1 36 | allowedAutorotateToPortraitUpsideDown: 1 37 | allowedAutorotateToLandscapeRight: 1 38 | allowedAutorotateToLandscapeLeft: 1 39 | useOSAutorotation: 1 40 | use32BitDisplayBuffer: 1 41 | disableDepthAndStencilBuffers: 0 42 | defaultIsFullScreen: 1 43 | defaultIsNativeResolution: 1 44 | runInBackground: 0 45 | captureSingleScreen: 0 46 | Override IPod Music: 0 47 | Prepare IOS For Recording: 0 48 | submitAnalytics: 1 49 | usePlayerLog: 1 50 | bakeCollisionMeshes: 0 51 | forceSingleInstance: 0 52 | resizableWindow: 0 53 | useMacAppStoreValidation: 0 54 | gpuSkinning: 0 55 | graphicsJobs: 0 56 | xboxPIXTextureCapture: 0 57 | xboxEnableAvatar: 0 58 | xboxEnableKinect: 0 59 | xboxEnableKinectAutoTracking: 0 60 | xboxEnableFitness: 0 61 | visibleInBackground: 0 62 | allowFullscreenSwitch: 1 63 | macFullscreenMode: 2 64 | d3d9FullscreenMode: 1 65 | d3d11FullscreenMode: 1 66 | xboxSpeechDB: 0 67 | xboxEnableHeadOrientation: 0 68 | xboxEnableGuest: 0 69 | xboxEnablePIXSampling: 0 70 | n3dsDisableStereoscopicView: 0 71 | n3dsEnableSharedListOpt: 1 72 | n3dsEnableVSync: 0 73 | uiUse16BitDepthBuffer: 0 74 | ignoreAlphaClear: 0 75 | xboxOneResolution: 0 76 | xboxOneMonoLoggingLevel: 0 77 | xboxOneLoggingLevel: 1 78 | ps3SplashScreen: {fileID: 0} 79 | videoMemoryForVertexBuffers: 0 80 | psp2PowerMode: 0 81 | psp2AcquireBGM: 1 82 | wiiUTVResolution: 0 83 | wiiUGamePadMSAA: 1 84 | wiiUSupportsNunchuk: 0 85 | wiiUSupportsClassicController: 0 86 | wiiUSupportsBalanceBoard: 0 87 | wiiUSupportsMotionPlus: 0 88 | wiiUSupportsProController: 0 89 | wiiUAllowScreenCapture: 1 90 | wiiUControllerCount: 0 91 | m_SupportedAspectRatios: 92 | 4:3: 1 93 | 5:4: 1 94 | 16:10: 1 95 | 16:9: 1 96 | Others: 1 97 | bundleIdentifier: com.Company.ProductName 98 | bundleVersion: 1.0 99 | preloadedAssets: [] 100 | metroEnableIndependentInputSource: 0 101 | xboxOneDisableKinectGpuReservation: 0 102 | singlePassStereoRendering: 0 103 | protectGraphicsMemory: 0 104 | AndroidBundleVersionCode: 1 105 | AndroidMinSdkVersion: 9 106 | AndroidPreferredInstallLocation: 1 107 | aotOptions: 108 | apiCompatibilityLevel: 2 109 | stripEngineCode: 1 110 | iPhoneStrippingLevel: 0 111 | iPhoneScriptCallOptimization: 0 112 | iPhoneBuildNumber: 0 113 | ForceInternetPermission: 0 114 | ForceSDCardPermission: 0 115 | CreateWallpaper: 0 116 | APKExpansionFiles: 0 117 | preloadShaders: 0 118 | StripUnusedMeshComponents: 0 119 | VertexChannelCompressionMask: 120 | serializedVersion: 2 121 | m_Bits: 238 122 | iPhoneSdkVersion: 988 123 | iPhoneTargetOSVersion: 24 124 | tvOSSdkVersion: 0 125 | tvOSTargetOSVersion: 900 126 | tvOSRequireExtendedGameController: 0 127 | uIPrerenderedIcon: 0 128 | uIRequiresPersistentWiFi: 0 129 | uIRequiresFullScreen: 1 130 | uIStatusBarHidden: 1 131 | uIExitOnSuspend: 0 132 | uIStatusBarStyle: 0 133 | iPhoneSplashScreen: {fileID: 0} 134 | iPhoneHighResSplashScreen: {fileID: 0} 135 | iPhoneTallHighResSplashScreen: {fileID: 0} 136 | iPhone47inSplashScreen: {fileID: 0} 137 | iPhone55inPortraitSplashScreen: {fileID: 0} 138 | iPhone55inLandscapeSplashScreen: {fileID: 0} 139 | iPadPortraitSplashScreen: {fileID: 0} 140 | iPadHighResPortraitSplashScreen: {fileID: 0} 141 | iPadLandscapeSplashScreen: {fileID: 0} 142 | iPadHighResLandscapeSplashScreen: {fileID: 0} 143 | appleTVSplashScreen: {fileID: 0} 144 | tvOSSmallIconLayers: [] 145 | tvOSLargeIconLayers: [] 146 | tvOSTopShelfImageLayers: [] 147 | iOSLaunchScreenType: 0 148 | iOSLaunchScreenPortrait: {fileID: 0} 149 | iOSLaunchScreenLandscape: {fileID: 0} 150 | iOSLaunchScreenBackgroundColor: 151 | serializedVersion: 2 152 | rgba: 0 153 | iOSLaunchScreenFillPct: 100 154 | iOSLaunchScreenSize: 100 155 | iOSLaunchScreenCustomXibPath: 156 | iOSLaunchScreeniPadType: 0 157 | iOSLaunchScreeniPadImage: {fileID: 0} 158 | iOSLaunchScreeniPadBackgroundColor: 159 | serializedVersion: 2 160 | rgba: 0 161 | iOSLaunchScreeniPadFillPct: 100 162 | iOSLaunchScreeniPadSize: 100 163 | iOSLaunchScreeniPadCustomXibPath: 164 | iOSDeviceRequirements: [] 165 | iOSURLSchemes: [] 166 | appleDeveloperTeamID: 167 | AndroidTargetDevice: 0 168 | AndroidSplashScreenScale: 0 169 | androidSplashScreen: {fileID: 0} 170 | AndroidKeystoreName: 171 | AndroidKeyaliasName: 172 | AndroidTVCompatibility: 1 173 | AndroidIsGame: 1 174 | androidEnableBanner: 1 175 | m_AndroidBanners: 176 | - width: 320 177 | height: 180 178 | banner: {fileID: 0} 179 | androidGamepadSupportLevel: 0 180 | resolutionDialogBanner: {fileID: 0} 181 | m_BuildTargetIcons: 182 | - m_BuildTarget: 183 | m_Icons: 184 | - serializedVersion: 2 185 | m_Icon: {fileID: 0} 186 | m_Width: 128 187 | m_Height: 128 188 | m_BuildTargetBatching: [] 189 | m_BuildTargetGraphicsAPIs: [] 190 | webPlayerTemplate: APPLICATION:Default 191 | m_TemplateCustomTags: {} 192 | wiiUTitleID: 0005000011000000 193 | wiiUGroupID: 00010000 194 | wiiUCommonSaveSize: 4096 195 | wiiUAccountSaveSize: 2048 196 | wiiUOlvAccessKey: 0 197 | wiiUTinCode: 0 198 | wiiUJoinGameId: 0 199 | wiiUJoinGameModeMask: 0000000000000000 200 | wiiUCommonBossSize: 0 201 | wiiUAccountBossSize: 0 202 | wiiUAddOnUniqueIDs: [] 203 | wiiUMainThreadStackSize: 3072 204 | wiiULoaderThreadStackSize: 1024 205 | wiiUSystemHeapSize: 128 206 | wiiUTVStartupScreen: {fileID: 0} 207 | wiiUGamePadStartupScreen: {fileID: 0} 208 | wiiUDrcBufferDisabled: 0 209 | wiiUProfilerLibPath: 210 | actionOnDotNetUnhandledException: 1 211 | enableInternalProfiler: 0 212 | logObjCUncaughtExceptions: 1 213 | enableCrashReportAPI: 0 214 | cameraUsageDescription: 215 | locationUsageDescription: 216 | microphoneUsageDescription: 217 | XboxTitleId: 218 | XboxImageXexPath: 219 | XboxSpaPath: 220 | XboxGenerateSpa: 0 221 | XboxDeployKinectResources: 0 222 | XboxSplashScreen: {fileID: 0} 223 | xboxEnableSpeech: 0 224 | xboxAdditionalTitleMemorySize: 0 225 | xboxDeployKinectHeadOrientation: 0 226 | xboxDeployKinectHeadPosition: 0 227 | ps3TitleConfigPath: 228 | ps3DLCConfigPath: 229 | ps3ThumbnailPath: 230 | ps3BackgroundPath: 231 | ps3SoundPath: 232 | ps3NPAgeRating: 12 233 | ps3TrophyCommId: 234 | ps3NpCommunicationPassphrase: 235 | ps3TrophyPackagePath: 236 | ps3BootCheckMaxSaveGameSizeKB: 128 237 | ps3TrophyCommSig: 238 | ps3SaveGameSlots: 1 239 | ps3TrialMode: 0 240 | ps3VideoMemoryForAudio: 0 241 | ps3EnableVerboseMemoryStats: 0 242 | ps3UseSPUForUmbra: 0 243 | ps3EnableMoveSupport: 1 244 | ps3DisableDolbyEncoding: 0 245 | ps4NPAgeRating: 12 246 | ps4NPTitleSecret: 247 | ps4NPTrophyPackPath: 248 | ps4ParentalLevel: 1 249 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000 250 | ps4Category: 0 251 | ps4MasterVersion: 01.00 252 | ps4AppVersion: 01.00 253 | ps4AppType: 0 254 | ps4ParamSfxPath: 255 | ps4VideoOutPixelFormat: 0 256 | ps4VideoOutInitialWidth: 1920 257 | ps4VideoOutReprojectionRate: 120 258 | ps4PronunciationXMLPath: 259 | ps4PronunciationSIGPath: 260 | ps4BackgroundImagePath: 261 | ps4StartupImagePath: 262 | ps4SaveDataImagePath: 263 | ps4SdkOverride: 264 | ps4BGMPath: 265 | ps4ShareFilePath: 266 | ps4ShareOverlayImagePath: 267 | ps4PrivacyGuardImagePath: 268 | ps4NPtitleDatPath: 269 | ps4RemotePlayKeyAssignment: -1 270 | ps4RemotePlayKeyMappingDir: 271 | ps4PlayTogetherPlayerCount: 0 272 | ps4EnterButtonAssignment: 1 273 | ps4ApplicationParam1: 0 274 | ps4ApplicationParam2: 0 275 | ps4ApplicationParam3: 0 276 | ps4ApplicationParam4: 0 277 | ps4DownloadDataSize: 0 278 | ps4GarlicHeapSize: 2048 279 | ps4Passcode: 5PN2qmWqBlQ9wQj99nsQzldVI5ZuGXbE 280 | ps4UseDebugIl2cppLibs: 0 281 | ps4pnSessions: 1 282 | ps4pnPresence: 1 283 | ps4pnFriends: 1 284 | ps4pnGameCustomData: 1 285 | playerPrefsSupport: 0 286 | ps4UseResolutionFallback: 0 287 | restrictedAudioUsageRights: 0 288 | ps4ReprojectionSupport: 0 289 | ps4UseAudio3dBackend: 0 290 | ps4SocialScreenEnabled: 0 291 | ps4ScriptOptimizationLevel: 3 292 | ps4Audio3dVirtualSpeakerCount: 14 293 | ps4attribCpuUsage: 0 294 | ps4PatchPkgPath: 295 | ps4PatchLatestPkgPath: 296 | ps4PatchChangeinfoPath: 297 | ps4PatchDayOne: 0 298 | ps4attribUserManagement: 0 299 | ps4attribMoveSupport: 0 300 | ps4attrib3DSupport: 0 301 | ps4attribShareSupport: 0 302 | ps4attribExclusiveVR: 0 303 | ps4disableAutoHideSplash: 0 304 | ps4IncludedModules: [] 305 | monoEnv: 306 | psp2Splashimage: {fileID: 0} 307 | psp2NPTrophyPackPath: 308 | psp2NPSupportGBMorGJP: 0 309 | psp2NPAgeRating: 12 310 | psp2NPTitleDatPath: 311 | psp2NPCommsID: 312 | psp2NPCommunicationsID: 313 | psp2NPCommsPassphrase: 314 | psp2NPCommsSig: 315 | psp2ParamSfxPath: 316 | psp2ManualPath: 317 | psp2LiveAreaGatePath: 318 | psp2LiveAreaBackroundPath: 319 | psp2LiveAreaPath: 320 | psp2LiveAreaTrialPath: 321 | psp2PatchChangeInfoPath: 322 | psp2PatchOriginalPackage: 323 | psp2PackagePassword: WRK5RhRXdCdG5nG5azdNMK66MuCV6GXi 324 | psp2KeystoneFile: 325 | psp2MemoryExpansionMode: 0 326 | psp2DRMType: 0 327 | psp2StorageType: 0 328 | psp2MediaCapacity: 0 329 | psp2DLCConfigPath: 330 | psp2ThumbnailPath: 331 | psp2BackgroundPath: 332 | psp2SoundPath: 333 | psp2TrophyCommId: 334 | psp2TrophyPackagePath: 335 | psp2PackagedResourcesPath: 336 | psp2SaveDataQuota: 10240 337 | psp2ParentalLevel: 1 338 | psp2ShortTitle: Not Set 339 | psp2ContentID: IV0000-ABCD12345_00-0123456789ABCDEF 340 | psp2Category: 0 341 | psp2MasterVersion: 01.00 342 | psp2AppVersion: 01.00 343 | psp2TVBootMode: 0 344 | psp2EnterButtonAssignment: 2 345 | psp2TVDisableEmu: 0 346 | psp2AllowTwitterDialog: 1 347 | psp2Upgradable: 0 348 | psp2HealthWarning: 0 349 | psp2UseLibLocation: 0 350 | psp2InfoBarOnStartup: 0 351 | psp2InfoBarColor: 0 352 | psp2UseDebugIl2cppLibs: 0 353 | psmSplashimage: {fileID: 0} 354 | spritePackerPolicy: 355 | scriptingDefineSymbols: {} 356 | metroPackageName: UnityDefaultSetup 357 | metroPackageVersion: 358 | metroCertificatePath: 359 | metroCertificatePassword: 360 | metroCertificateSubject: 361 | metroCertificateIssuer: 362 | metroCertificateNotAfter: 0000000000000000 363 | metroApplicationDescription: UnityDefaultSetup 364 | wsaImages: {} 365 | metroTileShortName: 366 | metroCommandLineArgsFile: 367 | metroTileShowName: 0 368 | metroMediumTileShowName: 0 369 | metroLargeTileShowName: 0 370 | metroWideTileShowName: 0 371 | metroDefaultTileSize: 1 372 | metroTileForegroundText: 1 373 | metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} 374 | metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, 375 | a: 1} 376 | metroSplashScreenUseBackgroundColor: 0 377 | platformCapabilities: {} 378 | metroFTAName: 379 | metroFTAFileTypes: [] 380 | metroProtocolName: 381 | metroCompilationOverrides: 1 382 | tizenProductDescription: 383 | tizenProductURL: 384 | tizenSigningProfileName: 385 | tizenGPSPermissions: 0 386 | tizenMicrophonePermissions: 0 387 | tizenMinOSVersion: 0 388 | n3dsUseExtSaveData: 0 389 | n3dsCompressStaticMem: 1 390 | n3dsExtSaveDataNumber: 0x12345 391 | n3dsStackSize: 131072 392 | n3dsTargetPlatform: 2 393 | n3dsRegion: 7 394 | n3dsMediaSize: 0 395 | n3dsLogoStyle: 3 396 | n3dsTitle: GameName 397 | n3dsProductCode: 398 | n3dsApplicationId: 0xFF3FF 399 | stvDeviceAddress: 400 | stvProductDescription: 401 | stvProductAuthor: 402 | stvProductAuthorEmail: 403 | stvProductLink: 404 | stvProductCategory: 0 405 | XboxOneProductId: 406 | XboxOneUpdateKey: 407 | XboxOneSandboxId: 408 | XboxOneContentId: 409 | XboxOneTitleId: 410 | XboxOneSCId: 411 | XboxOneGameOsOverridePath: 412 | XboxOnePackagingOverridePath: 413 | XboxOneAppManifestOverridePath: 414 | XboxOnePackageEncryption: 0 415 | XboxOnePackageUpdateGranularity: 2 416 | XboxOneDescription: 417 | XboxOneIsContentPackage: 0 418 | XboxOneEnableGPUVariability: 0 419 | XboxOneSockets: {} 420 | XboxOneSplashScreen: {fileID: 0} 421 | XboxOneAllowedProductIds: [] 422 | XboxOnePersistentLocalStorageSize: 0 423 | intPropertyNames: 424 | - Standalone::ScriptingBackend 425 | - WebPlayer::ScriptingBackend 426 | Standalone::ScriptingBackend: 0 427 | WebPlayer::ScriptingBackend: 0 428 | boolPropertyNames: 429 | - Android::VR::enable 430 | - Metro::VR::enable 431 | - N3DS::VR::enable 432 | - PS3::VR::enable 433 | - PS4::VR::enable 434 | - PSM::VR::enable 435 | - PSP2::VR::enable 436 | - SamsungTV::VR::enable 437 | - Standalone::VR::enable 438 | - Tizen::VR::enable 439 | - WebGL::VR::enable 440 | - WebPlayer::VR::enable 441 | - WiiU::VR::enable 442 | - Xbox360::VR::enable 443 | - XboxOne::VR::enable 444 | - XboxOne::enus 445 | - iOS::VR::enable 446 | - tvOS::VR::enable 447 | Android::VR::enable: 0 448 | Metro::VR::enable: 0 449 | N3DS::VR::enable: 0 450 | PS3::VR::enable: 0 451 | PS4::VR::enable: 0 452 | PSM::VR::enable: 0 453 | PSP2::VR::enable: 0 454 | SamsungTV::VR::enable: 0 455 | Standalone::VR::enable: 0 456 | Tizen::VR::enable: 0 457 | WebGL::VR::enable: 0 458 | WebPlayer::VR::enable: 0 459 | WiiU::VR::enable: 0 460 | Xbox360::VR::enable: 0 461 | XboxOne::VR::enable: 0 462 | XboxOne::enus: 1 463 | iOS::VR::enable: 0 464 | tvOS::VR::enable: 0 465 | stringPropertyNames: 466 | - Analytics_ServiceEnabled::Analytics_ServiceEnabled 467 | - Build_ServiceEnabled::Build_ServiceEnabled 468 | - Collab_ServiceEnabled::Collab_ServiceEnabled 469 | - ErrorHub_ServiceEnabled::ErrorHub_ServiceEnabled 470 | - Game_Performance_ServiceEnabled::Game_Performance_ServiceEnabled 471 | - Hub_ServiceEnabled::Hub_ServiceEnabled 472 | - Purchasing_ServiceEnabled::Purchasing_ServiceEnabled 473 | - UNet_ServiceEnabled::UNet_ServiceEnabled 474 | - Unity_Ads_ServiceEnabled::Unity_Ads_ServiceEnabled 475 | Analytics_ServiceEnabled::Analytics_ServiceEnabled: False 476 | Build_ServiceEnabled::Build_ServiceEnabled: False 477 | Collab_ServiceEnabled::Collab_ServiceEnabled: False 478 | ErrorHub_ServiceEnabled::ErrorHub_ServiceEnabled: False 479 | Game_Performance_ServiceEnabled::Game_Performance_ServiceEnabled: False 480 | Hub_ServiceEnabled::Hub_ServiceEnabled: False 481 | Purchasing_ServiceEnabled::Purchasing_ServiceEnabled: False 482 | UNet_ServiceEnabled::UNet_ServiceEnabled: False 483 | Unity_Ads_ServiceEnabled::Unity_Ads_ServiceEnabled: False 484 | vectorPropertyNames: 485 | - Android::VR::enabledDevices 486 | - Metro::VR::enabledDevices 487 | - N3DS::VR::enabledDevices 488 | - PS3::VR::enabledDevices 489 | - PS4::VR::enabledDevices 490 | - PSM::VR::enabledDevices 491 | - PSP2::VR::enabledDevices 492 | - SamsungTV::VR::enabledDevices 493 | - Standalone::VR::enabledDevices 494 | - Tizen::VR::enabledDevices 495 | - WebGL::VR::enabledDevices 496 | - WebPlayer::VR::enabledDevices 497 | - WiiU::VR::enabledDevices 498 | - Xbox360::VR::enabledDevices 499 | - XboxOne::VR::enabledDevices 500 | - iOS::VR::enabledDevices 501 | - tvOS::VR::enabledDevices 502 | Android::VR::enabledDevices: 503 | - Oculus 504 | Metro::VR::enabledDevices: [] 505 | N3DS::VR::enabledDevices: [] 506 | PS3::VR::enabledDevices: [] 507 | PS4::VR::enabledDevices: 508 | - PlayStationVR 509 | PSM::VR::enabledDevices: [] 510 | PSP2::VR::enabledDevices: [] 511 | SamsungTV::VR::enabledDevices: [] 512 | Standalone::VR::enabledDevices: 513 | - Oculus 514 | Tizen::VR::enabledDevices: [] 515 | WebGL::VR::enabledDevices: [] 516 | WebPlayer::VR::enabledDevices: [] 517 | WiiU::VR::enabledDevices: [] 518 | Xbox360::VR::enabledDevices: [] 519 | XboxOne::VR::enabledDevices: [] 520 | iOS::VR::enabledDevices: [] 521 | tvOS::VR::enabledDevices: [] 522 | cloudProjectId: 523 | projectName: 524 | organizationId: 525 | cloudEnabled: 0 526 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 5.4.2f1 2 | m_StandardAssetsVersion: 0 3 | -------------------------------------------------------------------------------- /ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!47 &1 4 | QualitySettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 5 7 | m_CurrentQuality: 5 8 | m_QualitySettings: 9 | - serializedVersion: 2 10 | name: Fastest 11 | pixelLightCount: 0 12 | shadows: 0 13 | shadowResolution: 0 14 | shadowProjection: 1 15 | shadowCascades: 1 16 | shadowDistance: 15 17 | shadowNearPlaneOffset: 2 18 | shadowCascade2Split: 0.33333334 19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 20 | blendWeights: 1 21 | textureQuality: 1 22 | anisotropicTextures: 0 23 | antiAliasing: 0 24 | softParticles: 0 25 | softVegetation: 0 26 | realtimeReflectionProbes: 0 27 | billboardsFaceCameraPosition: 0 28 | vSyncCount: 0 29 | lodBias: 0.3 30 | maximumLODLevel: 0 31 | particleRaycastBudget: 4 32 | asyncUploadTimeSlice: 2 33 | asyncUploadBufferSize: 4 34 | excludedTargetPlatforms: [] 35 | - serializedVersion: 2 36 | name: Fast 37 | pixelLightCount: 0 38 | shadows: 0 39 | shadowResolution: 0 40 | shadowProjection: 1 41 | shadowCascades: 1 42 | shadowDistance: 20 43 | shadowNearPlaneOffset: 2 44 | shadowCascade2Split: 0.33333334 45 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 46 | blendWeights: 2 47 | textureQuality: 0 48 | anisotropicTextures: 0 49 | antiAliasing: 0 50 | softParticles: 0 51 | softVegetation: 0 52 | realtimeReflectionProbes: 0 53 | billboardsFaceCameraPosition: 0 54 | vSyncCount: 0 55 | lodBias: 0.4 56 | maximumLODLevel: 0 57 | particleRaycastBudget: 16 58 | asyncUploadTimeSlice: 2 59 | asyncUploadBufferSize: 4 60 | excludedTargetPlatforms: [] 61 | - serializedVersion: 2 62 | name: Simple 63 | pixelLightCount: 1 64 | shadows: 1 65 | shadowResolution: 0 66 | shadowProjection: 1 67 | shadowCascades: 1 68 | shadowDistance: 20 69 | shadowNearPlaneOffset: 2 70 | shadowCascade2Split: 0.33333334 71 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 72 | blendWeights: 2 73 | textureQuality: 0 74 | anisotropicTextures: 1 75 | antiAliasing: 0 76 | softParticles: 0 77 | softVegetation: 0 78 | realtimeReflectionProbes: 0 79 | billboardsFaceCameraPosition: 0 80 | vSyncCount: 1 81 | lodBias: 0.7 82 | maximumLODLevel: 0 83 | particleRaycastBudget: 64 84 | asyncUploadTimeSlice: 2 85 | asyncUploadBufferSize: 4 86 | excludedTargetPlatforms: [] 87 | - serializedVersion: 2 88 | name: Good 89 | pixelLightCount: 2 90 | shadows: 2 91 | shadowResolution: 1 92 | shadowProjection: 1 93 | shadowCascades: 2 94 | shadowDistance: 40 95 | shadowNearPlaneOffset: 2 96 | shadowCascade2Split: 0.33333334 97 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 98 | blendWeights: 2 99 | textureQuality: 0 100 | anisotropicTextures: 1 101 | antiAliasing: 0 102 | softParticles: 0 103 | softVegetation: 1 104 | realtimeReflectionProbes: 1 105 | billboardsFaceCameraPosition: 1 106 | vSyncCount: 1 107 | lodBias: 1 108 | maximumLODLevel: 0 109 | particleRaycastBudget: 256 110 | asyncUploadTimeSlice: 2 111 | asyncUploadBufferSize: 4 112 | excludedTargetPlatforms: [] 113 | - serializedVersion: 2 114 | name: Beautiful 115 | pixelLightCount: 3 116 | shadows: 2 117 | shadowResolution: 2 118 | shadowProjection: 1 119 | shadowCascades: 2 120 | shadowDistance: 70 121 | shadowNearPlaneOffset: 2 122 | shadowCascade2Split: 0.33333334 123 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 124 | blendWeights: 4 125 | textureQuality: 0 126 | anisotropicTextures: 2 127 | antiAliasing: 2 128 | softParticles: 1 129 | softVegetation: 1 130 | realtimeReflectionProbes: 1 131 | billboardsFaceCameraPosition: 1 132 | vSyncCount: 1 133 | lodBias: 1.5 134 | maximumLODLevel: 0 135 | particleRaycastBudget: 1024 136 | asyncUploadTimeSlice: 2 137 | asyncUploadBufferSize: 4 138 | excludedTargetPlatforms: [] 139 | - serializedVersion: 2 140 | name: Fantastic 141 | pixelLightCount: 4 142 | shadows: 2 143 | shadowResolution: 2 144 | shadowProjection: 1 145 | shadowCascades: 4 146 | shadowDistance: 150 147 | shadowNearPlaneOffset: 2 148 | shadowCascade2Split: 0.33333334 149 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 150 | blendWeights: 4 151 | textureQuality: 0 152 | anisotropicTextures: 2 153 | antiAliasing: 2 154 | softParticles: 1 155 | softVegetation: 1 156 | realtimeReflectionProbes: 1 157 | billboardsFaceCameraPosition: 1 158 | vSyncCount: 1 159 | lodBias: 2 160 | maximumLODLevel: 0 161 | particleRaycastBudget: 4096 162 | asyncUploadTimeSlice: 2 163 | asyncUploadBufferSize: 4 164 | excludedTargetPlatforms: [] 165 | m_PerPlatformDefaultQuality: {} 166 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | -------------------------------------------------------------------------------- /ProjectSettings/UnityAdsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!292 &1 4 | UnityAdsSettings: 5 | m_ObjectHideFlags: 0 6 | m_Enabled: 0 7 | m_InitializeOnStartup: 1 8 | m_TestMode: 0 9 | m_EnabledPlatforms: 4294967295 10 | m_IosGameId: 11 | m_AndroidGameId: 12 | -------------------------------------------------------------------------------- /ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | m_Enabled: 0 7 | m_TestMode: 0 8 | m_TestEventUrl: 9 | m_TestConfigUrl: 10 | CrashReportingSettings: 11 | m_EventUrl: https://perf-events.cloud.unity3d.com/api/events/crashes 12 | m_Enabled: 0 13 | UnityPurchasingSettings: 14 | m_Enabled: 0 15 | m_TestMode: 0 16 | UnityAnalyticsSettings: 17 | m_Enabled: 0 18 | m_InitializeOnStartup: 1 19 | m_TestMode: 0 20 | m_TestEventUrl: 21 | m_TestConfigUrl: 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # SpriteRecolour Unity demo project 2 | 3 | This is a demonstration Unity project for [SpriteRecolour](https://github.com/sinbad/spriterecolour) 4 | command line tool. 5 | 6 | ![Example](SpriteRecolourAnimated.gif) 7 | 8 | From any sprite, a 'reference' sprite is generated which indexes either a 9 | palette texture, or an array of shader parameters, either of which can then be 10 | swapped to recolour the sprites without any additional copies of the sprite 11 | texture. 12 | 13 | This demo has both examples of using 1D palette textures and shader parameters. 14 | The reference sprite is different in each case because for the palette 15 | texture the UV ranges from 0-1 regardless of palette size (with the texture 16 | shrinking), while with shader parameters the indexing is more direct. You 17 | can make either work with one reference sprite with some additional calculations 18 | in the shader, but usually you would pick one approach or the other to make it 19 | simpler, hence why I've shown them as separate examples. 20 | 21 | The shader parameter version dynamically lerps between two palettes; you could 22 | do that with the palette texture too by updating the texture in code (it's small) 23 | but the example fits parameters better. 24 | 25 | Hope it's useful! 26 | 27 | # Attribution 28 | 29 | Thanks to Stephen Challener (Redshrike) and Zi Ye, for the [Sinbad sprite](http://opengameart.org/content/four-characters-my-lpc-entries), figured it was appropriate since it's the 30 | mascot for an engine I previously created, [Ogre3D](http://ogre3d.org) 31 | 32 | # License (MIT) 33 | 34 | Copyright © 2016 Steve Streeting 35 | 36 | Permission is hereby granted, free of charge, to any person obtaining a copy 37 | of this software and associated documentation files (the "Software"), to deal 38 | in the Software without restriction, including without limitation the rights 39 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 40 | copies of the Software, and to permit persons to whom the Software is 41 | furnished to do so, subject to the following conditions: 42 | The above copyright notice and this permission notice shall be included in 43 | all copies or substantial portions of the Software. 44 | 45 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 46 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 47 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 48 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 49 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 50 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 51 | THE SOFTWARE. 52 | -------------------------------------------------------------------------------- /SpriteRecolourAnimated.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinbad/SpriteRecolourUnity/ab36de035a7719045c733d90950647d6a91f51fb/SpriteRecolourAnimated.gif --------------------------------------------------------------------------------