9#include "shaders.gen.h"
23void gl_screenToGameCoords(
double *nx,
double *ny,
int bx,
int by );
29void gl_renderTextureRaw( GLuint texture, uint8_t flags,
30 double x,
double y,
double w,
double h,
31 double tx,
double ty,
double tw,
double th,
32 const glColour *
c,
double angle );
33void gl_renderTexture( const
glTexture* texture,
34 double x,
double y,
double w,
double h,
35 double tx,
double ty,
double tw,
double th,
36 const glColour *
c,
double angle );
37void gl_renderTextureInterpolate( const
glTexture* ta,
39 double x,
double y,
double w,
double h,
40 double tx,
double ty,
double tw,
double th, const glColour *
c );
42void gl_renderSprite( const
glTexture* sprite,
44 int sx,
int sy, const glColour *
c );
45void gl_renderSpriteScale( const
glTexture* sprite,
double bx,
double by,
46 double scalew,
double scaleh,
47 int sx,
int sy, const glColour*
c );
48void gl_renderSpriteRotate( const
glTexture* sprite,
49 double bx,
double by,
double angle,
50 int sx,
int sy, const glColour *
c );
51void gl_renderSpriteScaleRotate( const
glTexture* sprite,
53 double scalew,
double scaleh,
double angle,
54 int sx,
int sy, const glColour *
c );
57 double inter,
double bx,
double by,
58 int sx,
int sy, const glColour *
c );
60 double inter,
double bx,
double by,
61 int sx,
int sy, const glColour *
c );
63 double inter,
double bx,
double by,
64 double scalew,
double scaleh,
65 int sx,
int sy, const glColour *
c );
68 double inter,
double bx,
double by,
69 double scalew,
double scaleh,
70 int sx,
int sy, const glColour *
c );
72void gl_renderStaticSprite( const
glTexture* sprite,
74 int sx,
int sy, const glColour*
c );
76void gl_renderScaleSprite( const
glTexture* sprite,
79 double bw,
double bh, const glColour*
c );
81void gl_renderScale( const
glTexture* texture,
83 double bw,
double bh, const glColour*
c );
85void gl_renderScaleAspect( const
glTexture* texture,
87 double bw,
double bh, const glColour*
c );
89void gl_renderStatic( const
glTexture* texture,
90 double bx,
double by, const glColour *
c );
91void gl_renderSDF( const
glTexture *texture,
92 double x,
double y,
double w,
double h,
93 const glColour *
c,
double angle,
double outline );
95extern gl_vbo *gl_squareVBO;
96extern gl_vbo *gl_circleVBO;
97void gl_beginSolidProgram(
mat4 projection, const glColour *
c);
98void gl_endSolidProgram (
void);
99void gl_beginSmoothProgram(
mat4 projection);
100void gl_endSmoothProgram (
void);
103void gl_renderShader(
double x,
double y,
double w,
double h,
double r, const SimpleShader *shd, const glColour *
c,
int center );
104void gl_renderShaderH( const SimpleShader *shd, const
mat4 *H, const glColour *
c,
int center );
107void gl_renderCircle(
double x,
double y,
108 double r, const glColour *
c,
int filled );
109void gl_renderCircleH( const
mat4 *H, const glColour *
c,
int filled );
112void gl_renderLine(
double x1,
double y1,
113 double x2,
double y2, const glColour *
c );
116void gl_renderRect(
double x,
double y,
double w,
double h, const glColour *
c );
117void gl_renderRectEmpty(
double x,
double y,
double w,
double h, const glColour *
c );
118void gl_renderRectH( const
mat4 *H, const glColour *
c,
int filled );
121void gl_renderCross(
double x,
double y,
double r, const glColour *
c );
124void gl_renderTriangleEmpty(
double x,
double y,
double a,
double s,
double length, const glColour *
c );
127void gl_clipRect(
int x,
int y,
int w,
int h );
128void gl_unclipRect (
void);
void gl_exitRender(void)
Cleans up the OpenGL rendering routines.
void gl_gameToScreenCoords(double *nx, double *ny, double bx, double by)
Converts in-game coordinates to screen coordinates.
int gl_initRender(void)
Initializes the OpenGL rendering routines.
mat4 gl_gameToScreenMatrix(mat4 lhs)
Return a transformation which converts in-game coordinates to screen coordinates.
Abstraction for rendering sprite sheets.