Rasagar/Library/PackageCache/com.unity.2d.sprite/Editor/Interface/IGL.cs
2024-08-26 23:07:20 +03:00

65 lines
1.2 KiB
C#

namespace UnityEngine.U2D.Sprites
{
internal interface IGL
{
void PushMatrix();
void PopMatrix();
void MultMatrix(Matrix4x4 m);
void Begin(int mode);
void End();
void Color(Color c);
void Vertex(Vector3 v);
}
internal class GLSystem : IGL
{
static IGL m_GLSystem;
internal static void SetSystem(IGL system)
{
m_GLSystem = system;
}
internal static IGL GetSystem()
{
if (m_GLSystem == null)
m_GLSystem = new GLSystem();
return m_GLSystem;
}
public void PushMatrix()
{
GL.PushMatrix();
}
public void PopMatrix()
{
GL.PopMatrix();
}
public void MultMatrix(Matrix4x4 m)
{
GL.MultMatrix(m);
}
public void Begin(int mode)
{
GL.Begin(mode);
}
public void End()
{
GL.End();
}
public void Color(Color c)
{
GL.Color(c);
}
public void Vertex(Vector3 v)
{
GL.Vertex(v);
}
}
}