示例#1
0
 /// <summary>
 /// 通过skin把所有的texture打包到一个图集
 /// </summary>
 /// <returns>The repacked from skin.</returns>
 /// <param name="skin">Skin.</param>
 /// <param name="newName">New name.</param>
 /// <param name="shader">Shader.</param>
 /// <param name="outputMaterial">Output material.</param>
 /// <param name="outputTexture">Output texture.</param>
 /// <param name="maxAtlasSize">Max atlas size.</param>
 /// <param name="padding">Padding.</param>
 /// <param name="textureFormat">Texture format.</param>
 /// <param name="mipmaps">If set to <c>true</c> mipmaps.</param>
 /// <param name="materialPropertySource">Material property source.</param>
 /// <param name="clearCache">If set to <c>true</c> clear cache.</param>
 private void GetRepackedFromSkin(CombineTextureData combineTextureData, Skin skin, string newName, Shader shader, int maxAtlasSize = SpineConstValue.smallAtlasSize, int padding = SpineConstValue.atlasPadding, TextureFormat textureFormat = SpineConstValue.textureFormat, bool mipmaps = SpineConstValue.atlasMipMaps, Material materialPropertySource = null, bool clearCache = SpineConstValue.atlasClearCache)
 {
     //用CPU合并图集
     //return AtlasUtilities.GetRepackedSkin(skin, newName, shader, out outputMaterial, out outputTexture);
     //用GPU合并图集
     SpineChangeCommonTools.GetSpineRepackedSkin(combineTextureData, skin, newName, shader, maxAtlasSize, textureFormat, mipmaps, materialPropertySource, clearCache);
 }
示例#2
0
        /// <summary>
        /// 拆解图集
        /// </summary>
        /// <returns>The textures sprite dic.</returns>
        /// <param name="texture">Texture.</param>
        /// <param name="rectDic">Rect dic.</param>
        public static Dictionary <string, Sprite> GetTexturesSpriteDic(Texture2D texture, Dictionary <string, Rect> rectDic)
        {
            Rect   rect;
            Sprite sprite;
            Dictionary <string, Sprite> spriteNameDic = new Dictionary <string, Sprite> ();

            foreach (KeyValuePair <string, Rect> keys in rectDic)
            {
                rect   = SpineChangeCommonTools.GetTextureRectByUVRect(keys.Value, texture.width, texture.height);
                sprite = Sprite.Create(texture, rect, Vector2.zero);
                spriteNameDic.Add(keys.Key, sprite);
            }
            return(spriteNameDic);
        }