diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-01-26 01:30:36 +0200 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-01-26 01:30:36 +0200 |
commit | adb7f248da9e4ec9350d1a05d50213ff3d3908d6 (patch) | |
tree | decf1d599f6de534a1b81a1fd4f6673f96cea0c5 | |
parent | a0f0517c5bec0a2b667813abb9ff8b08cd318952 (diff) | |
download | minetest-adb7f248da9e4ec9350d1a05d50213ff3d3908d6.tar.gz minetest-adb7f248da9e4ec9350d1a05d50213ff3d3908d6.tar.bz2 minetest-adb7f248da9e4ec9350d1a05d50213ff3d3908d6.zip |
comments
-rw-r--r-- | src/main.cpp | 5 | ||||
-rw-r--r-- | src/mapblock.cpp | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/main.cpp b/src/main.cpp index da1b88d4a..d2b67e9a8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -285,6 +285,11 @@ TODO: Flowing water to actually contain flow direction information TODO: Remove duplicate lighting implementation from Map (leave
VoxelManipulator, which is faster)
+FIXME: The new texture stuff is slow on wine
+ - Actually it is not too slow; updating excess amount of meshes
+ when making footprints is too slow. It has to be fixed.
+ -> implement Map::updateNodeMeshes()
+
Doing now:
----------
diff --git a/src/mapblock.cpp b/src/mapblock.cpp index 484821d50..15f3ad9a6 100644 --- a/src/mapblock.cpp +++ b/src/mapblock.cpp @@ -601,6 +601,8 @@ void MapBlock::updateMesh(u32 daynight_ratio) */ { + //TimeTaker timer2("updateMesh() collect"); + // Lock this, as m_temp_mods will be used directly JMutexAutoLock lock(m_temp_mods_mutex); @@ -662,6 +664,9 @@ void MapBlock::updateMesh(u32 daynight_ratio) if(fastfaces_new.size() > 0) { + // avg 0ms (100ms spikes when loading textures the first time) + //TimeTaker timer2("updateMesh() mesh building"); + for(u32 i=0; i<fastfaces_new.size(); i++) { FastFace &f = fastfaces_new[i]; @@ -690,6 +695,9 @@ void MapBlock::updateMesh(u32 daynight_ratio) TODO: Optimize by using same meshbuffer for same textures */ + // 0ms + //TimeTaker timer2("updateMesh() adding special stuff"); + for(s16 z=0; z<MAP_BLOCKSIZE; z++) for(s16 y=0; y<MAP_BLOCKSIZE; y++) for(s16 x=0; x<MAP_BLOCKSIZE; x++) |