Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2009-07-07 09:32:38 +0000
committerStijn Buys <ingar@osirion.org>2009-07-07 09:32:38 +0000
commitfb1d166768e516a8493c16064640c98b1efa6707 (patch)
treee5d1827028fc6a5fa527c9293f6ae2fde42b3991 /src/core/gameinterface.cc
parente66f56ea71f466cc2b261e04d7348e36baff71e1 (diff)
Moved vertexarray from render to core
Diffstat (limited to 'src/core/gameinterface.cc')
-rw-r--r--src/core/gameinterface.cc20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/core/gameinterface.cc b/src/core/gameinterface.cc
index 5f3c91a..1ed0a67 100644
--- a/src/core/gameinterface.cc
+++ b/src/core/gameinterface.cc
@@ -70,6 +70,19 @@ GameInterface::GameInterface()
Func *func = Func::add("list_players", func_list_players);
func->set_info("get the local list of connected players");
+
+ // size of the vertex array in megabytes
+ Cvar::sv_arraysize = core::Cvar::get("sv_arraysize", 128.0f , core::Cvar::Archive);
+ Cvar::sv_arraysize->set_info("[int] size of the vertex array in MegabBytes");
+
+ size_t mb = (size_t) Cvar::sv_arraysize->value();
+ if (mb < 4 * sizeof(float))
+ mb = 4 * sizeof(float);
+ if (mb > 512)
+ mb = 512;
+ (*Cvar::sv_arraysize) = (float) mb;
+ game_vertexarray = new model::VertexArray(mb);
+
}
GameInterface::~GameInterface()
@@ -79,6 +92,12 @@ GameInterface::~GameInterface()
game_localplayer.clear();
clear();
+
+ // delete vertex array
+ if (game_vertexarray) {
+ delete game_vertexarray;
+ game_vertexarray = 0;
+ }
}
// clear all game related objects
@@ -122,6 +141,7 @@ void GameInterface::clear()
// remove all models
model::Model::clear();
+
// remove infos
Info::clear();