don't unload tiles when loading full map

This commit is contained in:
T1ti
2024-05-25 02:15:33 +02:00
parent 657fafe208
commit 041013efef
2 changed files with 9 additions and 6 deletions

View File

@@ -2047,6 +2047,7 @@ void MapView::setupAssistMenu()
{ {
makeCurrent(); makeCurrent();
OpenGL::context::scoped_setter const _(::gl, context()); OpenGL::context::scoped_setter const _(::gl, context());
_unload_tiles = false;
_world->loadAllTiles(); _world->loadAllTiles();
} }
); );
@@ -2788,8 +2789,8 @@ void MapView::createGUI()
setupMinimapEditorUi(); setupMinimapEditorUi();
setupStampUi(); setupStampUi();
setupLightEditorUi(); setupLightEditorUi();
setupChunkManipulatorUi();
setupScriptingUi(); setupScriptingUi();
setupChunkManipulatorUi();
// End combined dock // End combined dock
setupViewportOverlay(); setupViewportOverlay();
@@ -3611,7 +3612,8 @@ void MapView::tick (float dt)
// start unloading tiles // start unloading tiles
_world->mapIndex.enterTile (TileIndex (_camera.position)); _world->mapIndex.enterTile (TileIndex (_camera.position));
_world->mapIndex.unloadTiles (TileIndex (_camera.position)); if (_unload_tiles)
_world->mapIndex.unloadTiles (TileIndex (_camera.position));
dt = std::min(dt, 1.0f); dt = std::min(dt, 1.0f);
@@ -4217,7 +4219,7 @@ void MapView::tick (float dt)
if (_camera_moved_since_last_draw) if (_camera_moved_since_last_draw)
{ {
auto ground_pos = _world.get()->get_ground_height(_camera.position); auto ground_pos = _world.get()->get_ground_height(_camera.position);
_camera.position.y = ground_pos.y + 2; _camera.position.y = ground_pos.y + 6;
} }
} }
else else
@@ -4396,9 +4398,9 @@ void MapView::tick (float dt)
} }
_status_culling->setText ( "Loaded tiles: " + QString::number(_world->getNumLoadedTiles()) _status_culling->setText ( "Loaded tiles: " + QString::number(_world->getNumLoadedTiles())
+ " Rendered tiles: " + QString::number(_world->getNumRenderedTiles()) + ", Rendered tiles: " + QString::number(_world->getNumRenderedTiles())
+ " Loaded objects: " + QString::number(_world->getModelInstanceStorage().getTotalModelsCount()) + "\t Loaded objects: " + QString::number(_world->getModelInstanceStorage().getTotalModelsCount())
+ " Rendered objects: " + QString::number(_world->getNumRenderedObjects()) + ", Rendered objects: " + QString::number(_world->getNumRenderedObjects())
); );
guiWater->updatePos (_camera.position); guiWater->updatePos (_camera.position);

View File

@@ -468,6 +468,7 @@ private:
bool _gl_initialized = false; bool _gl_initialized = false;
bool _destroying = false; bool _destroying = false;
bool _needs_redraw = false; bool _needs_redraw = false;
bool _unload_tiles = true;
unsigned _mmap_async_index = 0; unsigned _mmap_async_index = 0;
unsigned _mmap_render_index = 0; unsigned _mmap_render_index = 0;