public static void DrawImage(int x, int y, int w, int h, GLImage img, float r = 1, float g = 1, float b = 1, float a = 1) { GL.Color4(r, g, b, a); img.Bind(0); GL.Begin(BeginMode.Quads); GL.TexCoord2(0, 0); GL.Vertex2(x, y); GL.TexCoord2(1, 0); GL.Vertex2(x + w, y); GL.TexCoord2(1, 1); GL.Vertex2(x + w, y + h); GL.TexCoord2(0, 1); GL.Vertex2(x, y + h); GL.End(); img.Release(0); }
public void Render() { NoTile.Bind(0); GL.Begin(BeginMode.Quads); GL.Color4((float)1, (float)1, (float)1, (float)1); for (int y = 0; y < Height; y++) { for (int x = 0; x < Width; x++) { int rX = x * TileW; int rY = y * TileH; rX = rX - (int)CamX; rY = rY - (int)CamY; if (Highlight[x, y]) { GL.Color4((float)1, 0, 0, 1); } else { GL.Color4((float)1, 1, 1, 1); } GL.TexCoord2((float)0, 0); GL.Vertex2(rX, rY); GL.TexCoord2((float)1, 0); GL.Vertex2(rX + TileW, rY); GL.TexCoord2((float)1, 1); GL.Vertex2(rX + TileW, rY + TileH); GL.TexCoord2((float)0, 1); GL.Vertex2(rX, rY + TileH); } } GL.End(); NoTile.Release(0); }