public static TexturePackerAtlas Create(Texture2D texture, int regionWidth, int regionHeight, int maxRegionCount = int.MaxValue, int margin = 0, int spacing = 0) { var textureAtlas = new TexturePackerAtlas(texture); var count = 0; var width = texture.Width - margin; var height = texture.Height - margin; var xIncrement = regionWidth + spacing; var yIncrement = regionHeight + spacing; for (var y = margin; y < height; y += yIncrement) { for (var x = margin; x < width; x += xIncrement) { var regionName = string.Format("{0}{1}", texture.Name ?? "region", count); textureAtlas.CreateRegion(regionName, x, y, regionWidth, regionHeight); count++; if (count >= maxRegionCount) { return(textureAtlas); } } } return(textureAtlas); }
public static TexturePackerAtlas create( Texture2D texture, int regionWidth, int regionHeight, int maxRegionCount = int.MaxValue, int margin = 0, int spacing = 0 ) { var textureAtlas = new TexturePackerAtlas( texture ); var count = 0; var width = texture.Width - margin; var height = texture.Height - margin; var xIncrement = regionWidth + spacing; var yIncrement = regionHeight + spacing; for( var y = margin; y < height; y += yIncrement ) { for( var x = margin; x < width; x += xIncrement ) { var regionName = string.Format( "{0}{1}", texture.Name ?? "region", count ); textureAtlas.createRegion( regionName, x, y, regionWidth, regionHeight ); count++; if( count >= maxRegionCount ) return textureAtlas; } } return textureAtlas; }