Beispiel #1
0
        private SpriteSheet1D(Texture2D texture, int count, SpriteSheetOrientation orientation)
        {
            Count       = count;
            Orientation = orientation;

            var size = new Vector2(texture.Width, texture.Height);

            switch (orientation)
            {
            case SpriteSheetOrientation.Horizontal:
                UnitWidth  = size.X / count;
                UnitHeight = size.Y;
                break;

            case SpriteSheetOrientation.Vertical:
                UnitWidth  = size.X;
                UnitHeight = size.Y / count;
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(orientation), orientation, null);
            }

            _texture = texture;
        }
Beispiel #2
0
 private SpriteSheet2D(Texture2D texture, float unitWidth, float unitHeight, int stride, int arrayCount, SpriteSheetOrientation orientation)
 {
     Stride      = stride;
     Orientation = orientation;
     UnitWidth   = unitWidth;
     UnitHeight  = unitHeight;
     ArrayCount  = arrayCount;
     _texture    = texture;
 }
Beispiel #3
0
        public static SpriteSheet2D LoadSpriteSheet2D([NotNull] GraphicsDevice graphics, [NotNull] Bitmap bitmap, [NotNull] ImageFormat format, float unitWidth, float unitHeight, int stride, int arrayCount, SpriteSheetOrientation orientation)
        {
            var texture = LoadTexture(graphics, bitmap, format);

            return(SpriteSheet2D.Wrap(texture, unitWidth, unitHeight, stride, arrayCount, orientation));
        }
Beispiel #4
0
        public static SpriteSheet1D LoadSpriteSheet1D([NotNull] GraphicsDevice graphics, [NotNull] Bitmap bitmap, [NotNull] ImageFormat format, int count, SpriteSheetOrientation orientation)
        {
            var texture = LoadTexture(graphics, bitmap, format);

            return(SpriteSheet1D.Wrap(texture, count, orientation));
        }
Beispiel #5
0
        public static SpriteSheet1D LoadSpriteSheet1D([NotNull] GraphicsDevice graphics, [NotNull] string filePath, int count, SpriteSheetOrientation orientation)
        {
            var texture = LoadTexture(graphics, filePath);

            return(SpriteSheet1D.Wrap(texture, count, orientation));
        }
Beispiel #6
0
 public static SpriteSheet2D Wrap(Texture2D texture, float unitWidth, float unitHeight, int stride, int arrayCount, SpriteSheetOrientation orientation)
 {
     return(new SpriteSheet2D(texture, unitWidth, unitHeight, stride, arrayCount, orientation));
 }
Beispiel #7
0
 public static SpriteSheet1D Wrap(Texture2D texture, int count, SpriteSheetOrientation orientation)
 {
     return(new SpriteSheet1D(texture, count, orientation));
 }