aboutsummaryrefslogtreecommitdiff
path: root/src/client
AgeCommit message (Collapse)Author
2021-09-11Make sure relevant std::stringstreams are set to binarysfan5
2021-09-10Clean up/improve some scriptapi error handling codesfan5
2021-09-09Dynamic_Add_Media v2 (#11550)sfan5
2021-09-05Fix movement in random_input mode (#11592)NeroBurner
2021-08-27Joystick sensitivity for player movement (#11262)NeroBurner
This commit deprecates the forward, backward, left, and right binary inputs currently used for player movement in the PlayerControl struct. In their place, it adds the movement_speed and movement_direction values, which represents the player movement is a polar coordinate system. movement_speed is a scalar from 0.0 to 1.0. movement_direction is an angle from 0 to +-Pi: FWD 0 _ LFT / \ RGT -Pi/2 | | +Pi/2 \_/ +-Pi BCK Boolean movement bits will still be set for server telegrams and Lua script invocations to provide full backward compatibility. When generating these values from an analog input, a direction is considered active when it is 22.5 degrees away from either orthogonal axis. Co-authored-by: Markus Koch <markus@notsyncing.net> Co-authored-by: sfan5 <sfan5@live.de>
2021-08-23Fix 6th line of infotext being cut off in half (#11456)Wuzzy
2021-08-21Show status message when changing block bounds (#11556)Wuzzy
2021-08-19Fix scaled world-aligned textures being aligned inconsistently for ↵Wuzzy
non-normal drawtypes
2021-08-19Add fwgettext util functionrubenwardy
2021-08-17Fix inconsistent integer comparison warningsSmallJoker
2021-08-16Start sprite animation at the beginning (#11509)Lean Rada
When setting a sprite animation, do not keep the last animation's frame number. Setting a new animation should start the animation at the start of the new animation.
2021-08-16Cap iterations of imageCleanTransparent sanelysfan5
fixes #11513 performance regression with 256x textures
2021-08-12Fix segfault caused by shadow map on exitSmallJoker
2021-08-12Move updating shadows outside of RenderingCore::drawAll. (#11491)x2048
Fixes indirect rendering modes such as some 3D modes mentioned in #11437 and undersampled rendering. Does not fully fix anaglyph 3d mode.
2021-08-03OpenAL: Free buffers on quitSmallJoker
2021-07-31Mods: Combine mod loading checks and deprection logging (#11503)SmallJoker
This limits the logged deprecation messages to the mods that are loaded Unifies the mod naming convention check for CSM & SSM
2021-07-29Remove unsupported extensions from list in tile.cpphecktest
2021-07-27Add bold, italic and monospace font styling for HUD text elements (#11478)sfan5
Co-authored-by: Elias Fleckenstein <eliasfleckenstein@web.de>
2021-07-25Distribute shadow map update over multiple frames to reduce stutter (#11422)x2048
Reduces stutter and freezes when playing. * Maintains double SM and SM Color textures * Light frustum update triggers incremental generation of shadow map into secondary 'future' textures. * Every incremental update renders a portion of the shadow draw list (split equally). * After defined number of frames (currently, 4), 'future' and 'current' textures are swapped, and DirectionalLight 'commits' the new frustum to use when rendering shadows on screen. Co-authored-by: sfan5 <sfan5@live.de>
2021-07-22Remove unused ITextSceneNode header (#11476)hecks
Co-authored-by: hecktest <>
2021-07-21Remove unused header includeshecks
2021-07-17CSM: Do not index files within hidden directoriesSmallJoker
CSM would previously scan for files within .git or .svn directories, and also special files such as .gitignore
2021-07-15Add wallmounted support for plantlike and plantlike_rooted nodes (#11379)Wuzzy
2021-07-12Fix revoke debug privs not reliably turn off stuff (#11409)Wuzzy
2021-07-12Fix build on Ubuntu 16.04 and macOSsfan5
Apparently the C++ standard library is supposed to provide specializations of std::hash for enums (even in C++11) but those don't always work for whatever reason.
2021-07-11Avoid draw list and shadow map update in the same frame to reduce dtime ↵x2048
jitter (#11393) * Separate draw list and shadows update to reduce jitter * Avoid draw list update and shadow update in the same frame * Force-update shadows when camera offset changes
2021-07-11Improve shadow rendering with non-default camera FOV (#11385)x2048
* Adjust minimum filter radius for perspective * Expand shadow frustum when camera FOV changes, reuse FOV distance adjustment from numeric.cpp * Read shadow_soft_radius setting as float * Use adaptive filter radius to accomodate for PSM distortion * Adjust filter radius for texture resolution
2021-07-11Refactor video driver name retrieval (#11413)hecks
Co-authored-by: hecktest <>
2021-06-30Remove unsupported video drivers (#11395)hecks
This completely removes any mention of the software and D3D drivers from MT, preventing the user from accidentally attempting to use them. Users who need a software renderer should be asked to install Mesa drivers which offer superior fidelity and performance over the 'burningsvideo' driver.
2021-06-24Require 'basic_debug' priv to view gameplay-relevant debug info, require ↵Wuzzy
'debug' priv to view wireframe (#9315) Fixes #7245.
2021-06-23Perform some quality assurance for translation strings (#11375)Wuzzy
2021-06-16Drop --videomodes, fullscreen_bpp and high_precision_fpu settingssfan5
These have been pointless for a while.
2021-06-06Shadow mapping render pass (#11244)Liso
Co-authored-by: x2048 <codeforsmile@gmail.com>
2021-06-01fontengine: Fix crash loading PNG/XML fonts from paths without dotsfan5
fixes #11096
2021-05-30Fix procession ordering issue in content_caosfan5
2021-05-29Fix cloud fog being broken for high cloudsWuzzy
2021-05-24Fix client crash on when con::PeerNotFoundException is thrown (#11286)savilli
2021-05-08Fix overlays for 2D-drawn itemssfan5
fixes #11248
2021-05-06fix: extractZipFile is not part of Client but more generic.Loic Blot
This solve a crash from mainmenu while extracting the zip
2021-05-05Use Irrlicht functions to query npot texture supportsfan5
2021-05-03fix: some code tidy about includes & irr namespacesLoic Blot
2021-05-03refacto: remove get_gui_env & draw_load_screen from RenderingEngine singletonLoic Blot
2021-05-03fix: don't use RenderingEngine singleton when it's possibleLoic Blot
2021-05-03refacto: RenderingEngine::get_scene_manager() is now not callable from singletonLoic Blot
This permits to make evidence that we have some bad object passing on various code parts. I fixed majority of them to reduce the scope of passed objects Unfortunately, for some edge cases i should have to expose ISceneManager from client, this should be fixed in the future when our POO will be cleaner client side (we have a mix of rendering and processing in majority of the client objects, it works but it's not clean)
2021-05-03refacto: Hud: make driver, client, player, inventory, tsrc private & drop ↵Loic Blot
unused guienv also fix c_content.h, on client it includes the src/client/hud.h instead of src/hud.h, which leads to wrong file dependency on the lua stack
2021-05-03refacto: drop unused Hud::smgrLoic Blot
2021-05-03refacto: don't use RenderingEngine singleton on CAOLoic Blot
* we don't need on CAO side more than SceneManager, and temporary. Pass only required SceneManager as a parameter to build CAO and add them to the current scene * Use temporary the RenderingEngine singleton from ClientEnvironment, waitfor for better solution * Make ClientActiveObject::addToScene virtual function mandatory to be defined by children to ensure we don't forget to properly define it
2021-05-03refacto: protect some RenderingEngine::get_scene_managerLoic Blot
* protect it from Camera, Sky, ClientMap object calls * rename Game::sky to Game::m_sky
2021-05-03refacto: RenderingEngine is now better hiddenLoic Blot
* No more access to the singleton instance from everywhere (RenderingEngine::get_instance dropped) * RenderingEngine::get_timer_time is now non static * RenderingEngine::draw_menu_scene is now non static * RenderingEngine::draw_scene is now non static * RenderingEngine::{initialize,finalize} are now non static * RenderingEngine::run is now non static * RenderingEngine::getWindowSize now have a static helper. It was mandatory to hide the global get_instance access
2021-05-03refacto: hide mesh_cache inside the rendering engineLoic Blot
This permit cleaner access to meshCache and ensure we don't access to it from all the code