about summary refs log tree commit diff
path: root/src/engine
diff options
context:
space:
mode:
authorJakob Fries <jakob.fries@gmail.com>2007-07-22 13:42:28 +0000
committerJakob Fries <jakob.fries@gmail.com>2007-07-22 13:42:28 +0000
commitf7b2accd52c289cd302c939bbf40ff6689b203f8 (patch)
treec0fa938122ece332e074beb487a2aff738cdfa0e /src/engine
parent9bf9d5e653fbbf025769c356e85702d972456250 (diff)
downloadzcatch-f7b2accd52c289cd302c939bbf40ff6689b203f8.tar.gz
zcatch-f7b2accd52c289cd302c939bbf40ff6689b203f8.zip
Diffstat (limited to 'src/engine')
-rw-r--r--src/engine/client/gfx.cpp10
-rw-r--r--src/engine/config_variables.h1
-rw-r--r--src/engine/interface.h1
3 files changed, 12 insertions, 0 deletions
diff --git a/src/engine/client/gfx.cpp b/src/engine/client/gfx.cpp
index db020cef..1e5aa19e 100644
--- a/src/engine/client/gfx.cpp
+++ b/src/engine/client/gfx.cpp
@@ -111,6 +111,8 @@ bool gfx_init()
 		dbg_msg("game", "failed to create gl context");
 		return false;
 	}
+
+	
 	// Init vertices
 	if (g_pVertices)
 		mem_free(g_pVertices);
@@ -160,6 +162,9 @@ bool gfx_init()
 	// create null texture, will get id=0
 	gfx_load_texture_raw(4,4,IMG_RGBA,null_texture_data);
 
+	// set vsync as needed
+	gfx_set_vsync(config.vsync);
+
 	return true;
 }
 
@@ -168,6 +173,11 @@ int gfx_get_video_modes(video_mode *list, int maxcount)
 	return context.getvideomodes((opengl::videomode *)list, maxcount);
 }
 
+void gfx_set_vsync(int val)
+{
+	context.set_vsync(val);
+}
+
 int gfx_unload_texture(int index)
 {
 	textures[index].tex.clear();
diff --git a/src/engine/config_variables.h b/src/engine/config_variables.h
index a5c4ef5d..23cb30a4 100644
--- a/src/engine/config_variables.h
+++ b/src/engine/config_variables.h
@@ -4,6 +4,7 @@ MACRO_CONFIG_INT(screen_width, 800, 0, 0)
 MACRO_CONFIG_INT(screen_height, 600, 0, 0)
 MACRO_CONFIG_INT(fullscreen, 1, 0, 1)
 MACRO_CONFIG_INT(color_depth, 24, 16, 24)
+MACRO_CONFIG_INT(vsync, 1, 0, 1)
 MACRO_CONFIG_INT(volume, 200, 0, 255)
 MACRO_CONFIG_STR(player_name, 32, "nameless tee")
 MACRO_CONFIG_STR(clan_name, 32, "")
diff --git a/src/engine/interface.h b/src/engine/interface.h
index 05c1b961..3a420c7c 100644
--- a/src/engine/interface.h
+++ b/src/engine/interface.h
@@ -62,6 +62,7 @@ void gfx_shutdown(); // NOT EXPOSED
 void gfx_swap(); // NOT EXPOSED
 
 int gfx_get_video_modes(video_mode *list, int maxcount);
+void gfx_set_vsync(int val);
 
 // textures
 /*