Пример #1
0
 void Draw(PGQuad *quads, int count)
 {
     if (drawX == int.MaxValue)
     {
         lastQuads = new PGQuad[count];
         for (int i = 0; i < lastQuads.Length; i++)
         {
             lastQuads[i] = quads[i];
         }
         return;
     }
     for (int i = 0; i < count; i++)
     {
         var q = quads[i];
         q.Dest.X += drawX;
         q.Dest.Y += drawY;
         if (q.Texture == (PGTexture *)0)
         {
             ren.FillRectangle(q.Dest, q.Color);
         }
         else
         {
             var t = textures[(int)q.Texture->UserData];
             ren.Draw(t, q.Source, q.Dest, q.Color);
         }
     }
 }
Пример #2
0
 void Draw(PGQuad *quads, PGTexture *texture, int count)
 {
     if (texture == (PGTexture *)0)
     {
         for (int i = 0; i < count; i++)
         {
             var q = quads[i];
             q.Dest.X += drawX;
             q.Dest.Y += drawY;
             ren.FillRectangle(q.Dest, q.Color);
         }
     }
     else
     {
         var t = textures[(int)texture->UserData];
         for (int i = 0; i < count; i++)
         {
             var q = quads[i];
             q.Dest.X += drawX;
             q.Dest.Y += drawY;
             ren.Draw(t, q.Source, q.Dest, q.Color);
         }
     }
 }