aboutsummaryrefslogtreecommitdiff
path: root/src/clientmap.cpp
Commit message (Collapse)AuthorAge
* Soft node overlay (#5186)Dániel Juhász2017-04-21
| | | | This commit adds node overlays, which are tiles that are drawn on top of other tiles.
* Allow server side occlusion culling.Lars Hofhansl2017-03-11
|
* Perform mesh animation only once per frame.Lars Hofhansl2017-02-09
|
* Remove `mathconstants.h` and use the correct way to get `M_PI` in MSVC. (#5072)red-0012017-01-20
|
* Only set material flag on rendered meshes (#5023)lhofhansl2017-01-14
|
* Environment & IGameDef code refactoring (#4985)Ner'zhul2017-01-09
| | | | | | | | | | | | | | | | | | | | | * Environment code refactoring * Cleanup includes & class declarations in client & server environment to improve build speed * ServerEnvironment::m_gamedef is now a pointer to Server instead of IGameDef, permitting to cleanup many casts. * Cleanup IGameDef * Move ITextureSource* IGameDef::getTextureSource() to Client only. * Also move ITextureSource *IGameDef::tsrc() helper * drop getShaderSource, getSceneManager, getSoundManager & getCamera abstract call * drop unused emerge() call * cleanup server unused functions (mentionned before) * Drop one unused parameter from ContentFeatures::updateTextures * move checkLocalPrivilege to Client * Remove some unnecessary casts * create_formspec_menu: remove IWritableTextureSource pointer, as client already knows it * Fix some comments * Change required IGameDef to Server/Client pointers * Previous change that game.cpp sometimes calls functions with Client + InventoryManager + IGameDef in same functions but it's the same objects * Remove duplicate Client pointer in GUIFormSpecMenu::GUIFormSpecMenu * drop ClientMap::sectorWasDrawn which is unused
* Improve getPointedThing() (#4346)Dániel Juhász2017-01-04
| | | | | | | | | | | | | | | | | | | * Improved getPointedThing() The new algorithm checks every node exactly once. Now the point and normal vector of the collision is also returned in the PointedThing (currently they are not used outside of the function). Now the CNodeDefManager keeps the union of all possible nodeboxes, so the raycast won't miss any nodes. Also if there are only small nodeboxes, getPointedThing() is exceptionally fast. Also adds unit test for VoxelLineIterator. * Cleanup, code move This commit moves getPointedThing() and Client::getSelectedActiveObject() to ClientEnvironment. The map nodes now can decide which neighbors they are connecting to (MapNode::getNeighbors()).
* Pull occlusion check out of loop, and minor code cleanups.Lars Hofhansl2017-01-03
|
* Move PP() and PP2() macros to basic_macros.hRogier2016-12-24
| | | | Instead of redefining them everywhere.
* Fix occlusion culling, again (#4930)lhofhansl2016-12-19
|
* Fix occlusing counting (#4922)lhofhansl2016-12-18
|
* Occlusion culling: Add comments, minor code improvementsparamat2016-11-09
| | | | | Remove unnecessary code. Use '/ 2.0f' because endoff is a float.
* Occlusion culling: Fix 'end offset' distance, half this for centre pointLars Hofhansl2016-11-08
| | | | | 'endoff', the maximum diagonal of a mapblock, was incorrectly calculated. Half this value for the centre point of the mapblock.
* Add debug priv, and allow player to display the scene as wire-frame. (#4709)lhofhansl2016-11-04
|
* Camera: remove auto tune FPS, single view range settingRealBadAngel2016-02-21
|
* 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()
* v2d & aabbox3d<f32> & sky cleanupsnerzhul2016-02-11
| | | | | * Sky: rename Box => m_box and inline getBoundingBox * Uniformize aabbox3d<f32> to aabb3f
* 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().
* Rename macros with two leading underscoresShadowNinja2015-10-14
| | | | These names are reserved for the compiler/library implementations.
* Change i++ to ++iDavid Jones2015-08-25
|
* Clean up threadingShadowNinja2015-08-23
| | | | | | | | | | | | | | | | | | | | * Rename everything. * Strip J prefix. * Change UpperCamelCase functions to lowerCamelCase. * Remove global (!) semaphore count mutex on OSX. * Remove semaphore count getter (unused, unsafe, depended on internal API functions on Windows, and used a hack on OSX). * Add `Atomic<type>`. * Make `Thread` handle thread names. * Add support for C++11 multi-threading. * Combine pthread and win32 sources. * Remove `ThreadStarted` (unused, unneeded). * Move some includes from the headers to the sources. * Move all of `Event` into its header (allows inlining with no new includes). * Make `Event` use `Semaphore` (except on Windows). * Move some porting functions into `Thread`. * Integrate logging with `Thread`. * Add threading test.
* Improved parallax mapping. Generate heightmaps on the fly.RealBadAngel2015-06-14
|
* Move globals from main.cpp to more sane locationsCraig Robbins2015-04-01
| | | | | | | | | | | | Move debug streams to log.cpp|h Move GUI-related globals to clientlauncher Move g_settings and g_settings_path to settings.cpp|h Move g_menuclouds to clouds.cpp|h Move g_profiler to profiler.cpp|h
* For usages of assert() that are meant to persist in Release builds (when ↵Craig Robbins2015-03-07
| | | | NDEBUG is defined), replace those usages with persistent alternatives
* Fix issue #2441: crash on respawn, since a conversion std::list to ↵Loic Blot2015-03-05
| | | | | | | std::vector on Environment.cpp * Also change some std::list to std::vector for ClientMap::renderMap * Remove disabled code in ClientMap::renderMap, disabled since a long time
* Fix occlusionMiguel Almeida2015-03-02
|
* Replace std::list by std::vector into ClientMap::updateDrawList, ↵Loic Blot2015-02-17
| | | | | | Map::timerUpdate and ServerMap::save(). This will speedup the loop reading into those functions
* Fix all warnings and remove -Wno-unused-but-set cflagkwolekr2015-01-18
|
* Add display_gamma option for clientCraig Robbins2014-12-31
|
* Performance of main client loop up to 2x faster In places, up to 3 times fasterCraig Robbins2014-12-07
| | | | | NOTE 1: This does not mean a 2x increase in framerate. Increase in fps may be up to 1-2fps NOTE 2: This local 'caching' of settings is not optimal and an alternative solution will be worked on after 0.4.11 is released
* Avoid doing a full material compare if not even first texture does matchsapier2014-06-23
|
* Add support for interlaced polarized 3d screenssapier2014-05-18
| | | | Add (experimental) support for topbottom as well as sidebyside 3d mode
* Add player:set_eye_offset() by @MirceaKitsune and clean upBlockMen2014-04-12
|
* Add third person viewBlockMen2014-04-12
|
* Fix rendering glitches when far from the center of the mapNovatux2014-03-04
|
* Cleanup jthread and fix win32 buildsapier2013-12-01
|
* Fix and improve view range tunerPerttu Ahola2013-08-03
|
* Migrate to STL containers/algorithms.Ilya Zhuravlev2013-03-11
|
* Update Copyright YearsSfan52013-02-24
|
* Change Minetest-c55 to MinetestPilzAdam2013-02-24
|
* Don't see through nodes without noclip privilegesShadowNinja2013-02-10
|
* Fix automagic render distance tunerPerttu Ahola2012-12-06
|
* Added video settings filter options via config file - second try :-)Vanessa Ezekowitz2012-11-09
| | | | | | | | | Set one or more of these in the config to turn the related option on: mip_map = 1 anisotropic_filter = 1 bilinear_filter = 1 trilinear_filter = 1
* Reorganize ClientMap rendering code for a bit more performancePerttu Ahola2012-09-04
| | | | | - Don't select blocks for drawing in every frame - Sort meshbuffers by material before drawing
* Define M_PI on MSVCPerttu Ahola2012-07-21
|
* Properly and efficiently use split utility headersPerttu Ahola2012-06-17
|
* Switch the license to be LGPLv2/later, with small parts still remaining as ↵Perttu Ahola2012-06-05
| | | | GPLv2/later, by agreement of major contributors
* No occlusion culling when free_move is on and camera is inside groundPerttu Ahola2012-03-28
|
* Try to make background/fog/sky color selection work betterPerttu Ahola2012-03-27
|
* Fix getVisibleBrightness() to return sunlight visibility correctly even if ↵Perttu Ahola2012-03-18
| | | | not much of world has been loaded