CACHEPICFLAG_NEWPIC = 16, // disables matching texflags check, because a pic created with Draw_NewPic should not be subject to that
CACHEPICFLAG_MIPMAP = 32,
CACHEPICFLAG_NEAREST = 64, // force nearest filtering instead of linear
- CACHEPICFLAG_FAILONMISSING = 128 // return NULL if the pic has no texture
+ CACHEPICFLAG_LINEAR = 128, // force linear filtering even if nearest_2d is enabled
+ CACHEPICFLAG_FAILONMISSING = 256 // return NULL if the pic has no texture
}
cachepicflags_t;
-void Draw_Init (void);
void Draw_Frame (void);
cachepic_t *Draw_CachePic_Flags (const char *path, unsigned int cachepicflags);
cachepic_t *Draw_CachePic (const char *path); // standard function with no options, used throughout engine
#define STRING_COLOR_RGB_TAG_CHAR 'x'
#define STRING_COLOR_RGB_TAG "^x"
-// all of these functions will set r_defdef.draw2dstage if not in 2D rendering mode (and of course prepare for 2D rendering in that case)
+// prepare for 2D rendering (sets r_refdef.draw2dstage = 1 and calls R_ResetViewRendering2D)
+void DrawQ_Start(void);
+// resets r_refdef.draw2dstage to 0
+void DrawQ_Finish(void);
+// batch draw the pending geometry in the CL_Mesh_UI() model and reset the model,
+// to be called by things like DrawQ_SetClipArea which make disruptive state changes.
+void DrawQ_FlushUI(void);
+// use this when changing r_refdef.view.* from e.g. csqc
+void DrawQ_RecalcView(void);
// draw an image (or a filled rectangle if pic == NULL)
void DrawQ_Pic(float x, float y, cachepic_t *pic, float width, float height, float red, float green, float blue, float alpha, int flags);
void DrawQ_ResetClipArea(void);
// draw a line
void DrawQ_Line(float width, float x1, float y1, float x2, float y2, float r, float g, float b, float alpha, int flags);
-// resets r_refdef.draw2dstage
-void DrawQ_Finish(void);
-void DrawQ_RecalcView(void); // use this when changing r_refdef.view.* from e.g. csqc
-// batch draw the pending geometry in the CL_Mesh_UI() model and reset the model,
-// to be called by things like DrawQ_SetClipArea which make disruptive state changes.
-void DrawQ_FlushUI(void);
const char *Draw_GetPicName(cachepic_t *pic);
int Draw_GetPicWidth(cachepic_t *pic);