├── LICENSE ├── README.md ├── README.md.meta ├── retrosprites.meta └── retrosprites ├── editor.meta ├── editor ├── CubemapList.cs ├── CubemapList.cs.meta ├── RetrospriteInspector.cs ├── RetrospriteInspector.cs.meta ├── Texture List.asset ├── Texture List.asset.meta ├── TextureArrayCreator.cs ├── TextureArrayCreator.cs.meta ├── TextureList.cs └── TextureList.cs.meta ├── example_assets.meta ├── example_assets ├── Materials.meta ├── Materials │ ├── Example_cutout.mat │ ├── Example_cutout.mat.meta │ ├── Example_particle.mat │ └── Example_particle.mat.meta ├── Particle_example.prefab ├── Particle_example.prefab.meta ├── Textures.meta ├── Textures │ ├── COPYING.adoc │ ├── COPYING.adoc.meta │ ├── freedoom_example.asset │ ├── freedoom_example.asset.meta │ ├── freedoom_example_texarray.asset │ ├── freedoom_example_texarray.asset.meta │ ├── player0_0.png │ ├── player0_0.png.meta │ ├── player0_1.png │ ├── player0_1.png.meta │ ├── player0_2.png │ ├── player0_2.png.meta │ ├── player0_3.png │ ├── player0_3.png.meta │ ├── player0_4.png │ ├── player0_4.png.meta │ ├── player0_5.png │ ├── player0_5.png.meta │ ├── player0_6.png │ ├── player0_6.png.meta │ ├── player0_7.png │ ├── player0_7.png.meta │ ├── player1_0.png │ ├── player1_0.png.meta │ ├── player1_1.png │ ├── player1_1.png.meta │ ├── player1_2.png │ ├── player1_2.png.meta │ ├── player1_3.png │ ├── player1_3.png.meta │ ├── player1_4.png │ ├── player1_4.png.meta │ ├── player1_5.png │ ├── player1_5.png.meta │ ├── player1_6.png │ ├── player1_6.png.meta │ ├── player1_7.png │ ├── player1_7.png.meta │ ├── player2_0.png │ ├── player2_0.png.meta │ ├── player2_1.png │ ├── player2_1.png.meta │ ├── player2_2.png │ ├── player2_2.png.meta │ ├── player2_3.png │ ├── player2_3.png.meta │ ├── player2_4.png │ ├── player2_4.png.meta │ ├── player2_5.png │ ├── player2_5.png.meta │ ├── player2_6.png │ ├── player2_6.png.meta │ ├── player2_7.png │ ├── player2_7.png.meta │ ├── player3_0.png │ ├── player3_0.png.meta │ ├── player3_1.png │ ├── player3_1.png.meta │ ├── player3_2.png │ ├── player3_2.png.meta │ ├── player3_3.png │ ├── player3_3.png.meta │ ├── player3_4.png │ ├── player3_4.png.meta │ ├── player3_5.png │ ├── player3_5.png.meta │ ├── player3_6.png │ ├── player3_6.png.meta │ ├── player3_7.png │ └── player3_7.png.meta ├── sprite_example.prefab └── sprite_example.prefab.meta ├── meshes.meta ├── meshes ├── sprite.fbx └── sprite.fbx.meta ├── particleSystemSettings.png ├── particleSystemSettings.png.meta ├── shaders.meta └── shaders ├── cginc.meta ├── cginc ├── particle_frag.cginc ├── particle_frag.cginc.meta ├── particle_frag_cutout.cginc ├── particle_frag_cutout.cginc.meta ├── particle_structs.cginc ├── particle_structs.cginc.meta ├── particle_vert.cginc ├── particle_vert.cginc.meta ├── sprite_frag.cginc ├── sprite_frag.cginc.meta ├── sprite_frag_cutout.cginc ├── sprite_frag_cutout.cginc.meta ├── sprite_functions.cginc ├── sprite_functions.cginc.meta ├── sprite_lighting.cginc ├── sprite_lighting.cginc.meta ├── sprite_opaque_vertfrag.cginc ├── sprite_opaque_vertfrag.cginc.meta ├── sprite_shadowcaster.cginc ├── sprite_shadowcaster.cginc.meta ├── sprite_shadowcaster_upright.cginc ├── sprite_shadowcaster_upright.cginc.meta ├── sprite_structs.cginc ├── sprite_structs.cginc.meta ├── sprite_vert.cginc ├── sprite_vert.cginc.meta ├── sprite_vert_upright.cginc └── sprite_vert_upright.cginc.meta ├── sprite_cutout.shader ├── sprite_cutout.shader.meta ├── sprite_cutout_particle.shader ├── sprite_cutout_particle.shader.meta ├── sprite_cutout_shadowcaster.shader ├── sprite_cutout_shadowcaster.shader.meta ├── sprite_cutout_shadowcaster_upright.shader ├── sprite_cutout_shadowcaster_upright.shader.meta ├── sprite_transparent.shader ├── sprite_transparent.shader.meta ├── sprite_transparent_particle.shader └── sprite_transparent_particle.shader.meta /LICENSE: -------------------------------------------------------------------------------- 1 | All files in this repo, with the exception of those found in retrosprites\example_assets\Textures are under the following license. 2 | Files in the retrosprites\example_assets\Textures are under their own license (COPYING.adoc) found in the same folder 3 | 4 | BSD 3-Clause License 5 | 6 | Copyright (c) 2022, Error-mdl 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without 10 | modification, are permitted provided that the following conditions are met: 11 | 12 | 1. Redistributions of source code must retain the above copyright notice, this 13 | list of conditions and the following disclaimer. 14 | 15 | 2. Redistributions in binary form must reproduce the above copyright notice, 16 | this list of conditions and the following disclaimer in the documentation 17 | and/or other materials provided with the distribution. 18 | 19 | 3. Neither the name of the copyright holder nor the names of its 20 | contributors may be used to endorse or promote products derived from 21 | this software without specific prior written permission. 22 | 23 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 24 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 25 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 26 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 27 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 28 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 29 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 30 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 31 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 32 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Retrosprites 2 | 3 | This shader imitates the Psuedo-3d directional sprites used in many early to mid 90's first person games like Doom, Daggerfall, Marathon, Hexen, etc. Rather than use 3d models for enemies, these games used 2d billboards which would change their image based on the relative postions of the viewer and the enemy. This shader was built for VRChat, and as such was made for the built-in render pipeline with single-pass stereo VR support in mind and some game specific optimizations like changing billboarding behavior in mirrors. 4 | 5 | # Usage 6 | 7 | ## Creating Sprite Sheets 8 | 9 | If your sprite is animated you will first need to assemble sprite sheets from individual sprites. Sprites for each direction go in separate sheets. The shader reads frames from the sheet going left to right through each row and reads rows top to bottom, just like text. Unlike the previous version of this shader, you may leave empty spaces at the end of the sheet. Every sheet must have exactly the same dimensions and number of sprites! 10 | 11 | ## Creating Texture Arrays 12 | This shader does not use normal textures. It instead uses an object called a Texture2DArray, which is essentially just a bunch of textures with identical dimensions and properties bundled together in a single object. Using a Texture2DArray massively simplifies and increases the efficiency of this shader, but requires the user to go through a couple of extra steps to create an array from their source textures. Unity versions below 2021 require external scripts to generate these. A good tool to use is [Pschraut's Texture2DArray Pipeline](https://github.com/pschraut/UnityTexture2DArrayImportPipeline) or you can use the simple script included with this project. In order to create an array, all textures must have identical dimensions and import settings. Textures in the array can either be individual sprites or sprite sheets for each viewing angle. For individual sprites, sprites in the array need to be arranged first in groups of viewing angles for an individual animation frame, and then by order of their animation frame. Viewing angles should be sorted starting from the front and going clockwise or counter clockwise. 13 | 14 | If you are using the included script, right click in your project view and click Create>Texture Lists>2D Texture list. Select the texture list object, and lock the inspector (lock icon in the upper right corner). Select all the sprites and drag them on to the text "Tex Array" in the inspector. All textures should be then assigned to the list object. Now go to tools/Create Texture Array. Drop the texture list you just made into the corresponding box and click "Create Array". Assuming all your sprites have the same dimensions and same properties, you'll be prompted to save the texture array. 15 | 16 | ## Applying the shader 17 | You should apply a material using the shader to a Z-facing quad, either 18 | sprite.fbx included with this shader or unity's quad primitive (which faces 19 | -z so the texture will be mirrored). The parameters for the shader are mostly 20 | self-explanatory. 21 | 22 | In order to get the shader to work properly with particle systems, you must 23 | change several settings in the render tab. See the particle system prefab for an example. 24 | Render Mode should be billboard (default). Render alignment should be world. Custom vertex streams should be 25 | enabled with these streams, in order: Position, Color, UV, Center, and Velocity. 26 | Light Probes should be set to blend probes if lighting is enabled. 27 | 28 | 29 | # Credits 30 | 31 | Example sprites from the [Freedoom](https://github.com/freedoom/freedoom) project, and are under the license (COPYING.adoc) found in the example assets texture folder. -------------------------------------------------------------------------------- /README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9028bea75e0a866489e8aef61026949f 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /retrosprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 40017c7835ac37a4387d3d070f5ff661 3 | folderAsset: yes 4 | timeCreated: 1533931838 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /retrosprites/editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: edcd483c86b76bd4da39536dbd09c792 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/editor/CubemapList.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | [CreateAssetMenu(fileName = "Cubemap List", menuName = "Texture Lists/Cubemap List", order = 1)] 6 | public class CubemapList : ScriptableObject { 7 | public Cubemap[] TexArray; 8 | } 9 | -------------------------------------------------------------------------------- /retrosprites/editor/CubemapList.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8fba5942e585b5a4ea55f05295d5167f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /retrosprites/editor/RetrospriteInspector.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | //using System; 4 | //using System.Reflection; 5 | using UnityEngine; 6 | using UnityEditor; 7 | 8 | public class RetrospriteInspector : ShaderGUI 9 | { 10 | Material target; 11 | MaterialEditor editor; 12 | MaterialProperty[] properties; 13 | string[] textureTypes = new string[] { "Array of individual sprites", "Array of sprite sheets"}; 14 | int[] textureTypeVal = new int[] { 0, 1 }; 15 | public override void OnGUI(MaterialEditor editor, MaterialProperty[] properties) 16 | { 17 | this.target = editor.target as Material; 18 | this.editor = editor; 19 | this.properties = properties; 20 | DrawGUI(); 21 | } 22 | 23 | private void DrawGUI() 24 | { 25 | MaterialProperty mainTex = FindProperty("_MainTex", properties); 26 | MaterialProperty color = FindProperty("_Color", properties); 27 | MaterialProperty light = FindProperty("_light", properties); 28 | MaterialProperty alphaClip = FindProperty("_alphaClip", properties, false); 29 | MaterialProperty dir = FindProperty("_Dir", properties); 30 | MaterialProperty invRot = FindProperty("_InvRot", properties); 31 | MaterialProperty frame = FindProperty("_frame", properties); 32 | MaterialProperty params1 = FindProperty("_Params", properties, false); 33 | 34 | GUIContent mainTexLabel = new GUIContent(mainTex.displayName, "Collection of sprite textures assembled into a Texture2DArray asset"); 35 | GUIContent colorLabel = new GUIContent(color.displayName, "RGBA color to multiply the sprite's color by"); 36 | GUIContent lightLabel = new GUIContent(light.displayName, "Apply lighting from the world or be unlit"); 37 | GUIContent alphaClipLabel = new GUIContent(alphaClip != null ? alphaClip.displayName : "", "Alpha threshold below which pixels are not drawn"); 38 | GUIContent dirLabel = new GUIContent(dir.displayName, "Number of viewing angles with distinct sprites"); 39 | GUIContent InvLabel = new GUIContent(invRot.displayName, "Flip sprite rotation"); 40 | GUIContent frameLabel = new GUIContent(frame.displayName, "Frame of the animation displayed when the framerate is 0. Use this to manually animate the sprite"); 41 | GUIContent dimensionsLabel = new GUIContent("Sprite Sheet Dimensions", "Number of columns and rows in the sprite sheet"); 42 | GUIContent totalLabel = new GUIContent("Number of animation frames", "Total number of sprites per direction, or columns multiplied by rows minus any empty frames for sprite sheets"); 43 | GUIContent frameRateLabel = new GUIContent("Framerate", "Frames per second to flip through the sprites. Set to 0 and use the manual frame number to manually animate the sprite"); 44 | 45 | bool sheetKey = target.IsKeywordEnabled("SPRITE_SHEET"); 46 | EditorGUI.BeginChangeCheck(); 47 | GUILayout.Label(""); 48 | int textureType = EditorGUILayout.IntPopup("Texture Array Format", sheetKey ? 1 : 0, textureTypes, textureTypeVal); 49 | if (EditorGUI.EndChangeCheck()) 50 | { 51 | switch(textureType) 52 | { 53 | case 0: 54 | target.DisableKeyword("SPRITE_SHEET"); 55 | break; 56 | case 1: 57 | target.EnableKeyword("SPRITE_SHEET"); 58 | break; 59 | default: 60 | target.DisableKeyword("SPRITE_SHEET"); 61 | break; 62 | } 63 | } 64 | EditorGUILayout.Space(); 65 | editor.TexturePropertySingleLine(mainTexLabel, mainTex, color); 66 | EditorGUILayout.Space(); 67 | editor.ShaderProperty(light, lightLabel); 68 | if (alphaClip != null) 69 | { 70 | editor.ShaderProperty(alphaClip, alphaClipLabel); 71 | } 72 | editor.ShaderProperty(dir, dirLabel); 73 | editor.ShaderProperty(invRot, InvLabel); 74 | editor.ShaderProperty(frame, frameLabel); 75 | 76 | 77 | EditorGUI.BeginChangeCheck(); 78 | GUILayout.Label(""); 79 | float framerate = EditorGUI.FloatField(GUILayoutUtility.GetLastRect(), frameRateLabel, params1.vectorValue.w); 80 | Vector4 dim = new Vector4(); 81 | float total = 0; 82 | GUILayout.Label(""); 83 | total = EditorGUI.FloatField(GUILayoutUtility.GetLastRect(), totalLabel, params1.vectorValue.z); 84 | if (sheetKey && params1 != null) 85 | { 86 | GUILayout.Label(""); 87 | dim = EditorGUI.Vector2Field(GUILayoutUtility.GetLastRect(), dimensionsLabel, params1.vectorValue); 88 | } 89 | if (EditorGUI.EndChangeCheck()) 90 | { 91 | if (sheetKey && params1 != null) 92 | { 93 | params1.vectorValue = new Vector4(dim.x, dim.y, total, framerate); 94 | } 95 | else 96 | { 97 | params1.vectorValue = new Vector4(params1.vectorValue.x, params1.vectorValue.y, total, framerate); 98 | } 99 | } 100 | EditorGUILayout.Space(); 101 | EditorGUILayout.Space(); 102 | editor.RenderQueueField(); 103 | 104 | } 105 | } 106 | -------------------------------------------------------------------------------- /retrosprites/editor/RetrospriteInspector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d5af05637a54aaa439bbd95e74fe5bec 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /retrosprites/editor/Texture List.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 4c6f67ccbd4a0f44095314ad2d23f9dc, type: 3} 13 | m_Name: Texture List 14 | m_EditorClassIdentifier: 15 | TexArray: 16 | - {fileID: 2800000, guid: c71e4c95b7f6b7540abe10407e99a251, type: 3} 17 | -------------------------------------------------------------------------------- /retrosprites/editor/Texture List.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b13a15d2aad917d43a157c080107d705 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/editor/TextureArrayCreator.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | 6 | public class TextureArrayCreator : EditorWindow { 7 | 8 | public TextureList TexList; 9 | TextureList oldTexList; 10 | public CubemapList CubeList; 11 | CubemapList oldCubeList; 12 | public string[] TexType = new string[] { "Texture 2D", "Cubemap"}; 13 | public int type = 0; 14 | 15 | public string[] filters = new string[] {"Point (No Filtering)", "Bilinear", "Trilinear"}; 16 | public FilterMode filterMode = FilterMode.Bilinear; 17 | 18 | public bool copyMips = true; 19 | public float mipMapBias = 0; 20 | 21 | public string[] wraps = new string[] { "Repeat", "Clamp", "Mirror", "Mirror Once", "Per Axis" }; 22 | public int wrapMode = 0; 23 | public string[] wrapsAxis = new string[] { "Repeat", "Clamp", "Mirror", "Mirror Once" }; 24 | public TextureWrapMode wrapModeU = TextureWrapMode.Repeat; 25 | public TextureWrapMode wrapModeV = TextureWrapMode.Repeat; 26 | 27 | public int anisoLevel = 1; 28 | 29 | public struct TextureSettings 30 | { 31 | public FilterMode filterMode; 32 | public bool copyMips; 33 | public float mipMapBias; 34 | public TextureWrapMode wrapModeU; 35 | public TextureWrapMode wrapModeV; 36 | public int anisoLevel; 37 | } 38 | 39 | 40 | public bool showProperties = false; 41 | 42 | [MenuItem("Tools/Create Texture Array")] 43 | public static void ShowWindow() 44 | { 45 | GetWindow(true, "Create Texture Array", true); 46 | } 47 | 48 | void OnGUI() 49 | { 50 | GUILayout.Label("All images must have the exact same dimensions, format, and number of mip levels!", EditorStyles.boldLabel); 51 | //Cubemap creator is non-functional 52 | //type = EditorGUILayout.Popup(type, TexType); 53 | //if (type == 0) 54 | //{ 55 | GUI2DArray(); 56 | //} 57 | //else 58 | //{ 59 | // GUICubeArray(); 60 | //} 61 | } 62 | 63 | 64 | 65 | private void GUI2DArray() 66 | { 67 | oldTexList = TexList; 68 | GUILayout.Label("Texture List"); 69 | TexList = EditorGUILayout.ObjectField("", TexList, typeof(TextureList), false) as TextureList; 70 | 71 | /* Copy the settings over from the first texture when a new texture list is put in the object field **/ 72 | if (oldTexList != TexList && TexList != null && TexList.TexArray.Length > 0 && TexList.TexArray[0] != null) 73 | { 74 | filterMode = TexList.TexArray[0].filterMode; 75 | anisoLevel = TexList.TexArray[0].anisoLevel; 76 | wrapModeU = TexList.TexArray[0].wrapModeU; 77 | wrapModeV = TexList.TexArray[0].wrapModeV; 78 | if (wrapModeU == wrapModeV) 79 | { 80 | wrapMode = (int)wrapModeU; 81 | } 82 | else 83 | { 84 | wrapMode = 4; 85 | } 86 | } 87 | 88 | /* Do we want mip maps? if so, copy them from the source textures **/ 89 | copyMips = EditorGUILayout.Toggle("Copy Mip Maps", copyMips); 90 | if (copyMips) 91 | { 92 | mipMapBias = EditorGUILayout.FloatField(" Mip Map Bias", mipMapBias); 93 | } 94 | 95 | filterMode = (FilterMode)EditorGUILayout.Popup("Filter Mode", (int)filterMode, filters); 96 | 97 | /* Set the wrap mode to the same value on both axes unless wrapMode is 4 (Per Axis), then show separate options**/ 98 | wrapMode = EditorGUILayout.Popup("Wrap Mode", wrapMode, wraps); 99 | if (wrapMode == 4) 100 | { 101 | wrapModeU = (TextureWrapMode)EditorGUILayout.Popup(" U Axis", (int)wrapModeU, wrapsAxis); 102 | wrapModeV = (TextureWrapMode)EditorGUILayout.Popup(" V Axis", (int)wrapModeV, wrapsAxis); 103 | } 104 | else 105 | { 106 | wrapModeU = (TextureWrapMode)wrapMode; 107 | wrapModeV = (TextureWrapMode)wrapMode; 108 | } 109 | 110 | anisoLevel = EditorGUILayout.IntSlider("Aniso Level", anisoLevel, 0, 16); 111 | 112 | /* Show the user the settings that are going to be copied over from the source textures directly **/ 113 | showProperties = EditorGUILayout.Foldout(showProperties, "Inherited Properties", true); 114 | if (showProperties && TexList != null) 115 | { 116 | printProperties(TexList.TexArray); 117 | } 118 | 119 | GUILayout.FlexibleSpace(); 120 | EditorGUILayout.BeginHorizontal(); 121 | GUILayout.FlexibleSpace(); 122 | if (GUILayout.Button("Create Array", GUILayout.Width(100), GUILayout.Height(30))) 123 | { 124 | TextureSettings settings = new TextureSettings(); 125 | settings.filterMode = filterMode; 126 | settings.copyMips = copyMips; 127 | settings.mipMapBias = mipMapBias; 128 | settings.wrapModeU = wrapModeU; 129 | settings.wrapModeV = wrapModeV; 130 | settings.anisoLevel = anisoLevel; 131 | CopyListIntoArray(TexList, settings); 132 | } 133 | } 134 | 135 | 136 | private void GUICubeArray() 137 | { 138 | oldCubeList = CubeList; 139 | GUILayout.Label("Cubemap List"); 140 | CubeList = EditorGUILayout.ObjectField("", CubeList, typeof(CubemapList), false) as CubemapList; 141 | 142 | /* Copy the settings over from the first texture when a new texture list is put in the object field **/ 143 | if (oldCubeList != CubeList && CubeList != null && CubeList.TexArray.Length > 0 && CubeList.TexArray[0] != null) 144 | { 145 | filterMode = CubeList.TexArray[0].filterMode; 146 | anisoLevel = CubeList.TexArray[0].anisoLevel; 147 | wrapModeU = CubeList.TexArray[0].wrapModeU; 148 | wrapModeV = CubeList.TexArray[0].wrapModeV; 149 | if (wrapModeU == wrapModeV) 150 | { 151 | wrapMode = (int)wrapModeU; 152 | } 153 | else 154 | { 155 | wrapMode = 4; 156 | } 157 | } 158 | 159 | /* Do we want mip maps? if so, copy them from the source textures **/ 160 | copyMips = EditorGUILayout.Toggle("Copy Mip Maps", copyMips); 161 | if (copyMips) 162 | { 163 | mipMapBias = EditorGUILayout.FloatField(" Mip Map Bias", mipMapBias); 164 | } 165 | 166 | filterMode = (FilterMode)EditorGUILayout.Popup("Filter Mode", (int)filterMode, filters); 167 | 168 | /* Set the wrap mode to the same value on both axes unless wrapMode is 4 (Per Axis), then show separate options**/ 169 | wrapMode = EditorGUILayout.Popup("Wrap Mode", wrapMode, wraps); 170 | if (wrapMode == 4) 171 | { 172 | wrapModeU = (TextureWrapMode)EditorGUILayout.Popup(" U Axis", (int)wrapModeU, wrapsAxis); 173 | wrapModeV = (TextureWrapMode)EditorGUILayout.Popup(" V Axis", (int)wrapModeV, wrapsAxis); 174 | } 175 | else 176 | { 177 | wrapModeU = (TextureWrapMode)wrapMode; 178 | wrapModeV = (TextureWrapMode)wrapMode; 179 | } 180 | 181 | anisoLevel = EditorGUILayout.IntSlider("Aniso Level", anisoLevel, 0, 16); 182 | 183 | /* Show the user the settings that are going to be copied over from the source textures directly **/ 184 | showProperties = EditorGUILayout.Foldout(showProperties, "Inherited Properties", true); 185 | if (showProperties && CubeList != null) 186 | { 187 | printPropertiesCUBE(CubeList.TexArray); 188 | } 189 | 190 | GUILayout.FlexibleSpace(); 191 | EditorGUILayout.BeginHorizontal(); 192 | GUILayout.FlexibleSpace(); 193 | if (GUILayout.Button("Create Array", GUILayout.Width(100), GUILayout.Height(30))) 194 | { 195 | TextureSettings settings = new TextureSettings(); 196 | settings.filterMode = filterMode; 197 | settings.copyMips = copyMips; 198 | settings.mipMapBias = mipMapBias; 199 | settings.wrapModeU = wrapModeU; 200 | settings.wrapModeV = wrapModeV; 201 | settings.anisoLevel = anisoLevel; 202 | CopyListIntoArrayCUBE(CubeList, settings); 203 | } 204 | } 205 | 206 | /* 207 | * Check to see if a given texture from the nth position in the array has the same dimensions, format, 208 | * and number of mip levels as the first element 209 | **/ 210 | private bool HasSameSettings(Texture2D first, Texture2D nth, int index) 211 | { 212 | 213 | int fail = 0; 214 | if (first.width == nth.width && first.height == nth.height) 215 | { 216 | if (first.format == nth.format) 217 | { 218 | if (first.mipmapCount != nth.mipmapCount) 219 | fail = 3; 220 | } 221 | else fail = 2; 222 | } 223 | else fail = 1; 224 | switch (fail) 225 | { 226 | case 1: 227 | EditorUtility.DisplayDialog("Textures not the same dimensions", 228 | string.Format("Texture {0} has size of {1}x{2}, expected {3}x{4}", 229 | index, nth.width, nth.height, first.width, first.height), 230 | "ok"); 231 | return false; 232 | case 2: 233 | EditorUtility.DisplayDialog("Textures not the format", 234 | string.Format("Texture {0} has {1} format, expected {2}", 235 | index, nth.format.ToString(), first.format.ToString()), 236 | "ok"); 237 | return false; 238 | case 3: 239 | EditorUtility.DisplayDialog("Not all Textures have the same number of mip levels", 240 | string.Format("Texture {0} has {1} mip levels, expected {2}", 241 | index, nth.mipmapCount, first.mipmapCount), 242 | "ok"); 243 | return false; 244 | default: 245 | return true; 246 | } 247 | } 248 | 249 | 250 | /* 251 | * Check to see if a given Cubemap from the nth position in the array has the same dimensions, format, 252 | * and number of mip levels as the first element 253 | **/ 254 | private bool HasSameSettingsCUBE(Cubemap first, Cubemap nth, int index) 255 | { 256 | 257 | int fail = 0; 258 | if (first.width == nth.width && first.height == nth.height) 259 | { 260 | if (first.format == nth.format) 261 | { 262 | if (first.mipmapCount != nth.mipmapCount) 263 | fail = 3; 264 | } 265 | else fail = 2; 266 | } 267 | else fail = 1; 268 | switch (fail) 269 | { 270 | case 1: 271 | EditorUtility.DisplayDialog("Textures not the same dimensions", 272 | string.Format("Texture {0} has size of {1}x{2}, expected {3}x{4}", 273 | index, nth.width, nth.height, first.width, first.height), 274 | "ok"); 275 | return false; 276 | case 2: 277 | EditorUtility.DisplayDialog("Textures not the format", 278 | string.Format("Texture {0} has {1} format, expected {2}", 279 | index, nth.format.ToString(), first.format.ToString()), 280 | "ok"); 281 | return false; 282 | case 3: 283 | EditorUtility.DisplayDialog("Not all Textures have the same number of mip levels", 284 | string.Format("Texture {0} has {1} mip levels, expected {2}", 285 | index, nth.mipmapCount, first.mipmapCount), 286 | "ok"); 287 | return false; 288 | default: 289 | return true; 290 | } 291 | } 292 | 293 | /* Print out the width, height, texture format, and number of mip levels **/ 294 | private void printProperties(Texture2D[] TexArray) 295 | { 296 | int width, height, depth; 297 | string format; 298 | int mipCount; 299 | 300 | if (TexArray.Length > 0 && TexArray[0] != null) 301 | { 302 | width = TexArray[0].width; 303 | height = TexArray[0].height; 304 | depth = TexArray.Length; 305 | format = TexArray[0].format.ToString(); 306 | mipCount = TexArray[0].mipmapCount; 307 | } 308 | else 309 | { 310 | width = 0; 311 | height = 0; 312 | depth = 0; 313 | format = "none"; 314 | mipCount = 0; 315 | } 316 | 317 | GUILayout.Label("These settings are copied from the first image in the list"); 318 | EditorGUILayout.LabelField("Texture Format:", format); 319 | EditorGUILayout.LabelField("Texture Dimensions:", string.Format("{0}x{1}", width, height)); 320 | EditorGUILayout.LabelField("Mip Levels:", mipCount.ToString()); 321 | EditorGUILayout.LabelField("Number of Images:", depth.ToString()); 322 | } 323 | 324 | /* Print out the width, height, texture format, and number of mip levels **/ 325 | private void printPropertiesCUBE(Cubemap[] TexArray) 326 | { 327 | int width, height, depth; 328 | string format; 329 | int mipCount; 330 | 331 | if (TexArray.Length > 0 && TexArray[0] != null) 332 | { 333 | width = TexArray[0].width; 334 | height = TexArray[0].height; 335 | depth = TexArray.Length; 336 | format = TexArray[0].format.ToString(); 337 | mipCount = TexArray[0].mipmapCount; 338 | } 339 | else 340 | { 341 | width = 0; 342 | height = 0; 343 | depth = 0; 344 | format = "none"; 345 | mipCount = 0; 346 | } 347 | 348 | GUILayout.Label("These settings are copied from the first image in the list"); 349 | EditorGUILayout.LabelField("Texture Format:", format); 350 | EditorGUILayout.LabelField("Texture Dimensions:", string.Format("{0}x{1}", width, height)); 351 | EditorGUILayout.LabelField("Mip Levels:", mipCount.ToString()); 352 | EditorGUILayout.LabelField("Number of Images:", depth.ToString()); 353 | } 354 | 355 | /* Given a list of textures and settings, copy over each texture into a texture2darray and save it as a file **/ 356 | private void CopyListIntoArray(TextureList List, TextureSettings Settings) 357 | { 358 | if (List != null && List.TexArray.Length > 0) 359 | { 360 | if (List.TexArray[0] == null) 361 | { 362 | EditorUtility.DisplayDialog("First element unassigned", "Element 0 of the texture list is empty!", "ok"); 363 | return; 364 | } 365 | Texture2DArray output = new Texture2DArray(List.TexArray[0].width, List.TexArray[0].height, List.TexArray.Length, List.TexArray[0].format, Settings.copyMips && List.TexArray[0].mipmapCount > 1); 366 | output.mipMapBias = Settings.mipMapBias; 367 | output.filterMode = Settings.filterMode; 368 | output.wrapModeU = Settings.wrapModeU; 369 | output.wrapModeV = Settings.wrapModeV; 370 | output.anisoLevel = Settings.anisoLevel; 371 | 372 | bool consistentSettings = true; 373 | for (int i = 0; i < List.TexArray.Length; i++) 374 | { 375 | /* Stop if one of the elements in the list is empty **/ 376 | if (List.TexArray[i] == null) 377 | { 378 | EditorUtility.DisplayDialog("Element unassigned", string.Format("Element {0} of the texture list is empty!", i), "ok"); 379 | return; 380 | } 381 | 382 | /* Stop if the texture being copied doesn't have the same settings as the first element of the array **/ 383 | consistentSettings = HasSameSettings(List.TexArray[0], List.TexArray[i], i); 384 | if (consistentSettings == false) 385 | return; 386 | 387 | /* Copy the contents of the texture into the corresponding slice of the Texture2DArray, and copy over all the mips if copyMips is true **/ 388 | if (Settings.copyMips) 389 | { 390 | for (int j = 0; j < List.TexArray[0].mipmapCount; j++) 391 | { 392 | Graphics.CopyTexture(List.TexArray[i], 0, j, output, i, j); 393 | } 394 | } 395 | else 396 | { 397 | Graphics.CopyTexture(List.TexArray[i], 0, 0, output, i, 0); 398 | } 399 | } 400 | 401 | output.Apply(false); 402 | 403 | string path = EditorUtility.SaveFilePanelInProject("Save Array", List.name + "_texarray.asset", "asset", 404 | "Please enter a file name to save the texture array to"); 405 | if (path.Length != 0) 406 | { 407 | AssetDatabase.CreateAsset(output, path); 408 | } 409 | } 410 | else 411 | { 412 | EditorUtility.DisplayDialog("No texture list selected", "You must enter a non-empty texture list", "ok"); 413 | } 414 | } 415 | 416 | 417 | /* Given a list of textures and settings, copy over each texture into a texture2darray and save it as a file **/ 418 | private void CopyListIntoArrayCUBE(CubemapList List, TextureSettings Settings) 419 | { 420 | if (List != null && List.TexArray.Length > 0) 421 | { 422 | if (List.TexArray[0] == null) 423 | { 424 | EditorUtility.DisplayDialog("First element unassigned", "Element 0 of the texture list is empty!", "ok"); 425 | return; 426 | } 427 | CubemapArray output = new CubemapArray(List.TexArray[0].width, List.TexArray.Length, List.TexArray[0].format, Settings.copyMips); 428 | output.mipMapBias = Settings.mipMapBias; 429 | output.filterMode = Settings.filterMode; 430 | output.wrapModeU = Settings.wrapModeU; 431 | output.wrapModeV = Settings.wrapModeV; 432 | output.anisoLevel = Settings.anisoLevel; 433 | 434 | bool consistentSettings = true; 435 | for (int i = 0; i < List.TexArray.Length; i++) 436 | { 437 | /* Stop if one of the elements in the list is empty **/ 438 | if (List.TexArray[i] == null) 439 | { 440 | EditorUtility.DisplayDialog("Element unassigned", string.Format("Element {0} of the texture list is empty!", i), "ok"); 441 | return; 442 | } 443 | 444 | /* Stop if the texture being copied doesn't have the same settings as the first element of the array **/ 445 | consistentSettings = HasSameSettingsCUBE(List.TexArray[0], List.TexArray[i], i); 446 | if (consistentSettings == false) 447 | return; 448 | 449 | /* Copy the contents of the texture into the corresponding slice of the Texture2DArray, and copy over all the mips if copyMips is true **/ 450 | if (Settings.copyMips) 451 | { 452 | for (int j = 0; j < List.TexArray[0].mipmapCount; j++) 453 | { 454 | Graphics.CopyTexture(List.TexArray[i], 0, j, output, i, j); 455 | } 456 | } 457 | else 458 | { 459 | Graphics.CopyTexture(List.TexArray[i], 0, 0, output, i, 0); 460 | } 461 | } 462 | 463 | output.Apply(false); 464 | 465 | string path = EditorUtility.SaveFilePanelInProject("Save Array", List.name + "_texarray.asset", "asset", 466 | "Please enter a file name to save the texture array to"); 467 | if (path.Length != 0) 468 | { 469 | AssetDatabase.CreateAsset(output, path); 470 | } 471 | } 472 | else 473 | { 474 | EditorUtility.DisplayDialog("No texture list selected", "You must enter a non-empty texture list", "ok"); 475 | } 476 | } 477 | } 478 | -------------------------------------------------------------------------------- /retrosprites/editor/TextureArrayCreator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f8770265e6e80b242a03cf391ca89155 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /retrosprites/editor/TextureList.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | [CreateAssetMenu(fileName = "Texture List", menuName = "Texture Lists/2D Texture List", order = 1)] 6 | public class TextureList : ScriptableObject { 7 | public Texture2D[] TexArray; 8 | } 9 | -------------------------------------------------------------------------------- /retrosprites/editor/TextureList.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c6f67ccbd4a0f44095314ad2d23f9dc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /retrosprites/example_assets.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 595e279ff261a424bbb450adc60cd616 3 | folderAsset: yes 4 | timeCreated: 1533931330 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cc454963e6c13124697fac383258be7f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Materials/Example_cutout.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Example_cutout 11 | m_Shader: {fileID: 4800000, guid: 0cfa1b76935430c45abab1927164df8a, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 18700000, guid: a9f14fd897b13544693d0f91fa3e8e58, type: 2} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _A2C: 0 60 | - _BumpScale: 1 61 | - _Cutoff: 0.5 62 | - _DetailNormalMapScale: 1 63 | - _Dir: 8 64 | - _DstBlend: 0 65 | - _GlossMapScale: 1 66 | - _Glossiness: 0.5 67 | - _GlossyReflections: 1 68 | - _InvRot: 1 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | - _alphaClip: 0.1 79 | - _frame: 0 80 | - _light: 1 81 | m_Colors: 82 | - _Color: {r: 1, g: 1, b: 1, a: 1} 83 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 84 | - _Params: {r: 4, g: 1, b: 4, a: 8} 85 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Materials/Example_cutout.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 045bafcab7bfb37469a8f232108ed36a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Materials/Example_particle.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Example_particle 11 | m_Shader: {fileID: 4800000, guid: 373ea3365093fc54bbd1f0a570ca4dc2, type: 3} 12 | m_ShaderKeywords: _ 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 18700000, guid: a9f14fd897b13544693d0f91fa3e8e58, type: 2} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _A2C: 0 60 | - _BumpScale: 1 61 | - _Cutoff: 0.5 62 | - _DetailNormalMapScale: 1 63 | - _Dir: 8 64 | - _DstBlend: 0 65 | - _GlossMapScale: 1 66 | - _Glossiness: 0.5 67 | - _GlossyReflections: 1 68 | - _InvRot: 0 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 1 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | - _alphaClip: 0.1 79 | - _frame: 0 80 | - _light: 1 81 | m_Colors: 82 | - _Color: {r: 1, g: 1, b: 1, a: 1} 83 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 84 | - _Params: {r: 1, g: 1, b: 4, a: 6} 85 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Materials/Example_particle.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a139609bcf1a504f85eb8bf6157d592 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Particle_example.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2c09c00c098fee7438cfdeeb5fd08d67 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6687cd00912086948a059b818d8cdf1c 3 | folderAsset: yes 4 | timeCreated: 1533931340 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/COPYING.adoc: -------------------------------------------------------------------------------- 1 | Copyright © 2001-2021 2 | Contributors to the Freedoom project. All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are 6 | met: 7 | 8 | * Redistributions of source code must retain the above copyright 9 | notice, this list of conditions and the following disclaimer. 10 | * Redistributions in binary form must reproduce the above copyright 11 | notice, this list of conditions and the following disclaimer in the 12 | documentation and/or other materials provided with the distribution. 13 | * Neither the name of the Freedoom project nor the names of its 14 | contributors may be used to endorse or promote products derived from 15 | this software without specific prior written permission. 16 | 17 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS 18 | IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 19 | TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 20 | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER 21 | OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 22 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 23 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 24 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 25 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 26 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 27 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | 29 | For a list of contributors to the Freedoom project, see the file 30 | CREDITS. 31 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/COPYING.adoc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: edd3d41009c8cca47887fa8cc0aca0aa 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/freedoom_example.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 4c6f67ccbd4a0f44095314ad2d23f9dc, type: 3} 13 | m_Name: freedoom_example 14 | m_EditorClassIdentifier: 15 | TexArray: 16 | - {fileID: 2800000, guid: 293b6fe10d55f954abe41e04b7194a48, type: 3} 17 | - {fileID: 2800000, guid: 6ade79da9cedbfb47be26be405ab06c6, type: 3} 18 | - {fileID: 2800000, guid: e6fa5769f7cbea64a9562019332deb63, type: 3} 19 | - {fileID: 2800000, guid: 1eff52a534180e84dbd803291c5b10ce, type: 3} 20 | - {fileID: 2800000, guid: 39d973f0350aaf24d993ac0e3d096340, type: 3} 21 | - {fileID: 2800000, guid: 3d4ffb819963fea46883793d2cb63253, type: 3} 22 | - {fileID: 2800000, guid: a3ab87f4b9b91d14c874ed3f712f05e5, type: 3} 23 | - {fileID: 2800000, guid: 0f2050ed420f59a4dad6ddc69cdba5a2, type: 3} 24 | - {fileID: 2800000, guid: afa7cbc60bc172b4ab819bffce5d9ae4, type: 3} 25 | - {fileID: 2800000, guid: 64a24c1560743b8498f609a7dd794dca, type: 3} 26 | - {fileID: 2800000, guid: 8eded8b52f9f87d49839f8fef0d28e62, type: 3} 27 | - {fileID: 2800000, guid: 25b4ffe140d199d4385cd46d4752426b, type: 3} 28 | - {fileID: 2800000, guid: 79e632458f2c5ed4b972434149bd78fd, type: 3} 29 | - {fileID: 2800000, guid: 868517f4e82d7e14b855656c9ab80b29, type: 3} 30 | - {fileID: 2800000, guid: 0eb7930936f1d82459195db600ddfc03, type: 3} 31 | - {fileID: 2800000, guid: 46e413b5a3c87b74a9f0b0f843fe9050, type: 3} 32 | - {fileID: 2800000, guid: a940bf529b438854481e62655cca1d4b, type: 3} 33 | - {fileID: 2800000, guid: 29a8df358704e12449b58f49d5258b65, type: 3} 34 | - {fileID: 2800000, guid: 11350b1825cf0c6499debb5d3df5ac5f, type: 3} 35 | - {fileID: 2800000, guid: 064aec35850db8340a05c0bccb445986, type: 3} 36 | - {fileID: 2800000, guid: 6f3ecae1619085c46b9d710c12dcd3e5, type: 3} 37 | - {fileID: 2800000, guid: b482ee95e3d94df4c9ac71c1b667837c, type: 3} 38 | - {fileID: 2800000, guid: 5ffbebb635372d54ba2a5e3a9d6eca8e, type: 3} 39 | - {fileID: 2800000, guid: 04f947f12dabff64eaaefcab064f2598, type: 3} 40 | - {fileID: 2800000, guid: a4dd06b39d97e0344afc9703adcce7a1, type: 3} 41 | - {fileID: 2800000, guid: c97e5448bab0ee64aa6be5c0ad23fba7, type: 3} 42 | - {fileID: 2800000, guid: e353e3f7e7ec1ef45b66b51972fab48d, type: 3} 43 | - {fileID: 2800000, guid: ae7475b6f9c301d4886e2218168e7ade, type: 3} 44 | - {fileID: 2800000, guid: c47fa7564d3a53645a99822c1c10f3d6, type: 3} 45 | - {fileID: 2800000, guid: b8dde4ad52ca703488ee7a504789e915, type: 3} 46 | - {fileID: 2800000, guid: 59280e7095634b34d9601ea1c9b6c03f, type: 3} 47 | - {fileID: 2800000, guid: 41c80ea732a0bf54f83215bd6a321620, type: 3} 48 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/freedoom_example.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bce867d36f0416749a073ce1e3965a3d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/freedoom_example_texarray.asset: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f26ff1f125dfdc7ae52ec46427cf60e123ee904e4ea778e702713a7d409c75f4 3 | size 262919 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/freedoom_example_texarray.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9f14fd897b13544693d0f91fa3e8e58 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 18700000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:555840eb37f985f9e5852e3c17fadce65c51577a3946d5339a69df384136ff48 3 | size 9175 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_0.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 293b6fe10d55f954abe41e04b7194a48 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:5dead072fe60119e77b64e04c2166051ddc3ef4a2b81d6d3a5d192f127bfc3d6 3 | size 8040 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_1.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ade79da9cedbfb47be26be405ab06c6 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:dc4809309c28a9ec2d92ccdc1b154b871b96c2306f252dd16e68365322191c02 3 | size 7008 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_2.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e6fa5769f7cbea64a9562019332deb63 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3b5d5db294bbe14eac00bf53e05ef7d84fdc471fb1295aeba6ec97c6dfd5939a 3 | size 7100 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_3.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1eff52a534180e84dbd803291c5b10ce 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_4.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:245284e6c8363caa4408d8b777bdb456fea8940c4c2b7f4583dfb2003bd636ba 3 | size 8257 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_4.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 39d973f0350aaf24d993ac0e3d096340 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_5.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b6328052d86ef6dabb6f315587b022bf45dafb4a14060a419bf6a0850e0529ef 3 | size 7124 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_5.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d4ffb819963fea46883793d2cb63253 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_6.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3f38ca58f330ddeace7fbca6598bd3d29d4f880936dee6975bb70f4ae2d649b5 3 | size 7056 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_6.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a3ab87f4b9b91d14c874ed3f712f05e5 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_7.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:c11f5c4f6574e4403aab158b954147fb160283d0225cc05644a94b6988a486e3 3 | size 7984 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player0_7.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f2050ed420f59a4dad6ddc69cdba5a2 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3e8101c9f8691ca0c05adf49f6fec32bbcc47ba441d70fd98e0899eb0b6abdf1 3 | size 9091 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_0.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: afa7cbc60bc172b4ab819bffce5d9ae4 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:ba3018bcf2ac683d44ac01a6765523771a811eea18dec32b65fa198d573ed222 3 | size 8460 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_1.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 64a24c1560743b8498f609a7dd794dca 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f784b6dc49288e9d4ffe7534343fe5fd868408682c23f80edc3fe5166f15b67c 3 | size 8390 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_2.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8eded8b52f9f87d49839f8fef0d28e62 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1b8c456413f8f5a819d803ec957fd7432ad5ce847f10b9d14a246a53a40f6c68 3 | size 8373 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_3.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 25b4ffe140d199d4385cd46d4752426b 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_4.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f17277d31bbe9313e3ebbac978add7e96e415e0f1bfd93ead0ca4c48bb7fc522 3 | size 7717 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_4.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 79e632458f2c5ed4b972434149bd78fd 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_5.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b34f2b76114d9a23ec86612ee3eecbd8ea4739c61f06b7186339a7d8468e802f 3 | size 8384 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_5.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 868517f4e82d7e14b855656c9ab80b29 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_6.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:c71778194e15066b8d067c09106f18a4932bb655d852c766630e104e064d5711 3 | size 8404 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_6.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0eb7930936f1d82459195db600ddfc03 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_7.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f2f9cd5c08ec208f3a5cda1d0292eed8a9209753d87822fda15e55766615859f 3 | size 8392 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player1_7.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 46e413b5a3c87b74a9f0b0f843fe9050 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:e4424df2aef8650ba0424de1d70acc1400e111de1c104071b02d36a7d8e7208f 3 | size 9087 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_0.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a940bf529b438854481e62655cca1d4b 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1c84898b95f5a9dafe19f511557991572b585afe43cd164612aa2a0f320d38c6 3 | size 7913 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_1.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 29a8df358704e12449b58f49d5258b65 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1b430bfe30a3b24b72f2a6686b00cafa240015324387439f200e90ede7ea74ce 3 | size 7045 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_2.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 11350b1825cf0c6499debb5d3df5ac5f 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:31527b3829c630755c565dc4b25f98533269231ab0e16c3dc207f179cf1e4378 3 | size 7353 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_3.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 064aec35850db8340a05c0bccb445986 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_4.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:25bcacdcf753ff19bd2d28f371091b9821f284cb4da857cfa5c30268f93cf359 3 | size 8137 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_4.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6f3ecae1619085c46b9d710c12dcd3e5 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_5.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b89a16602841c3b8b6b8b2209c795e4e105deff59eceb4b46fd2d50d76a6f00c 3 | size 7402 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_5.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b482ee95e3d94df4c9ac71c1b667837c 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_6.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:72f65d582ceef767e4cdedc16f1df1d40c0d1aa63591e08d27b41205b445dc75 3 | size 7119 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_6.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ffbebb635372d54ba2a5e3a9d6eca8e 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_7.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d23faa32946f9c6c8cc79595349c8f9cc7b67b316ed02dd69ee3a4d75c21c9d2 3 | size 7802 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player2_7.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 04f947f12dabff64eaaefcab064f2598 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_0.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:60d3b84e2ecd24d391bb5cbd8db9214a60c4f8f2a73d238cc655ba71ff760457 3 | size 9055 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_0.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a4dd06b39d97e0344afc9703adcce7a1 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_1.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:c78efe26fe31ddec5aa8a78e1ed3f7532fc09001c967e3de5dd378266206f833 3 | size 9046 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_1.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c97e5448bab0ee64aa6be5c0ad23fba7 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_2.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:b28751094e75b76473a2950a1eabecd9becf9cac68b1f34112eaa3cddd886aea 3 | size 8419 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_2.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e353e3f7e7ec1ef45b66b51972fab48d 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_3.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9bc9a993708d233e9792ff0da7cd9cfff56895e593a1da17bce31284fdd90f89 3 | size 7849 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_3.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ae7475b6f9c301d4886e2218168e7ade 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_4.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1eeaeda409932322ede3fe34eb9dcf7f19652dff0f758ff705aa8a6d42594e45 3 | size 8102 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_4.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c47fa7564d3a53645a99822c1c10f3d6 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_5.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:662135c30f4feee54292083c57fe95a7b4f8a924c79e6a0c1fdf24e9f4b07824 3 | size 7727 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_5.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8dde4ad52ca703488ee7a504789e915 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_6.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:a84f5574002cae2f7845026bbe9e4ddc8b08c675cdffc87eeb581498031e603b 3 | size 8065 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_6.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59280e7095634b34d9601ea1c9b6c03f 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_7.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f4bbfc72b1c0ab5e5b6a41ae725d5e7d75c150d7ff50f2ad2c581a1737d9df4c 3 | size 8977 4 | -------------------------------------------------------------------------------- /retrosprites/example_assets/Textures/player3_7.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41c80ea732a0bf54f83215bd6a321620 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 2 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 2 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /retrosprites/example_assets/sprite_example.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1 &1677160543793308 4 | GameObject: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | serializedVersion: 6 10 | m_Component: 11 | - component: {fileID: 4691824001777340} 12 | - component: {fileID: 33808536744682364} 13 | - component: {fileID: 23647444712032014} 14 | m_Layer: 0 15 | m_Name: sprite_example 16 | m_TagString: Untagged 17 | m_Icon: {fileID: 0} 18 | m_NavMeshLayer: 0 19 | m_StaticEditorFlags: 0 20 | m_IsActive: 1 21 | --- !u!4 &4691824001777340 22 | Transform: 23 | m_ObjectHideFlags: 0 24 | m_CorrespondingSourceObject: {fileID: 0} 25 | m_PrefabInstance: {fileID: 0} 26 | m_PrefabAsset: {fileID: 0} 27 | m_GameObject: {fileID: 1677160543793308} 28 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 29 | m_LocalPosition: {x: 0, y: 0.973, z: 0} 30 | m_LocalScale: {x: 1.07, y: 1, z: 1} 31 | m_Children: [] 32 | m_Father: {fileID: 0} 33 | m_RootOrder: 0 34 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 35 | --- !u!33 &33808536744682364 36 | MeshFilter: 37 | m_ObjectHideFlags: 0 38 | m_CorrespondingSourceObject: {fileID: 0} 39 | m_PrefabInstance: {fileID: 0} 40 | m_PrefabAsset: {fileID: 0} 41 | m_GameObject: {fileID: 1677160543793308} 42 | m_Mesh: {fileID: 4300000, guid: abb415d194a1e654baaedbd56b63c39c, type: 3} 43 | --- !u!23 &23647444712032014 44 | MeshRenderer: 45 | m_ObjectHideFlags: 0 46 | m_CorrespondingSourceObject: {fileID: 0} 47 | m_PrefabInstance: {fileID: 0} 48 | m_PrefabAsset: {fileID: 0} 49 | m_GameObject: {fileID: 1677160543793308} 50 | m_Enabled: 1 51 | m_CastShadows: 1 52 | m_ReceiveShadows: 1 53 | m_DynamicOccludee: 1 54 | m_MotionVectors: 1 55 | m_LightProbeUsage: 1 56 | m_ReflectionProbeUsage: 1 57 | m_RayTracingMode: 2 58 | m_RenderingLayerMask: 1 59 | m_RendererPriority: 0 60 | m_Materials: 61 | - {fileID: 2100000, guid: 045bafcab7bfb37469a8f232108ed36a, type: 2} 62 | m_StaticBatchInfo: 63 | firstSubMesh: 0 64 | subMeshCount: 0 65 | m_StaticBatchRoot: {fileID: 0} 66 | m_ProbeAnchor: {fileID: 0} 67 | m_LightProbeVolumeOverride: {fileID: 0} 68 | m_ScaleInLightmap: 1 69 | m_ReceiveGI: 1 70 | m_PreserveUVs: 0 71 | m_IgnoreNormalsForChartDetection: 0 72 | m_ImportantGI: 0 73 | m_StitchLightmapSeams: 0 74 | m_SelectedEditorRenderState: 3 75 | m_MinimumChartSize: 4 76 | m_AutoUVMaxDistance: 0.5 77 | m_AutoUVMaxAngle: 89 78 | m_LightmapParameters: {fileID: 0} 79 | m_SortingLayerID: 0 80 | m_SortingLayer: 0 81 | m_SortingOrder: 0 82 | -------------------------------------------------------------------------------- /retrosprites/example_assets/sprite_example.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a3eca7464e258d4d960990a177df216 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/meshes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d149db830b2fb8a41ad360d3c77fa6eb 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/meshes/sprite.fbx: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:bbfd605cbb3a8ae093d77d0130e0b9f42f4e7121b83ca356b853aef6f96e71f6 3 | size 14860 4 | -------------------------------------------------------------------------------- /retrosprites/meshes/sprite.fbx.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: abb415d194a1e654baaedbd56b63c39c 3 | ModelImporter: 4 | serializedVersion: 22 5 | fileIDToRecycleName: 6 | 100000: Camera 7 | 100002: Cube 8 | 100004: Lamp 9 | 100006: //RootNode 10 | 400000: Camera 11 | 400002: Cube 12 | 400004: Lamp 13 | 400006: //RootNode 14 | 2300000: Cube 15 | 2300002: //RootNode 16 | 3300000: Cube 17 | 3300002: //RootNode 18 | 4300000: Cube 19 | externalObjects: 20 | - first: 21 | type: UnityEngine:Material 22 | assembly: UnityEngine.CoreModule 23 | name: idle 24 | second: {fileID: 2100000, guid: 5f3b150d3329b164492ca565b5ddc36f, type: 2} 25 | materials: 26 | importMaterials: 1 27 | materialName: 0 28 | materialSearch: 1 29 | materialLocation: 0 30 | animations: 31 | legacyGenerateAnimations: 4 32 | bakeSimulation: 0 33 | resampleCurves: 1 34 | optimizeGameObjects: 0 35 | motionNodeName: 36 | rigImportErrors: 37 | rigImportWarnings: 38 | animationImportErrors: 39 | animationImportWarnings: 40 | animationRetargetingWarnings: 41 | animationDoRetargetingWarnings: 0 42 | importAnimatedCustomProperties: 0 43 | animationCompression: 1 44 | animationRotationError: 0.5 45 | animationPositionError: 0.5 46 | animationScaleError: 0.5 47 | animationWrapMode: 0 48 | extraExposedTransformPaths: [] 49 | extraUserProperties: [] 50 | clipAnimations: [] 51 | isReadable: 1 52 | meshes: 53 | lODScreenPercentages: [] 54 | globalScale: 1 55 | meshCompression: 0 56 | addColliders: 0 57 | importVisibility: 0 58 | importBlendShapes: 1 59 | importCameras: 0 60 | importLights: 0 61 | swapUVChannels: 0 62 | generateSecondaryUV: 0 63 | useFileUnits: 1 64 | optimizeMeshForGPU: 1 65 | keepQuads: 0 66 | weldVertices: 1 67 | preserveHierarchy: 0 68 | indexFormat: 1 69 | secondaryUVAngleDistortion: 8 70 | secondaryUVAreaDistortion: 15.000001 71 | secondaryUVHardAngle: 88 72 | secondaryUVPackMargin: 4 73 | useFileScale: 0 74 | tangentSpace: 75 | normalSmoothAngle: 60 76 | normalImportMode: 0 77 | tangentImportMode: 3 78 | normalCalculationMode: 0 79 | importAnimation: 1 80 | copyAvatar: 0 81 | humanDescription: 82 | serializedVersion: 2 83 | human: [] 84 | skeleton: [] 85 | armTwist: 0.5 86 | foreArmTwist: 0.5 87 | upperLegTwist: 0.5 88 | legTwist: 0.5 89 | armStretch: 0.05 90 | legStretch: 0.05 91 | feetSpacing: 0 92 | rootMotionBoneName: 93 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1} 94 | hasTranslationDoF: 0 95 | hasExtraRoot: 0 96 | skeletonHasParents: 1 97 | lastHumanDescriptionAvatarSource: {instanceID: 0} 98 | animationType: 0 99 | humanoidOversampling: 1 100 | additionalBone: 0 101 | userData: 102 | assetBundleName: 103 | assetBundleVariant: 104 | -------------------------------------------------------------------------------- /retrosprites/particleSystemSettings.png: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:396e4282ceec18f1b3299b14b834243b99b209f685fd1cee8344f094d3c2792b 3 | size 31482 4 | -------------------------------------------------------------------------------- /retrosprites/particleSystemSettings.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2805d0aa32f31484a8454dc7c30e9543 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 1 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 0 38 | wrapV: 0 39 | wrapW: 0 40 | nPOTScale: 1 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 0 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 0 53 | spriteTessellationDetail: -1 54 | textureType: 0 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 0 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 1 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | spriteSheet: 75 | serializedVersion: 2 76 | sprites: [] 77 | outline: [] 78 | physicsShape: [] 79 | bones: [] 80 | spriteID: 81 | internalID: 0 82 | vertices: [] 83 | indices: 84 | edges: [] 85 | weights: [] 86 | secondaryTextures: [] 87 | spritePackingTag: 88 | pSDRemoveMatte: 0 89 | pSDShowRemoveMatteOption: 0 90 | userData: 91 | assetBundleName: 92 | assetBundleVariant: 93 | -------------------------------------------------------------------------------- /retrosprites/shaders.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 05039228f695a824a87660dbbd7f0094 3 | folderAsset: yes 4 | timeCreated: 1533931190 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dda628f057ef62340902e4cd254dac4b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/particle_frag.cginc: -------------------------------------------------------------------------------- 1 | fixed4 frag(v2f i) : SV_Target 2 | { 3 | float4 finalUV = UNITY_SAMPLE_TEX2DARRAY(_MainTex, i.uv) * _Color * i.color; 4 | finalUV = (_light == 1)*finalUV*float4(i.lighting, 1) + (_light != 1)*finalUV; 5 | return finalUV; 6 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/particle_frag.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9b08e4ecfae795a4b85a2294a4c6b6d5 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/particle_frag_cutout.cginc: -------------------------------------------------------------------------------- 1 | fixed4 frag(v2f i) : SV_Target 2 | { 3 | float4 finalUV = UNITY_SAMPLE_TEX2DARRAY(_MainTex, i.uv) * _Color * i.color; 4 | 5 | clip(finalUV.a - _alphaClip); 6 | 7 | finalUV = (_light == 1)*finalUV*float4(i.lighting, 1) + (_light != 1)*finalUV; 8 | 9 | 10 | return finalUV; 11 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/particle_frag_cutout.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f97c2aacf942a1a498b257ad2403df67 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/particle_structs.cginc: -------------------------------------------------------------------------------- 1 | struct VertIn 2 | { 3 | float4 pos : POSITION; 4 | float4 color : COLOR; 5 | float4 uv_center : TEXCOORD0; 6 | float4 center_velocity: TEXCOORD1; 7 | //float frame : TEXCOORD2; 8 | UNITY_VERTEX_INPUT_INSTANCE_ID 9 | }; 10 | 11 | struct v2f 12 | { 13 | float3 uv : TEXCOORD0; 14 | float4 pos : SV_POSITION; 15 | float4 color : COLOR; 16 | float3 lighting : TEXCOORD1; 17 | UNITY_VERTEX_OUTPUT_STEREO 18 | }; -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/particle_structs.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7998c4c60f8babf49a604ef1e4173ffb 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/particle_vert.cginc: -------------------------------------------------------------------------------- 1 | v2f vert(VertIn v) 2 | { 3 | 4 | v2f o; 5 | UNITY_SETUP_INSTANCE_ID(v); 6 | //UNITY_TRANSFER_INSTANCE_ID(v, o); 7 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); 8 | 9 | // Get the position in between the two cameras if the viewer is in VR, otherwise get the position of the 10 | // camera. If you don't do this, the sprite will look very stereo-incorrect as it will be oriented toward 11 | // both eyes simultaneously 12 | float4 cameraPos = wrld_cam_pos(); 13 | float2 cameraDir = obj_cam_dir(); 14 | float3 pCenter = float3(v.uv_center.zw, v.center_velocity.x); 15 | float3 velocity = v.center_velocity.yzw; 16 | 17 | cameraPos.xyz = pCenter - cameraPos.xyz; 18 | //float3 ortho = normalize(cross(float3(0, 1, 0), velocity)); 19 | float3 ortho = normalize(-velocity); 20 | float4 cameraPos2 = rotate_camera(float4(cameraPos.xyz,1), ortho); 21 | //cameraPos2.x = -cameraPos2.x; 22 | 23 | 24 | v.pos.xyz -= pCenter; 25 | 26 | float4 pos = rotate_sprite(cameraPos, cameraDir, v.pos); 27 | pos.xyz += pCenter; 28 | o.pos = UnityObjectToClipPos(pos); 29 | 30 | int dir = sprite_dir(_Dir, cameraPos2, cameraDir, _InvRot); 31 | //o.uv.z = dir; 32 | float4 params = float4(1, 1, _Params.z, _Params.w); 33 | o.uv = sprite_sheet_uvs(v.uv_center.xy, dir, _Dir, params, _frame); 34 | //o.uv.z = dir; 35 | o.lighting = simple_lighting(pCenter); 36 | o.color = v.color; 37 | 38 | return o; 39 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/particle_vert.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f840de5c637db349909f828056e0821 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_frag.cginc: -------------------------------------------------------------------------------- 1 | fixed4 frag(v2f i) : SV_Target 2 | { 3 | float4 finalColor = UNITY_SAMPLE_TEX2DARRAY(_MainTex, i.uv) * _Color; 4 | finalColor = finalColor * float4(i.color,1); 5 | UNITY_APPLY_FOG(i.fogCoord, finalColor); 6 | return finalColor; 7 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_frag.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6bf2babe3042d73478b1ceb15191f60b 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_frag_cutout.cginc: -------------------------------------------------------------------------------- 1 | fixed4 frag(v2f i) : SV_Target 2 | { 3 | float4 finalColor = UNITY_SAMPLE_TEX2DARRAY(_MainTex, i.uv) * _Color; 4 | 5 | clip(finalColor.a - _alphaClip); 6 | 7 | finalColor = finalColor * float4(i.color,1); 8 | UNITY_APPLY_FOG(i.fogCoord, finalColor); 9 | return finalColor; 10 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_frag_cutout.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed270b6781601ee4bbca8d612a02abc5 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_functions.cginc: -------------------------------------------------------------------------------- 1 | /** 2 | * @file sprite_functions.cginc 3 | * @author Error.mdl 4 | * @date 2019-06-05 5 | * @brief A collection of miscellaneous functions used by my directional billboard shaders 6 | */ 7 | 8 | bool IsInMirror() 9 | { 10 | return unity_CameraProjection[2][0] != 0.f || unity_CameraProjection[2][1] != 0.f; 11 | } 12 | 13 | /** 14 | * @brief Returns the world space postion of the camera, corrected to be the midpoint between the eyes for VR users 15 | */ 16 | float4 wrld_cam_pos() 17 | { 18 | #if UNITY_SINGLE_PASS_STEREO 19 | float4 cameraPos = float4((unity_StereoWorldSpaceCameraPos[0] + unity_StereoWorldSpaceCameraPos[1])*0.5, 1); 20 | #else 21 | float4 cameraPos = mul(unity_CameraToWorld, float4(0,0,0,1)); 22 | #endif 23 | return cameraPos; 24 | } 25 | 26 | float2 obj_cam_dir() 27 | { 28 | float2 cameraDir = float2(0, 0); 29 | UNITY_BRANCH if (IsInMirror()) 30 | { 31 | //cameraDir = mul((float3x3)unity_WorldToObject, mul((float3x3)unity_CameraToWorld, float3(0, 0, 1))).xz; 32 | cameraDir = mul((float3x3)unity_WorldToObject, unity_CameraWorldClipPlanes[5].xyz).xz; 33 | } 34 | return cameraDir; 35 | } 36 | 37 | /** 38 | * @Brief Returns the object space position of the camera, corrected for VR 39 | */ 40 | float4 obj_cam_pos() 41 | { 42 | float4 cameraPos = wrld_cam_pos(); 43 | cameraPos = mul(unity_WorldToObject, cameraPos); 44 | return cameraPos; 45 | } 46 | 47 | 48 | 49 | /** 50 | * @brief Given the position of a vertex and camera, rotates the vertex around the origin in the xz plane so that the 51 | * Z-axis points towards the camera. 52 | * @param cameraPos object-space position of the camera 53 | * @param vertPos object-space position of vertex 54 | * @return New position of the vertex rotated about the origin 55 | */ 56 | float4 rotate_sprite(float4 cameraPos, float2 cameraForward, float4 vertPos) 57 | { 58 | float len, cosa, sina = 0.0; 59 | UNITY_BRANCH if (!IsInMirror()) 60 | { 61 | len = distance(float2(0, 0), float2(cameraPos[0], cameraPos[2])); 62 | 63 | cosa = (cameraPos[2]) / len; 64 | sina = (cameraPos[0]) / len; 65 | } 66 | else 67 | { 68 | cameraForward = -normalize(cameraForward); 69 | cosa = cameraForward.y; 70 | sina = cameraForward.x; 71 | } 72 | 73 | float2x2 R = float2x2( 74 | cosa, sina, 75 | -sina, cosa 76 | ); 77 | 78 | vertPos.xz = mul(R, vertPos.xz); 79 | return vertPos; 80 | } 81 | 82 | /** 83 | * @brief Given the position of a camera and a forward vector, rotates the camera around the origin in the xz plane so that the 84 | * z+ unit vector in the camera's original space is now aligned with the forward vector. 85 | * 86 | * Used to rotate the camera to match the forward velocity so that calculating the sprite direction is easier 87 | * for particle variants of the shader 88 | * 89 | * @param cameraPos position of the camera 90 | * @param vertPos forward vector 91 | * @return New position of the camera rotated about the origin 92 | */ 93 | float4 rotate_camera(float4 cameraPos, float3 forward) 94 | { 95 | float cosa = forward.z; 96 | float sina = -forward.x; 97 | 98 | float2x2 R = float2x2( 99 | cosa, sina, 100 | -sina, cosa 101 | ); 102 | 103 | cameraPos.xz = mul(R, cameraPos.xz); 104 | return cameraPos; 105 | } 106 | 107 | 108 | /** 109 | * @brief Calculates the direction on the sprite sheet to use. 110 | * 111 | * Starts at 0 for +z and increases clockwise. So for example in a four directional sprite, looking in the -z direction 112 | * you will see image 0, looking in -x you will see image 1, looking in +z you will see image 2, and looking in +x you 113 | * will see image 3. 114 | * 115 | * @param totalDivisions The number of different directions you have in your texture array 116 | * @param cameraPos Object-space camera position 117 | * @return dir The index of the texture in the texture array to use for the direction calcuated. 118 | */ 119 | int sprite_dir(int totalDivisions, float4 cameraPos, float2 cameraDir, float InvRot) 120 | { 121 | //Get the angle between the camera and (0,0,-1) in the xz plane, ranges from -pi to pi 122 | float angle = 0; 123 | float rotSign = InvRot > 0 ? -1 : 1; 124 | UNITY_BRANCH if (!IsInMirror()) 125 | { 126 | angle = atan2(rotSign*-cameraPos[0], -cameraPos[2]); 127 | } 128 | else 129 | { 130 | angle = atan2(rotSign * cameraDir.x, cameraDir.y); 131 | } 132 | //Calculate the fraction of 2pi each direction occupies (eg for 8 directions, each division is 0.25*pi) 133 | float div = 1.0 / ((float)totalDivisions); 134 | // Calculate which texture in the texture array to use. Starts at 0 for the +z spritesheet and increases 135 | // counter-clockwise. 136 | int dir = floor((angle + (1 + div)*UNITY_PI)/(UNITY_TWO_PI*div)) % totalDivisions; 137 | return dir; 138 | } 139 | 140 | 141 | /** 142 | * @brief Transform the give uv coordinates to a single tile of the sprite sheet if using sprite sheets, or calculate 143 | * array index if using an individual sprite array. 144 | * 145 | * If using sprite sheets, transforms the given UVs (assuming a 0-1 range on both axes) to only span the portion of the 146 | * active tile in the sprite sheet. Calculates which tile is active based on time, framerate, and manual frame number. 147 | * If using individual sprites, calculates the array index corresponding to the direction and animation frame 148 | * 149 | * @param uv the original uv coordinates 150 | * @param dir the direction the sprite is being viewed from, as an integer ranging from 0 to the total number of directions minus one 151 | * @param totalDir the total number of directions with a unique sprite representing them 152 | * @param Params float4 containing in order: the number of columns in the sheet, the number of rows, 153 | * the total number of tiles (allows you to leave spaces empty at the end of the sprite sheet), and the framerate. 154 | * @param manualFrame With the framerate set to 0, allows you to manually increment the active frame in the sprite sheet. 155 | * Useful for animating the sprite through a unity animation. 156 | * @return UV coordinates transformed to the active tile in the sheet. 157 | */ 158 | float3 sprite_sheet_uvs(float2 uv, float dir, float totalDir, float4 Params, float manualFrame) 159 | { 160 | float3 tile_uv; 161 | uint3 dim = floor(Params.xyz); 162 | uint frame_num = floor(fmod(_Time[1] * Params.w + manualFrame, Params.z)); 163 | #ifdef SPRITE_SHEET 164 | int2 frame = int2(frame_num % dim.x, frame_num / dim.x); 165 | tile_uv = float3((uv.x + frame[0])/Params.x, ((uv.y - frame[1])/Params.y) + (Params.y - 1.0)/Params.y, dir); 166 | #else 167 | tile_uv = float3(uv, frame_num * totalDir + dir); 168 | #endif 169 | return tile_uv; 170 | } 171 | 172 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_functions.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 06da9c2788af1f04cafe45227db03175 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_lighting.cginc: -------------------------------------------------------------------------------- 1 | /** 2 | * @file sprite_lighting.cginc 3 | * @author Error.mdl 4 | * @date 2019-06-05 5 | * @brief Contains simple lighting functions for use in the directional billboard shader. 6 | */ 7 | 8 | 9 | /** 10 | * @brief get the light color from baked lighting, a directional light, and four vertex lights at the object-space origin 11 | * @return the sum of the lights hitting the object space origin. 12 | */ 13 | 14 | float3 simple_lighting_origin() 15 | { 16 | float3 light; 17 | 18 | //Baked lighting. Taking the length of each of the linear terms of the spherical harmonics polynomial gives 19 | //us close to the maximum baked light value at that point. 20 | light = float3(length(unity_SHAr), length(unity_SHAg), length(unity_SHAb)); 21 | 22 | //Directional light 23 | light += _LightColor0.rgb; 24 | 25 | //Vertex lights 26 | #ifdef VERTEXLIGHT_ON 27 | // Calculate object's center position in world-space (only works if the mesh hasn't been batched!) 28 | float4 worldOrigin = UNITY_MATRIX_M._m03_m13_m23_m33; 29 | 30 | // to light vectors 31 | float4 toLightX = unity_4LightPosX0 - worldOrigin.x; 32 | float4 toLightY = unity_4LightPosY0 - worldOrigin.y; 33 | float4 toLightZ = unity_4LightPosZ0 - worldOrigin.z; 34 | 35 | // squared lengths 36 | float4 lengthSq = 0; 37 | lengthSq += toLightX * toLightX; 38 | lengthSq += toLightY * toLightY; 39 | lengthSq += toLightZ * toLightZ; 40 | 41 | // attenuation 42 | float4 atten = 1.0 / mad(lengthSq, unity_4LightAtten0, 1.0); 43 | 44 | // final color 45 | light += unity_LightColor[0].rgb * atten.x; 46 | light += unity_LightColor[1].rgb * atten.y; 47 | light += unity_LightColor[2].rgb * atten.z; 48 | light += unity_LightColor[3].rgb * atten.w; 49 | 50 | #endif 51 | 52 | 53 | return light; 54 | } 55 | 56 | 57 | /** 58 | * @brief get the light color from baked lighting, a directional light, and four vertex lights at a given position 59 | * @param pos World-space position to calculate the lighting at 60 | * @return the sum of the lights hitting the given postion. 61 | */ 62 | float3 simple_lighting(float3 pos) 63 | { 64 | float3 light; 65 | 66 | //Baked lighting. Taking the length of each of the linear terms of the spherical harmonics polynomial gives 67 | //us close to the maximum baked light value at that point. 68 | light = float3(length(unity_SHAr), length(unity_SHAg), length(unity_SHAb)); 69 | 70 | //Directional light 71 | light += _LightColor0.rgb; 72 | 73 | //Vertex lights 74 | #ifdef VERTEXLIGHT_ON 75 | // to light vectors 76 | float4 toLightX = unity_4LightPosX0 - pos.x; 77 | float4 toLightY = unity_4LightPosY0 - pos.y; 78 | float4 toLightZ = unity_4LightPosZ0 - pos.z; 79 | 80 | // squared lengths 81 | float4 lengthSq = 0; 82 | lengthSq += toLightX * toLightX; 83 | lengthSq += toLightY * toLightY; 84 | lengthSq += toLightZ * toLightZ; 85 | 86 | // attenuation 87 | float4 atten = 1.0 / mad(lengthSq, unity_4LightAtten0, 1.0); 88 | 89 | // final color 90 | light += unity_LightColor[0].rgb * atten.x; 91 | light += unity_LightColor[1].rgb * atten.y; 92 | light += unity_LightColor[2].rgb * atten.z; 93 | light += unity_LightColor[3].rgb * atten.w; 94 | #endif 95 | 96 | 97 | return light; 98 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_lighting.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1d757c18f26db7d45b8c94cbba328312 3 | timeCreated: 1534182762 4 | licenseType: Free 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_opaque_vertfrag.cginc: -------------------------------------------------------------------------------- 1 | struct VertIn 2 | { 3 | float4 pos : POSITION; 4 | float2 uv : TEXCOORD0; 5 | }; 6 | 7 | struct v2f 8 | { 9 | float3 uv : TEXCOORD0; 10 | float4 pos : SV_POSITION; 11 | float3 color : COLOR; 12 | UNITY_FOG_COORDS(1) 13 | }; 14 | 15 | UNITY_DECLARE_TEX2DARRAY(_MainTex); 16 | float4 _Params; 17 | half _alphaClip; 18 | uint _light; 19 | half _frame; 20 | int _Dir; 21 | float4 _Color; 22 | 23 | v2f vert(VertIn v) 24 | { 25 | 26 | v2f o; 27 | 28 | // Get the position in between the two cameras if the viewer is in VR, otherwise get the position of the 29 | // camera. If you don't do this, the sprite will look very stereo-incorrect as it will be oriented toward 30 | // both eyes simultaneously 31 | float4 cameraPos = obj_cam_pos(); 32 | float2 cameraDir = obj_cam_dir(); 33 | float4 pos = rotate_sprite(cameraPos, cameraDir, v.pos); 34 | o.pos = UnityObjectToClipPos(pos); 35 | UNITY_TRANSFER_FOG(o, o.pos); 36 | int dir = sprite_dir(_Dir, cameraPos, cameraDir); 37 | o.uv.z = dir; 38 | o.uv.xy = sprite_sheet_uvs(v.uv, _Params, _frame); 39 | o.color = simple_lighting_origin(); 40 | o.color = _light == 1 ? o.color : float3(1, 1, 1); 41 | 42 | return o; 43 | } 44 | 45 | 46 | 47 | fixed4 frag(v2f i) : SV_Target 48 | { 49 | float4 finalColor = UNITY_SAMPLE_TEX2DARRAY(_MainTex, i.uv) * _Color; 50 | 51 | clip(finalColor.a - _alphaClip); 52 | 53 | finalColor = finalColor*float4(i.color,1); 54 | UNITY_APPLY_FOG(i.fogCoord, finalColor); 55 | return finalColor; 56 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_opaque_vertfrag.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 19f0d58d5d42ff944a03a99fafb58cc5 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_shadowcaster.cginc: -------------------------------------------------------------------------------- 1 | struct VertIn 2 | { 3 | float4 pos : POSITION; 4 | float2 uv : TEXCOORD0; 5 | UNITY_VERTEX_INPUT_INSTANCE_ID 6 | }; 7 | 8 | struct v2f 9 | { 10 | float3 uv : TEXCOORD0; 11 | float4 pos : SV_POSITION; 12 | UNITY_VERTEX_OUTPUT_STEREO 13 | }; 14 | 15 | UNITY_DECLARE_TEX2DARRAY(_MainTex); 16 | float4 _Params; 17 | half _alphaClip; 18 | uint _light; 19 | half _frame; 20 | int _Dir; 21 | float4 _Color; 22 | float _InvRot; 23 | 24 | v2f vert(VertIn v) 25 | { 26 | 27 | v2f o; 28 | UNITY_SETUP_INSTANCE_ID(v); 29 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); 30 | 31 | float4 cameraPos = obj_cam_pos(); 32 | float2 cameraDir = obj_cam_dir(); 33 | float4 pos = rotate_sprite(cameraPos, cameraDir, v.pos); 34 | o.pos = UnityObjectToClipPos(pos); 35 | UNITY_TRANSFER_FOG(o, o.pos); 36 | int dir = sprite_dir(_Dir, cameraPos, cameraDir, _InvRot); 37 | o.uv = sprite_sheet_uvs(v.uv, dir, _Dir, _Params, _frame); 38 | 39 | return o; 40 | } 41 | 42 | 43 | 44 | fixed4 frag(v2f i) : SV_Target 45 | { 46 | float4 finalColor = UNITY_SAMPLE_TEX2DARRAY(_MainTex, i.uv) * _Color; 47 | 48 | clip(finalColor.a - _alphaClip); 49 | 50 | return finalColor; 51 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_shadowcaster.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 55ab67699b62f8f4e94d72ba7d25dc1c 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_shadowcaster_upright.cginc: -------------------------------------------------------------------------------- 1 | struct VertIn 2 | { 3 | float4 pos : POSITION; 4 | float2 uv : TEXCOORD0; 5 | }; 6 | 7 | struct v2f 8 | { 9 | float3 uv : TEXCOORD0; 10 | float4 pos : SV_POSITION; 11 | }; 12 | 13 | UNITY_DECLARE_TEX2DARRAY(_MainTex); 14 | float4 _Params; 15 | half _alphaClip; 16 | uint _light; 17 | half _frame; 18 | int _Dir; 19 | float4 _Color; 20 | float4 _Scale; 21 | float _InvRot; 22 | 23 | v2f vert(VertIn v) 24 | { 25 | 26 | v2f o; 27 | 28 | // Get the position in between the two cameras if the viewer is in VR, otherwise get the position of the 29 | // camera. If you don't do this, the sprite will look very stereo-incorrect as it will be oriented toward 30 | // both eyes simultaneously 31 | float4 cameraPos = wrld_cam_pos(); 32 | float2 cameraDir = obj_cam_dir(); 33 | float4 oCenter = mul(unity_ObjectToWorld, float4(0, 0, 0, 1)); 34 | float3 forward = mul(unity_ObjectToWorld, float4(0, 0, 1, 0)).xyz; 35 | v.pos.xyz *= length(mul(unity_ObjectToWorld, float4(0, 0, 1, 0)).xyz); 36 | 37 | cameraPos.xyz = oCenter - cameraPos.xyz; 38 | //float3 ortho = normalize(cross(float3(0, 1, 0), velocity)); 39 | float3 ortho = normalize(-forward); 40 | float4 cameraPos2 = rotate_camera(float4(cameraPos.xyz, 1), ortho); 41 | cameraPos2.x = -cameraPos2.x; 42 | //v.pos.xyz -= oCenter.xyz; 43 | float4 pos = rotate_sprite(cameraPos, cameraDir, v.pos); 44 | pos.xyz += oCenter.xyz; 45 | pos = mul(unity_WorldToObject, pos); 46 | o.pos = UnityObjectToClipPos(pos); 47 | 48 | int dir = sprite_dir(_Dir, cameraPos2, cameraDir, _InvRot); 49 | //o.uv.z = dir; 50 | o.uv = sprite_sheet_uvs(v.uv, dir, _Dir, _Params, _frame); 51 | return o; 52 | } 53 | 54 | 55 | 56 | fixed4 frag(v2f i) : SV_Target 57 | { 58 | float4 finalColor = UNITY_SAMPLE_TEX2DARRAY(_MainTex, i.uv) * _Color; 59 | 60 | clip(finalColor.a - _alphaClip); 61 | 62 | return finalColor; 63 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_shadowcaster_upright.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84a7cde724ef6b64e96ba677535bb030 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_structs.cginc: -------------------------------------------------------------------------------- 1 | /** 2 | * @file sprite_structs.cginc 3 | * @author Error.mdl 4 | * @date 2019-06-05 5 | * @brief Defines the input structures for the vertex and fragment programs used by the object variants of the 6 | * directional billboard shaders 7 | */ 8 | 9 | struct VertIn 10 | { 11 | float4 pos : POSITION; 12 | float2 uv : TEXCOORD0; 13 | UNITY_VERTEX_INPUT_INSTANCE_ID 14 | }; 15 | 16 | struct v2f 17 | { 18 | float3 uv : TEXCOORD0; 19 | float4 pos : SV_POSITION; 20 | float3 color : COLOR; 21 | UNITY_FOG_COORDS(1) 22 | UNITY_VERTEX_OUTPUT_STEREO 23 | }; -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_structs.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a2f8250e839f3f45a24212720e2118d 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_vert.cginc: -------------------------------------------------------------------------------- 1 | /** 2 | * @file sprite_vert.cginc 3 | * @author Error.mdl 4 | * @date 2019-06-05 5 | * @brief Vertex function for directional sprites shared between the opaque and transparent variants 6 | */ 7 | 8 | v2f vert(VertIn v) 9 | { 10 | v2f o; 11 | UNITY_SETUP_INSTANCE_ID(v); 12 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); 13 | 14 | float4 cameraPos = obj_cam_pos(); 15 | float2 cameraDir = obj_cam_dir(); 16 | float4 pos = rotate_sprite(cameraPos, cameraDir, v.pos); 17 | o.pos = UnityObjectToClipPos(pos); 18 | UNITY_TRANSFER_FOG(o, o.pos); 19 | int dir = sprite_dir(_Dir, cameraPos, cameraDir, _InvRot); 20 | //o.uv.z = dir; 21 | o.uv = sprite_sheet_uvs(v.uv, dir, _Dir, _Params, _frame); 22 | o.color = simple_lighting_origin(); 23 | o.color = _light == 1 ? o.color : float3(1, 1, 1); 24 | 25 | return o; 26 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_vert.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ca94cbfd82ab3d94e91b58f6cbb96f55 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_vert_upright.cginc: -------------------------------------------------------------------------------- 1 | v2f vert(VertIn v) 2 | { 3 | 4 | v2f o; 5 | UNITY_SETUP_INSTANCE_ID(v); 6 | UNITY_TRANSFER_INSTANCE_ID(v, o); 7 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); 8 | 9 | // Get the position in between the two cameras if the viewer is in VR, otherwise get the position of the 10 | // camera. If you don't do this, the sprite will look very stereo-incorrect as it will be oriented toward 11 | // both eyes simultaneously 12 | float4 cameraPos = wrld_cam_pos(); 13 | float2 cameraDir = obj_cam_dir(); 14 | float4 oCenter = mul(unity_ObjectToWorld, float4(0, 0, 0, 1)); 15 | float3 forward = mul(unity_ObjectToWorld, float4(0, 0, 1, 0)).xyz; 16 | //v.pos.xyz *= _Scale.xyz; 17 | v.pos.xyz *= length(mul(unity_ObjectToWorld, float4(0, 0, 1, 0)).xyz); 18 | 19 | cameraPos.xyz = oCenter - cameraPos.xyz; 20 | //float3 ortho = normalize(cross(float3(0, 1, 0), velocity)); 21 | float3 ortho = normalize(-forward); 22 | float4 cameraPos2 = rotate_camera(float4(cameraPos.xyz, 1), ortho); 23 | cameraPos2.x = -cameraPos2.x; 24 | //v.pos.xyz -= oCenter.xyz; 25 | float4 pos = rotate_sprite(cameraPos, cameraDir, v.pos); 26 | pos.xyz += oCenter.xyz; 27 | pos = mul(unity_WorldToObject, pos); 28 | o.pos = UnityObjectToClipPos(pos); 29 | UNITY_TRANSFER_FOG(o, o.pos); 30 | int dir = sprite_dir(_Dir, cameraPos2, cameraDir, _InvRot); 31 | //o.uv.z = dir; 32 | o.uv = sprite_sheet_uvs(v.uv, dir, _Dir, _Params, _frame); 33 | o.color = simple_lighting_origin(); 34 | o.color = _light == 1 ? o.color : float3(1, 1, 1); 35 | 36 | return o; 37 | } -------------------------------------------------------------------------------- /retrosprites/shaders/cginc/sprite_vert_upright.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e42a20432fc998c4f95ef32a0748b491 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_cutout.shader: -------------------------------------------------------------------------------- 1 | // Upgrade NOTE: replaced '_CameraToWorld' with 'unity_CameraToWorld' 2 | // Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject' 3 | 4 | // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' 5 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 6 | 7 | 8 | Shader "Error.mdl/Retro Sprites v2/Sprite Cutout" 9 | { 10 | Properties 11 | { 12 | [NoScaleOffset] _MainTex("Texture Array", 2DArray) = "white" {} 13 | [HDR] _Color("Color", color) = (1,1,1,1) 14 | [Toggle(_)] _light("Enable Lighting?", int) = 1 15 | _alphaClip("Alpha Clipping Threshold", float) = 0.1 16 | _Dir("Number of Viewing Angles", int) = 8 17 | [ToggleUI] _InvRot("Invert Rotation Direction", float) = 0 18 | _frame("Manual Frame Number", float) = 0.0 19 | [Header(Columns (X) Rows (Y) Total Frames (Z) Framerate (W))] 20 | _Params("Parameters", Vector) = (1,1,1,0) 21 | 22 | } 23 | SubShader 24 | { 25 | Tags { "Queue"="Alphatest" "RenderType"="Opaque" "DisableBatching"="True" "PreviewType"="Plane"} 26 | 27 | LOD 100 28 | Cull off 29 | Zwrite On 30 | AlphaToMask [_A2C] 31 | 32 | Pass { 33 | Tags {"LightMode" = "ForwardBase"} 34 | 35 | CGPROGRAM 36 | #pragma vertex vert 37 | #pragma fragment frag 38 | #pragma multi_compile_fog 39 | #pragma multi_compile _ VERTEXLIGHT_ON 40 | #pragma shader_feature_local SPRITE_SHEET 41 | #pragma multi_compile_instancing 42 | 43 | #include "UnityCG.cginc" 44 | #include "Lighting.cginc" 45 | #include "UnityLightingCommon.cginc" 46 | #include "cginc/sprite_lighting.cginc" 47 | #include "cginc/sprite_functions.cginc" 48 | #include "cginc/sprite_structs.cginc" 49 | #define CUTOUT_ON 50 | 51 | UNITY_DECLARE_TEX2DARRAY(_MainTex); 52 | float4 _Params; 53 | half _alphaClip; 54 | uint _light; 55 | half _frame; 56 | int _Dir; 57 | float4 _Color; 58 | float _InvRot; 59 | 60 | #include "cginc/sprite_vert.cginc" 61 | #include "cginc/sprite_frag_cutout.cginc" 62 | 63 | ENDCG 64 | } 65 | 66 | } 67 | CustomEditor "RetrospriteInspector" 68 | } -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_cutout.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fa4f6a98001a939479cd99067d4a4ff2 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_cutout_particle.shader: -------------------------------------------------------------------------------- 1 | // Upgrade NOTE: replaced '_CameraToWorld' with 'unity_CameraToWorld' 2 | // Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject' 3 | 4 | // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' 5 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 6 | 7 | 8 | Shader "Error.mdl/Retro Sprites v2/Particle Cutout" 9 | { 10 | Properties 11 | { 12 | [NoScaleOffset] _MainTex("Texture Array", 2DArray) = "white" {} 13 | [HDR] _Color("Color", color) = (1,1,1,1) 14 | [Toggle(_)] _light("Enable Lighting?", int) = 1 15 | [Toggle(_)] _A2C("Alpha To Coverage", int) = 0 16 | _alphaClip("Alpha Clipping Threshold", float) = 0.1 17 | [ToggleUI] _InvRot("Invert Rotation Direction", float) = 0 18 | _frame("Manual Frame Number", float) = 0.0 19 | _Dir("Number of Viewing Angles", int) = 8 20 | _Params("Parameters", Vector) = (1,1,1,0) 21 | } 22 | SubShader 23 | { 24 | Tags { "Queue"="Alphatest" "RenderType"="Opaque" "PreviewType" = "Plane"} 25 | 26 | LOD 100 27 | 28 | Cull off 29 | Zwrite On 30 | AlphaToMask [_A2C] 31 | 32 | Pass { 33 | Tags {"LightMode" = "ForwardBase"} 34 | Stencil { 35 | Ref 13 36 | Comp NotEqual 37 | Pass Keep 38 | } 39 | CGPROGRAM 40 | #pragma vertex vert 41 | #pragma fragment frag 42 | #pragma multi_compile_fog 43 | #pragma multi_compile _ VERTEXLIGHT_ON 44 | #pragma shader_feature_local SPRITE_SHEET 45 | #pragma multi_compile_instancing 46 | #include "UnityCG.cginc" 47 | #include "Lighting.cginc" 48 | #include "UnityLightingCommon.cginc" 49 | #include "cginc/sprite_lighting.cginc" 50 | #include "cginc/sprite_functions.cginc" 51 | #include "cginc/particle_structs.cginc" 52 | #define CUTOUT_ON 53 | 54 | UNITY_DECLARE_TEX2DARRAY(_MainTex); 55 | float4 _Params; 56 | half _alphaClip; 57 | uint _light; 58 | half _frame; 59 | int _Dir; 60 | float4 _Color; 61 | float _InvRot; 62 | 63 | #include "cginc/particle_vert.cginc" 64 | #include "cginc/particle_frag_cutout.cginc" 65 | ENDCG 66 | } 67 | } 68 | CustomEditor "RetrospriteInspector" 69 | } -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_cutout_particle.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f70302bb93f39b446bbe3be6aaa528a4 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_cutout_shadowcaster.shader: -------------------------------------------------------------------------------- 1 | // Upgrade NOTE: replaced '_CameraToWorld' with 'unity_CameraToWorld' 2 | // Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject' 3 | 4 | // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' 5 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 6 | 7 | 8 | Shader "Error.mdl/Retro Sprites v2/Sprite Cutout Shadowcaster" 9 | { 10 | Properties 11 | { 12 | [NoScaleOffset] _MainTex("Texture Array", 2DArray) = "white" {} 13 | [HDR] _Color("Color", color) = (1,1,1,1) 14 | [ToggleUI] _light("Enable Lighting?", int) = 1 15 | _alphaClip("Alpha Clipping Threshold", float) = 0.1 16 | _Dir("Number of Viewing Angles", int) = 8 17 | [ToggleUI] _InvRot("Invert Rotation Direction", float) = 0 18 | _frame("Manual Frame Number", float) = 0.0 19 | _Params("Columns (X) Rows (Y) Total Frames (Z) Framerate (W)", Vector) = (1,1,1,0) 20 | 21 | } 22 | SubShader 23 | { 24 | Tags { "Queue"="Alphatest" "RenderType"="Opaque" "DisableBatching"="True" "PreviewType" = "Plane"} 25 | 26 | LOD 100 27 | 28 | Cull off 29 | Zwrite On 30 | AlphaToMask [_A2C] 31 | 32 | Pass { 33 | Tags {"LightMode" = "ForwardBase"} 34 | 35 | CGPROGRAM 36 | #pragma vertex vert 37 | #pragma fragment frag 38 | #pragma multi_compile _ VERTEXLIGHT_ON 39 | #pragma shader_feature_local SPRITE_SHEET 40 | #pragma multi_compile_instancing 41 | #include "UnityCG.cginc" 42 | #include "Lighting.cginc" 43 | #include "UnityLightingCommon.cginc" 44 | #include "cginc/sprite_lighting.cginc" 45 | #include "cginc/sprite_functions.cginc" 46 | #include "cginc/sprite_structs.cginc" 47 | #define CUTOUT_ON 48 | 49 | UNITY_DECLARE_TEX2DARRAY(_MainTex); 50 | float4 _Params; 51 | half _alphaClip; 52 | uint _light; 53 | half _frame; 54 | int _Dir; 55 | float4 _Color; 56 | float _InvRot; 57 | 58 | #include "cginc/sprite_vert.cginc" 59 | #include "cginc/sprite_frag_cutout.cginc" 60 | ENDCG 61 | 62 | } 63 | 64 | 65 | 66 | Pass { 67 | Tags {"LightMode" = "Shadowcaster"} 68 | 69 | CGPROGRAM 70 | #pragma vertex vert 71 | #pragma fragment frag 72 | #pragma multi_compile_instancing 73 | #pragma shader_feature_local SPRITE_SHEET 74 | #include "UnityCG.cginc" 75 | #include "cginc/sprite_functions.cginc" 76 | #include "cginc/sprite_shadowcaster.cginc" 77 | 78 | ENDCG 79 | } 80 | } 81 | CustomEditor "RetrospriteInspector" 82 | } -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_cutout_shadowcaster.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0cfa1b76935430c45abab1927164df8a 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_cutout_shadowcaster_upright.shader: -------------------------------------------------------------------------------- 1 | // Upgrade NOTE: replaced '_CameraToWorld' with 'unity_CameraToWorld' 2 | // Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject' 3 | 4 | // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' 5 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 6 | 7 | 8 | Shader "Error.mdl/Retro Sprites v2/Sprite Cutout Shadow Upright" 9 | { 10 | Properties 11 | { 12 | [NoScaleOffset] _MainTex("Texture Array", 2DArray) = "white" {} 13 | [HDR] _Color("Color", color) = (1,1,1,1) 14 | [Toggle(_)] _light("Enable Lighting?", int) = 1 15 | [Toggle(_)] _A2C("Alpha To Coverage", int) = 0 16 | _alphaClip("Alpha Clipping Threshold", float) = 0.1 17 | _Dir("Number of Viewing Angles", int) = 8 18 | [ToggleUI] _InvRot("Invert Rotation Direction", float) = 0 19 | _frame("Manual Frame Number", float) = 0.0 20 | [Header(Columns (X) Rows (Y) Total Frames (Z) Framerate (W))] 21 | _Params("Parameters", Vector) = (1,1,1,0) 22 | _Scale("Scale", Vector) = (1,1,1,0) 23 | 24 | } 25 | SubShader 26 | { 27 | Tags { "Queue"="Alphatest" "RenderType"="Opaque" "DisableBatching"="True" "PreviewType" = "Plane"} 28 | 29 | LOD 100 30 | 31 | Cull off 32 | Zwrite On 33 | AlphaToMask [_A2C] 34 | 35 | Pass { 36 | Tags {"LightMode" = "ForwardBase"} 37 | 38 | CGPROGRAM 39 | #pragma vertex vert 40 | #pragma fragment frag 41 | #pragma multi_compile_fog 42 | #pragma shader_feature_local SPRITE_SHEET 43 | #pragma multi_compile _ VERTEXLIGHT_ON 44 | #include "UnityCG.cginc" 45 | #include "Lighting.cginc" 46 | #include "UnityLightingCommon.cginc" 47 | #include "cginc/sprite_lighting.cginc" 48 | #include "cginc/sprite_functions.cginc" 49 | #include "cginc/sprite_structs.cginc" 50 | #define CUTOUT_ON 51 | 52 | UNITY_DECLARE_TEX2DARRAY(_MainTex); 53 | float4 _Params; 54 | half _alphaClip; 55 | uint _light; 56 | half _frame; 57 | int _Dir; 58 | float4 _Color; 59 | float4 _Scale; 60 | float _InvRot; 61 | 62 | #include "cginc/sprite_vert_upright.cginc" 63 | #include "cginc/sprite_frag_cutout.cginc" 64 | ENDCG 65 | 66 | } 67 | 68 | 69 | 70 | Pass { 71 | Tags {"LightMode" = "Shadowcaster"} 72 | 73 | CGPROGRAM 74 | #pragma vertex vert 75 | #pragma fragment frag 76 | #include "UnityCG.cginc" 77 | #include "cginc/sprite_functions.cginc" 78 | #include "cginc/sprite_shadowcaster_upright.cginc" 79 | 80 | ENDCG 81 | } 82 | } 83 | CustomEditor "RetrospriteInspector" 84 | } -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_cutout_shadowcaster_upright.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8a5c63506bb769c448fa1aa43da64fc6 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_transparent.shader: -------------------------------------------------------------------------------- 1 | // Upgrade NOTE: replaced '_CameraToWorld' with 'unity_CameraToWorld' 2 | // Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject' 3 | 4 | // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' 5 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 6 | 7 | 8 | Shader "Error.mdl/Retro Sprites v2/Sprite Transparent" 9 | { 10 | Properties 11 | { 12 | [NoScaleOffset] _MainTex("Texture Array", 2DArray) = "white" {} 13 | [HDR] _Color("Color", color) = (1,1,1,1) 14 | [Toggle(_)] _light("Enable Lighting?", int) = 1 15 | _Dir("Number of Viewing Angles", int) = 8 16 | [ToggleUI] _InvRot("Invert Rotation Direction", float) = 0 17 | _frame("Manual Frame Number", float) = 0.0 18 | [Header(Columns (X) Rows (Y) Total Frames (Z) Framerate (W))] 19 | _Params("Parameters", Vector) = (1,1,1,0) 20 | 21 | } 22 | SubShader 23 | { 24 | Tags { "Queue"="Transparent" "RenderType"="Transparent" "DisableBatching"="True" "PreviewType" = "Plane"} 25 | 26 | LOD 100 27 | 28 | Cull off 29 | ZWrite Off 30 | Blend SrcAlpha OneMinusSrcAlpha 31 | 32 | Pass { 33 | Tags {"LightMode" = "ForwardBase"} 34 | 35 | 36 | CGPROGRAM 37 | #pragma vertex vert 38 | #pragma fragment frag 39 | #pragma multi_compile_fog 40 | #pragma shader_feature_local SPRITE_SHEET 41 | #pragma multi_compile _ VERTEXLIGHT_ON 42 | #include "UnityCG.cginc" 43 | #include "Lighting.cginc" 44 | #include "UnityLightingCommon.cginc" 45 | #include "cginc/sprite_lighting.cginc" 46 | #include "cginc/sprite_functions.cginc" 47 | #include "cginc/sprite_structs.cginc" 48 | 49 | UNITY_DECLARE_TEX2DARRAY(_MainTex); 50 | float4 _Params; 51 | uint _light; 52 | half _frame; 53 | int _Dir; 54 | float4 _Color; 55 | float _InvRot; 56 | 57 | #include "cginc/sprite_vert.cginc" 58 | #include "cginc/sprite_frag.cginc" 59 | ENDCG 60 | } 61 | } 62 | CustomEditor "RetrospriteInspector" 63 | } -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_transparent.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f51802466f069a4aa799573d66f1f59 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_transparent_particle.shader: -------------------------------------------------------------------------------- 1 | // Upgrade NOTE: replaced '_CameraToWorld' with 'unity_CameraToWorld' 2 | // Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject' 3 | 4 | // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' 5 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 6 | 7 | 8 | Shader "Error.mdl/Retro Sprites v2/Particle Transparent" 9 | { 10 | Properties 11 | { 12 | [NoScaleOffset] _MainTex("Texture Array", 2DArray) = "white" {} 13 | [HDR] _Color("Color", color) = (1,1,1,1) 14 | [Toggle(_)] _light("Enable Lighting?", int) = 1 15 | _Dir("Number of Viewing Angles", int) = 8 16 | [ToggleUI] _InvRot("Invert Rotation Direction", float) = 0 17 | _frame("Manual Frame Number", float) = 0.0 18 | _Params("Parameters", Vector) = (1,1,1,0) 19 | } 20 | SubShader 21 | { 22 | Tags { "Queue"="Transparent" "RenderType"="Transparent" "PreviewType" = "Plane"} 23 | 24 | LOD 100 25 | 26 | Cull off 27 | ZWrite Off 28 | Blend SrcAlpha OneMinusSrcAlpha 29 | 30 | Pass { 31 | Tags {"LightMode" = "ForwardBase"} 32 | 33 | CGPROGRAM 34 | #pragma vertex vert 35 | #pragma fragment frag 36 | #pragma multi_compile_fog 37 | #pragma shader_feature_local SPRITE_SHEET 38 | #pragma multi_compile _ VERTEXLIGHT_ON 39 | #include "UnityCG.cginc" 40 | #include "Lighting.cginc" 41 | #include "UnityLightingCommon.cginc" 42 | #include "cginc/sprite_lighting.cginc" 43 | #include "cginc/sprite_functions.cginc" 44 | #include "cginc/particle_structs.cginc" 45 | 46 | UNITY_DECLARE_TEX2DARRAY(_MainTex); 47 | float4 _Params; 48 | uint _light; 49 | half _frame; 50 | int _Dir; 51 | float4 _Color; 52 | float _InvRot; 53 | 54 | #include "cginc/particle_vert.cginc" 55 | #include "cginc/particle_frag.cginc" 56 | ENDCG 57 | } 58 | } 59 | CustomEditor "RetrospriteInspector" 60 | } -------------------------------------------------------------------------------- /retrosprites/shaders/sprite_transparent_particle.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 373ea3365093fc54bbd1f0a570ca4dc2 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | --------------------------------------------------------------------------------