Changeset - r21222:d3d2dd94ea92
[Not reviewed]
master
0 1 0
rubidium - 11 years ago 2014-02-06 20:55:49
rubidium@openttd.org
(svn r26310) -Codechange: clean up some caches during town generation to keep memory usage significantly lower (MJP)
1 file changed with 9 insertions and 0 deletions:
0 comments (0 inline, 0 general)
src/town_cmd.cpp
Show inline comments
 
@@ -46,6 +46,7 @@
 
#include "object_base.h"
 
#include "ai/ai.hpp"
 
#include "game/game.hpp"
 
#include "gfx_layout.h"
 

	
 
#include "table/strings.h"
 
#include "table/town_land.h"
 
@@ -1889,6 +1890,14 @@ bool GenerateTowns(TownLayout layout)
 
	 * Note that this is really a suggested value, not a required one.
 
	 * We would not like the system to lock up just because the user wanted 100 cities on a 64*64 map, would we? */
 
	do {
 
		if (total % 512 == 0) {
 
			/* Clear the caches regularly, otherwise it will only be done
 
			 * at the end of the whole cycle when OpenTTD has allocated
 
			 * lots and lots of memory for these essentially caches. */
 
			ClearPersistentStorageChanges(true);
 
			Layouter::ReduceLineCache();
 
		}
 

	
 
		bool city = (_settings_game.economy.larger_towns != 0 && Chance16(1, _settings_game.economy.larger_towns));
 
		IncreaseGeneratingWorldProgress(GWP_TOWN);
 
		/* Get a unique name for the town. */
0 comments (0 inline, 0 general)