aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Remove preload_item_visuals codeRealBadAngel2016-02-21
| | | | Closes #3748
* Dont make fastface if tile is not seamlessRealBadAngel2016-02-21
| | | | | Fixes #3378 Closes #3751
* Little collision.cpp cleanupsLoic Blot2016-02-20
|
* Fix jumping at node edgegregorycu2016-02-19
|
* Don't print locale directory error message when GetText is disabledShadowNinja2016-02-19
| | | | Also, downgrade the error to a warning.
* Ignore spaces in secure.trusted_mods settingJeija2016-02-19
|
* Minimap: show player markersRealBadAngel2016-02-19
|
* Camera: Don't count camera offset twice for Nametagged CAOsRealBadAngel2016-02-19
|
* Require request_insecure_environment to be called from the mod's main scopeShadowNinja2016-02-19
| | | | | | | | | | | | | Previously you could steal a secure environment from a trusted mod by wrapping request_insecure_environment with some code like this: local rie_cp = minetest.request_insecure_environment local stolen_ie function minetest.request_insecure_environment() local ie = rie_cp() stolen_ie = stolen_ie or ie return ie end
* Clientmap: Define p_nodes_min/max as v3s32 instead of v3s16paramat2016-02-19
| | | | | | | | | 'cam_pos_nodes -/+ box_nodes_d' can exceed the range of v3s16 when a player is near the world edge using a large view range This previously caused world to disappear Create new function getBlocksInViewRange() called from updateDrawList() and renderMap() Correct code style throughout updateDrawList() and renderMap()
* HOTFIX: fix too agressive block cullingRealBadAngel2016-02-18
|
* Move object nametags to cameraRealBadAngel2016-02-18
|
* Clientiface: remove "value is dummy" from docsest312016-02-16
| | | | | | | | | | Commit 6a1670dbc31cc0e44178bbd9ad34ff0d5981a060 "Migrate to STL containers/algorithms." has replaced core::map<T, bool> with std::set<T>, but didn't update the accompanying comment saying "value is dummy". This happened at two places.
* Mapblock mesh: Eliminate meshgen lagsRealBadAngel2016-02-16
|
* Use vertices with tangents only when its needed.RealBadAngel2016-02-15
|
* Player::accelerateHorizontal/Vertical should be member of LocalPlayerLoic Blot2016-02-14
|
* Use proper variable types for uniform sampler layersRealBadAngel2016-02-14
|
* Formspec: fix broken irrlicht 1.7 buildRealBadAngel2016-02-13
| | | | Fixes #3701.
* Formspec: recreate item_image_button pressed state for its image and labelRealBadAngel2016-02-13
|
* Remove unused 'm_selection_active' fieldest312016-02-13
| | | | Thanks @ExcaliburZero for noticing. Fixes #3698.
* v2d & aabbox3d<f32> & sky cleanupsnerzhul2016-02-11
| | | | | * Sky: rename Box => m_box and inline getBoundingBox * Uniformize aabbox3d<f32> to aabb3f
* Drop luaentity_common.h which is not included anywhereLoic Blot2016-02-11
|
* Use single box for halo meshRealBadAngel2016-02-11
|
* Set proper GLSL pixel shader versionRealBadAngel2016-02-11
|
* Dump shader programs on compile errorsRealBadAngel2016-02-11
|
* Add '/clearobjects quick'Kahrl2016-02-11
|
* Fix backface culling when connecting to new servers.Auke Kok2016-02-10
| | | | | | | | | | | | | | | Introduce a new contentfeatures version (8). When clients connect using v27 protocol version, they can assume that the tiledef.backface_culling is trustable, but if clients connect to servers providing contentfeatures version 7, then the v27 clients know that backface culling settings provided by the server in tiledefs are bogus for mesh, plantlike, firelike or liquid drawtype nodes. thanks to hmmmm, est31, nerzhul. Tested on new client - new server, new client - old server old client - new server.
* Fix inverted conditions in shader.cppLoic Blot2016-02-09
|
* shader.cpp: don't test twice if shader programs are presentLoic Blot2016-02-09
| | | | Also use string::empty method, it is better than comparing with empty strings.
* FormSpec: Add StaticTextSpec and superimpose over item image buttonsRealBadAngel2016-02-09
|
* Filmic HDR tone mappingRealBadAngel2016-02-09
|
* Remove ClientMap::m_camera_mutexKahrl2016-02-09
| | | | | All places that lock this mutex are only called by the main thread: ClientMap::updateCamera(), ClientMap::updateDrawList(), ClientMap::renderMap(), ClientMap::renderPostFx().
* FindSpawnPos: Let mapgens decide what spawn altitude is suitableparamat2016-02-09
| | | | | | | | | | | | To avoid spawn search failing in new specialised mapgens Increase spawn search range to 4000 nodes Add getSpawnLevelAtPoint() functions to EmergeManager, class Mapgen and all mapgens Remove getGroundLevelAtPoint() functions from all mapgens except mgv6 (possibly to be re-added later in the correct form to return actual ground level) Make mgvalleys flag names consistent with other mapgens Remove now unused 'vertical spawn range' setting
* Use inventory_image in the first place for inventory item meshRealBadAngel2016-02-08
|
* Cleanup selection mesh code, add shaders for halo and selection boxesRealBadAngel2016-02-08
|
* small drawItemStack cleanupest312016-02-08
| | | | | | -> Replace the three bool params with an enum -> Add struct for the static content, leads to less repetition -> cache enable_animations setting
* Use meshes to display inventory itemsRealBadAngel2016-02-07
|
* Use tangent space meshes only when shaders are enabledRealBadAngel2016-02-07
|
* Mgvalleys: fix riverbeds below sea levelDuane Robertson2016-02-02
| | | | | Stop riverbeds from forming plateaus under sea. Minor corrections to random lava/water placement.
* Mgv5/v7/flat/fractal: Move tunnel noise calculation into generateCavesparamat2016-02-02
| | | | | | | | | | Tunnel 3D noises are only calculated when solid terrain is present in mapchunk, avoiding large amounts of unnecessary calculations Change 'int' to 's16' in calculateNoise Change 'i' to 'vi' for voxelmanip indexes for consistency Keep 'u32 index3d' local to a smaller part of tunnel code Mgv7: Don't call CaveV7 if no solid terrain in mapchunk Give 'open' bool a more descriptive name
* Mgvalleys: use standard cavesDuane Robertson2016-01-31
| | | | | | | | | | Replace simple caves with V5 caves, adding unpredictable water and lava settings and massive caves based on subterrain. Remove fast terrain mode and accompanying settings. Remove superfluous temperature/humidity settings. Remove lava/water height setting. Fix errors in humidity handling and remove humidity_break_point setting. Move cave noises to generateCaves. Fix minor formatting/naming issues and use MYMAX/MYMIN/myround.
* Fix OSX building issue caused by ad884f2Pavel Puchkin2016-01-29
|
* Don't pass non-const references to collision methodsest312016-01-29
| | | | | Non const references cause a lot of confusion with behaviour of code, and are disallowed by minetest style guide.
* Clocksource: use a better clock if available.Auke Kok2016-01-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | clock_gettime() is a far better clock than gettimeofday(). Even better than clock_gettime() is that you can select either CLOCK_MONOTONIC, or even CLOCK_MONOTONIC_RAW. These clocks offer high precision time. And the _RAW variant will never roll back due to NTP drift or daylight savings, or otherwise. I've adjusted this code to select the right clock method auto- matically based on what's available in the OS. This means that if you're running a very old linux version, MacOS or other, you will automatically get the best clocksource available. I've tested all Linux clocksources by selectively compiling and running a 10k+ timer test suite. In all cases I confirmed that the 3 POSIX Linux clocksources worked properly, and were selected properly. I've modified the OS X compile path to use the high-res clock source for all time functions, but I can't confirm it works or that it compiles. As for WIN32, I confirmed that the used clocksource is indeed a Monotonic clocksource, so good news: that code section appears to be exactly what it should be.
* Don't print whole json data buffer to errorstream on errorest312016-01-28
| | | | | | `errorstream` must not be overly verbose as clientside it is directly printed onto the ingame chat window. These days, the serverlist can contain > 200k bytes, so better print it to warningstream if the data buffer is too long.
* Backface culling: Ignore setting in tiledef from old servers.Auke Kok2016-01-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | Outdated servers are always sending tiledefs with culling enabled no matter what, as the value was previously entirely ignored. To compensate, we must (1) detect that we're running against an old server with a new client, and (2) disable culling for mesh, plantlike, firelike and liquid draw types no matter what the server is telling us. In order to achieve this, we need to bump the protocol version since we cannot rely on the tiledef version, and test for it being older. I've bumped the protocol version, although that should have likely happened in the actual change that introduced the new backface_culling PR #3578. Fortunately that's only 2 commits back at this point. We also explicitly test for the drawtype to assure we are not changing the culling value for other nodes, where it should remain enabled. This was tested against various pub servers, including 0.4.13 and 0.4.12. Fixes #3598
* Fix texture tear issueRealBadAngel2016-01-23
|
* Fix C++11 compilabilityest312016-01-23
| | | | Previous commits broke it... :(
* Liquid flow: Prevent water spreading on ignoreparamat2016-01-20
|
* Allow per-tiles culling.Auke Kok2016-01-20
| | | | | | | | | | | | | | | | | | | | | | | | Backface culling is enabled by default for all tiles, as this is how the lua parser initializes each tiledef. We revert to always using the value from the tiledef since it is always read and serialized. Mods that wish to enable culling for e.g. mesh nodes, now can specify the following to enable backface culling: tiles = {{ name = "tex.png", backface_culling = true }}, Note the double '{' and use of 'name' key here! In the same fashion, backface_culling can be disabled for any node now. I've tested this against the new door models and this properly allows me to disable culling per node. I've also tested this against my crops mod which uses mesh nodes where culling needs to be disabled, and tested also with plantlike drawtype nodes where we want this to continue to be disabled. No default setting has changed. The defaults are just migrated from nodedef.cpp to c_content.cpp.