From 4ba5cd580d86710b54f4b523db4e8710fb56fdb6 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sun, 26 Dec 2010 13:33:20 +0200 Subject: drawing range updater update and myrand() (but not usage of it) --- src/main.cpp | 120 +++++++++++++++++++++++++++++------------------------------ 1 file changed, 59 insertions(+), 61 deletions(-) (limited to 'src/main.cpp') diff --git a/src/main.cpp b/src/main.cpp index b7a1b6b32..2f22caeb0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -253,25 +253,7 @@ TODO: Fix viewing range updater's oscillation when there is large non- IrrlichtWrapper *g_irrlicht; -// All range-related stuff below is locked behind this -JMutex g_range_mutex; - -// Blocks are viewed in this range from the player -float g_viewing_range_nodes = 60; -//s16 g_viewing_range_nodes = 0; - -// This is updated by the client's fetchBlocks routine -//s16 g_actual_viewing_range_nodes = VIEWING_RANGE_NODES_DEFAULT; - -// If true, the preceding value has no meaning and all blocks -// already existing in memory are drawn -bool g_viewing_range_all = false; - -// This is the freetime ratio imposed by the dynamic viewing -// range changing code. -// It is controlled by the main loop to the smallest value that -// inhibits glitches (dtime jitter) in the main loop. -//float g_freetime_ratio = FREETIME_RATIO_MAX; +MapDrawControl draw_control; /* Settings. @@ -455,15 +437,14 @@ public: // Viewing range selection if(event.KeyInput.Key == irr::KEY_KEY_R) { - JMutexAutoLock lock(g_range_mutex); - if(g_viewing_range_all) + if(draw_control.range_all) { - g_viewing_range_all = false; + draw_control.range_all = false; dstream< viewing_range_nodes_max) @@ -956,20 +937,20 @@ void updateViewingRange(f32 frametime, Client *client) bool can_change = true; - if(client->isFetchingBlocks() == true && n > g_viewing_range_nodes) + if(client->isFetchingBlocks() == true && n > draw_control.wanted_range) can_change = false; if(can_change) - g_viewing_range_nodes = n; + draw_control.wanted_range = n; - /*dstream<<"g_viewing_range_nodes = " - <setFog( @@ -2435,13 +2433,13 @@ int main(int argc, char *argv[]) wchar_t temptext[150]; static float drawtime_avg = 0; - drawtime_avg = drawtime_avg * 0.98 + (float)drawtime*0.02; + drawtime_avg = drawtime_avg * 0.95 + (float)drawtime*0.05; static float beginscenetime_avg = 0; - beginscenetime_avg = beginscenetime_avg * 0.98 + (float)beginscenetime*0.02; + beginscenetime_avg = beginscenetime_avg * 0.95 + (float)beginscenetime*0.05; static float scenetime_avg = 0; - scenetime_avg = scenetime_avg * 0.98 + (float)scenetime*0.02; + scenetime_avg = scenetime_avg * 0.95 + (float)scenetime*0.05; static float endscenetime_avg = 0; - endscenetime_avg = endscenetime_avg * 0.98 + (float)endscenetime*0.02; + endscenetime_avg = endscenetime_avg * 0.95 + (float)endscenetime*0.05; swprintf(temptext, 150, L"Minetest-c55 (" L"F: item=%i" @@ -2449,7 +2447,7 @@ int main(int argc, char *argv[]) L")" L" drawtime=%.0f, beginscenetime=%.0f, scenetime=%.0f, endscenetime=%.0f", g_selected_item, - g_viewing_range_all, + draw_control.range_all, drawtime_avg, beginscenetime_avg, scenetime_avg, @@ -2472,7 +2470,7 @@ int main(int argc, char *argv[]) busytime_jitter1_min_sample, busytime_jitter1_max_sample, dtime_jitter1_max_fraction * 100.0, - g_viewing_range_nodes + draw_control.wanted_range ); guitext2->setText(temptext); -- cgit v1.2.3