diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-11-27 11:52:49 +0200 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-11-29 19:13:55 +0200 |
commit | 4ce6e5f0c51d9fe96ee13c55dcb0e015e9122f1c (patch) | |
tree | 3d7aa7138024f89c04e920aea8e03af9ce87ea8c | |
parent | a8a82e0b21230e876d428a8ed9b8404cfd5d30a5 (diff) | |
download | minetest-4ce6e5f0c51d9fe96ee13c55dcb0e015e9122f1c.tar.gz minetest-4ce6e5f0c51d9fe96ee13c55dcb0e015e9122f1c.tar.bz2 minetest-4ce6e5f0c51d9fe96ee13c55dcb0e015e9122f1c.zip |
Optimize lighting by a tiny bit
-rw-r--r-- | src/voxel.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/voxel.cpp b/src/voxel.cpp index 632431244..bd06be877 100644 --- a/src/voxel.cpp +++ b/src/voxel.cpp @@ -310,21 +310,21 @@ void VoxelManipulator::unspreadLight(enum LightBank bank, v3s16 p, u8 oldlight, If the neighbor is dimmer than what was specified as oldlight (the light of the previous node) */ - if(n2.getLight(bank, nodemgr) < oldlight) + u8 light2 = n2.getLight(bank, nodemgr); + if(light2 < oldlight) { /* And the neighbor is transparent and it has some light */ - if(nodemgr->get(n2).light_propagates && n2.getLight(bank, nodemgr) != 0) + if(nodemgr->get(n2).light_propagates && light2 != 0) { /* Set light to 0 and add to queue */ - u8 current_light = n2.getLight(bank, nodemgr); n2.setLight(bank, 0, nodemgr); - unspreadLight(bank, n2pos, current_light, light_sources, nodemgr); + unspreadLight(bank, n2pos, light2, light_sources, nodemgr); /* Remove from light_sources if it is there @@ -528,12 +528,14 @@ void VoxelManipulator::spreadLight(enum LightBank bank, v3s16 p, continue; MapNode &n2 = m_data[n2i]; + + u8 light2 = n2.getLight(bank, nodemgr); /* If the neighbor is brighter than the current node, add to list (it will light up this node on its turn) */ - if(n2.getLight(bank, nodemgr) > undiminish_light(oldlight)) + if(light2 > undiminish_light(oldlight)) { spreadLight(bank, n2pos, nodemgr); } @@ -541,7 +543,7 @@ void VoxelManipulator::spreadLight(enum LightBank bank, v3s16 p, If the neighbor is dimmer than how much light this node would spread on it, add to list */ - if(n2.getLight(bank, nodemgr) < newlight) + if(light2 < newlight) { if(nodemgr->get(n2).light_propagates) { @@ -633,12 +635,14 @@ void VoxelManipulator::spreadLight(enum LightBank bank, continue; MapNode &n2 = m_data[n2i]; + + u8 light2 = n2.getLight(bank, nodemgr); /* If the neighbor is brighter than the current node, add to list (it will light up this node on its turn) */ - if(n2.getLight(bank, nodemgr) > undiminish_light(oldlight)) + if(light2 > undiminish_light(oldlight)) { lighted_nodes.insert(n2pos, true); } @@ -646,7 +650,7 @@ void VoxelManipulator::spreadLight(enum LightBank bank, If the neighbor is dimmer than how much light this node would spread on it, add to list */ - if(n2.getLight(bank, nodemgr) < newlight) + if(light2 < newlight) { if(nodemgr->get(n2).light_propagates) { |