about summary refs log tree commit diff
path: root/src/engine
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine')
-rw-r--r--src/engine/client/ec_gfx.c11
-rw-r--r--src/engine/e_interface.h3
2 files changed, 14 insertions, 0 deletions
diff --git a/src/engine/client/ec_gfx.c b/src/engine/client/ec_gfx.c
index 41e55fbe..431350f2 100644
--- a/src/engine/client/ec_gfx.c
+++ b/src/engine/client/ec_gfx.c
@@ -1024,3 +1024,14 @@ void gfx_lines_draw(float x0, float y0, float x1, float y1)
 	
 	draw_line();
 }
+
+void gfx_clip_enable(int x, int y, int w, int h)
+{
+	glScissor(x, gfx_screenheight()-(y+h), w, h);
+	glEnable(GL_SCISSOR_TEST);
+}
+
+void gfx_clip_disable()
+{
+	glDisable(GL_SCISSOR_TEST);
+}
diff --git a/src/engine/e_interface.h b/src/engine/e_interface.h
index 930d196a..f17865a6 100644
--- a/src/engine/e_interface.h
+++ b/src/engine/e_interface.h
@@ -870,6 +870,9 @@ void gfx_lines_end();
 void gfx_mask_op(int mask, int write);
 void gfx_clear_mask(int fill);
 
+void gfx_clip_enable(int x, int y, int w, int h);
+void gfx_clip_disable();
+
 /* server snap id */
 int snap_new_id();
 void snap_free_id(int id);