Пример #1
0
        public static SpriteDrawable CreateSprite(Surface surface, Vector2D offset)
        {
            Vector2D[] vertexes = new Vector2D[4];
            vertexes[0] = -offset;
            vertexes[1] = new Vector2D(-offset.X, surface.Height - offset.Y);
            vertexes[2] = new Vector2D(surface.Width - offset.X, surface.Height - offset.Y);
            vertexes[3] = new Vector2D(surface.Width - offset.X, -offset.Y);

            Scalar xScale = surface.Width / (Scalar)TextureHelper.GetPower(surface.Width);
            Scalar yScale = surface.Height / (Scalar)TextureHelper.GetPower(surface.Height);

            Vector2D[] coordinates = new Vector2D[4];
            coordinates[1] = new Vector2D(0, 0);
            coordinates[0] = new Vector2D(0, yScale);
            coordinates[3] = new Vector2D(xScale, yScale);
            coordinates[2] = new Vector2D(xScale, 0);
            return(new SpriteDrawable(surface, vertexes, coordinates));
        }
Пример #2
0
        public static BumpmapSpriteDrawable CreateSprite(
            Surface surface, Surface bumpmap, bool xInverted, bool yInverted,
            Vector2D offset, Light light)
        {
            Vector2D[] vertexes = new Vector2D[4];
            vertexes[0] = -offset;
            vertexes[1] = new Vector2D(-offset.X, surface.Height - offset.Y);
            vertexes[2] = new Vector2D(surface.Width - offset.X, surface.Height - offset.Y);
            vertexes[3] = new Vector2D(surface.Width - offset.X, -offset.Y);

            Scalar xScale = surface.Width / (Scalar)TextureHelper.GetPower(surface.Width);
            Scalar yScale = surface.Height / (Scalar)TextureHelper.GetPower(surface.Height);

            Vector2D[] coordinates = new Vector2D[4];
            coordinates[1] = new Vector2D(0, 0);
            coordinates[0] = new Vector2D(0, yScale);
            coordinates[3] = new Vector2D(xScale, yScale);
            coordinates[2] = new Vector2D(xScale, 0);
            return(new BumpmapSpriteDrawable(surface, bumpmap, vertexes, coordinates, true, xInverted, yInverted, light));
        }
Пример #3
0
 public void Buffer(int refresh)
 {
     this.refresh   = refresh;
     this.textureID = TextureHelper.LoadTexture2D(surface, flip, options);
 }