1
0
mirror of https://github.com/Memorix101/UnityXNA/ synced 2024-12-30 15:25:35 +01:00
UnityXNA/Assets/Scripts/DrawQueue.cs

45 lines
1.1 KiB
C#
Raw Permalink Normal View History

using System;
using System.Collections.Generic;
public class DrawQueue
{
List<DrawSpriteCall> spriteQueue = new List<DrawSpriteCall>();
DrawSpriteCall[] lastSpriteQueue = new DrawSpriteCall[0];
List<DrawStringCall> stringQueue = new List<DrawStringCall>();
DrawStringCall[] lastStringQueue = new DrawStringCall[0];
internal DrawSpriteCall[] LastSpriteQueue
{
get { return lastSpriteQueue; }
}
internal DrawStringCall[] LastStringQueue
{
get { return lastStringQueue; }
}
public DrawQueue ()
{
}
public void Clear()
{
lastSpriteQueue = new DrawSpriteCall[spriteQueue.Count];
spriteQueue.CopyTo(lastSpriteQueue);
spriteQueue.Clear();
lastStringQueue = new DrawStringCall[stringQueue.Count];
stringQueue.CopyTo(lastStringQueue);
stringQueue.Clear();
}
internal void EnqueueSprite(DrawSpriteCall drawSpriteCall)
{
spriteQueue.Add(drawSpriteCall);
}
internal void EnqueueString(DrawStringCall drawStringQueue)
{
stringQueue.Add(drawStringQueue);
}
}