コード例 #1
0
 public static void LoadImagesFromResources(string path, ref List <SpriteInfo> newSprites)
 {
     string[] imagesFiles = FileUtils.GetAllFilesEmbeddedAtFolder(path, ".png");
     TextureAtlasUtils.ParseBorderDescriptors(KlyteResourceLoader.LoadResourceStringLines($"{path}.{BORDER_FILENAME}"), out Dictionary <string, Tuple <RectOffset, bool> > borderDescriptor);
     foreach (string file in imagesFiles)
     {
         Texture2D tex = KlyteResourceLoader.LoadTexture($"{path}.{file}");
         if (tex != null)
         {
             newSprites.AddRange(TextureAtlasUtils.CreateSpriteInfo(borderDescriptor, file, tex));
         }
     }
 }
コード例 #2
0
        public static void ParseImageIntoDefaultTextureAtlas(Type enumType, string resourceName, int width, int height, ref List <SpriteInfo> sprites)
        {
            Array     spriteValues = Enum.GetValues(enumType);
            Texture2D image        = KlyteResourceLoader.LoadTexture(resourceName);

            for (int i = 0; i < spriteValues.Length && i * width < image.width; i++)
            {
                var textureQuad = new Texture2D(width, height, TextureFormat.RGBA32, false);
                textureQuad.SetPixels(image.GetPixels(i * width, 0, width, height));
                sprites.Add(new SpriteInfo()
                {
                    texture = textureQuad,
                    name    = KlyteResourceLoader.GetDefaultSpriteNameFor(spriteValues.GetValue(i) as Enum)
                });
            }
        }