Commit Graph

9923 Commits

Author SHA1 Message Date
ShadowNinja 7993909fab Spacing fixes 2022-04-08 14:55:21 +01:00
ShadowNinja 88b21a72f1 Treat empty XDG_CACHE_HOME same as unset
This matches the XDG base directory spec.
2022-04-08 14:55:21 +01:00
ShadowNinja ea2fba877a Use build directory for builds 2022-04-08 14:55:21 +01:00
ShadowNinja 5683bb76cc Fix compiler warnings 2022-04-08 14:55:21 +01:00
Dmitry Kostenko 3a87fab6c8 Remove reference to a removed file in devtest (followup to #12157) 2022-04-07 23:13:09 +02:00
Dmitry Kostenko 23516acd0b Remove obsolete commented code (follow up to #12166) 2022-04-07 22:38:01 +02:00
x2048 48f7c5603e
Adjust shadowmap distortion to use entire SM texture (#12166) 2022-04-07 22:13:50 +02:00
Jude Melton-Houghton 0b5b2b2633
Disentangle map implementations (#12148)
Fixes violation of Liskov substitution principle
Fixes #12144
2022-04-07 21:58:04 +02:00
x2048 1348d9aaf8
Enable shadows by default in devtest (#12157)
* Move all shadow control to util_commands
* Shadows are now controlled with /set_shadow

Co-authored-by: sfan5 <sfan5@live.de>
2022-04-07 21:55:19 +02:00
Jude Melton-Houghton 21f17e871e
Compile Lua as C++ (#11683)
Co-authored-by: sfan5 <sfan5@live.de>
2022-04-07 15:54:17 +01:00
sfan5 837cea6b4a Fix -mwindows flag not being applied anymore
closes #12165
2022-04-03 21:44:22 +02:00
x2048 b0b9732359
Add depth sorting for node faces (#11696)
Use BSP tree to order transparent triangles
https://en.wikipedia.org/wiki/Binary_space_partitioning
2022-04-02 10:42:27 +02:00
Dmitry Kostenko 26c046a563 Increase the ratio between shadow range and viewing range 2022-04-02 10:39:43 +02:00
Dmitry Kostenko cf650fcaac Avoid negation of comparison operator (luacheck warning) 2022-04-01 09:00:39 +02:00
x2048 3dd7d7867b
Limit shadow map to the viewing range (#12158) 2022-03-31 22:40:59 +02:00
x2048 31578303a4
Tune shadow perspective distortion (#12146)
* Pass perspective distortion parameters as uniforms
* Set all perspective bias parameters via ShadowRenderer
* Recalibrate perspective distortion and shadow range to render less shadow geometry with the same quality and observed shadow distance
2022-03-31 22:40:06 +02:00
Jude Melton-Houghton 06d197cdd0
Store vector metatable in registry 2022-03-29 18:07:00 +02:00
Jude Melton-Houghton 11aab4198b
Optimize swapping nodes with equivalent lighting 2022-03-29 18:06:44 +02:00
DS 8d387433b1
Fix the documentation of InvRef:get_lists() and clean up code (#12150) 2022-03-29 18:06:16 +02:00
x2048 0f25fa7af6
Add API to control shadow intensity from the game/mod (#11944)
* Also Disable shadows when sun/moon is hidden. Fixes #11972.
2022-03-26 16:58:26 +01:00
DS 8d55702d13
Improve lua vector helper class doumentation (#12090) 2022-03-19 12:06:55 +01:00
Daroc Alden e54f5e544f
Fix memory leak in EmergeManager
EmergeManager keeps a copy of the BiomeGen that it creates, but
never deletes it.
2022-03-14 21:01:36 +01:00
Gregor Parzefall 289c3ff377
Fix footsteps for players whose collision box min y != 0 (#12110) 2022-03-14 21:01:18 +01:00
Daroc Alden 11f3f72f1c
Fix undefined behavior in TileLayer (#12125)
Initialize the values properly
2022-03-11 21:22:49 +01:00
sfan5 ad7c72c164 Remove direct OpenGL(ES) dependency
IrrlichtMt now provides this for us (see last commit)
fixes #12041
2022-03-09 22:37:34 +01:00
sfan5 51294163bb Use Irrlicht bindings for GL call 2022-03-09 22:37:34 +01:00
Daroc Alden 598efbf7f9
Fix memory leak from SpatialAreaStore (#12120) 2022-03-09 19:28:12 +01:00
Dmitry Kostenko b651bbf446 Reuse normal offset calculation for nodes 2022-03-07 23:45:26 +01:00
Dmitry Kostenko 4801bdf45a Correct normal bias for entities
Remove use of magic constants.
Apply cameraOffset
Calculate distance projected on SM plane
2022-03-07 23:45:26 +01:00
Dmitry Kostenko 25c1974e0d Change normal bias for entities to avoid shadow acne 2022-03-07 23:45:26 +01:00
Dmitry Kostenko 12896b22d8 Remove debugging code 2022-03-07 23:45:26 +01:00
Dmitry Kostenko e531c59606 Ensure nightRatio is greater than zero in object shader 2022-03-07 23:45:26 +01:00
Dmitry Kostenko 8f652f4e31 Fix shadows for upright sprite nodes
Avoid using read only materials in mesh scene node, as
it confuses shadow renderer.
2022-03-07 23:45:26 +01:00
Dmitry Kostenko 97cb404822 Apply texture matrix when rendering shadowmap
Fixes shadows of animated sprite entities
2022-03-07 23:45:26 +01:00
Dmitry Kostenko d2a3bed240 Avoid possible buffer overflow when checking face normals 2022-03-07 23:45:26 +01:00
Dmitry Kostenko e4583cb9b7 Use correct indexes when checking mesh normals 2022-03-07 23:45:26 +01:00
Dmitry Kostenko a684a91bf5 Fix shadow rendering with filtering disabled 2022-03-07 23:45:26 +01:00
Dmitry Kostenko 1175f48d05 Detect 'insane' normals in checkMeshNormals.
Detect non-zero normals which point in the opposite direction from the
face plane normal.
2022-03-07 23:45:26 +01:00
Dmitry Kostenko 54dccc480e Improve lighting of entities.
Pass correct natural & artificial light to the shaders
Use natural/artificial light ratio for correct rendering of shadows
2022-03-07 23:45:26 +01:00
Dmitry Kostenko f2cccf8da7 Improve self-shadowing based on light/normal angle
Add compatibility with colored shadows.
2022-03-07 23:45:26 +01:00
Dmitry Kostenko 10be033791 Copy shadow mapping shader from nodes to objects 2022-03-07 23:45:26 +01:00
Dmitry Kostenko 4e39cdef94 Apply shadow texture to wield-based entities
For example, dropped nodes and items.
2022-03-07 23:45:26 +01:00
Dmitry Kostenko 2bba53b2c3 Render shadows on entities.
Fixes problem with mod 'drawers'.
2022-03-07 23:45:26 +01:00
Lars Müller b9e886726c
Readd basic_debug as a HUD flag (#12020) 2022-03-05 22:16:17 +01:00
Zughy 44fc888bd6
Allow get_sky to return a table (#11963) 2022-03-05 22:15:41 +01:00
sfan5 f2d1295fe6 Fix segfault with autoscale_mode (again)
closes #12100
This time add some asserts so there is no misunderstanding about the NULL-ness of layer->texture.
2022-03-02 17:49:45 +01:00
sfan5 04bd253390 Move the codebase to C++14 2022-02-26 14:39:41 +01:00
rubenwardy 7db751df3b
Fix broken dependency enabling due to missing `enabled` field (#12093) 2022-02-24 16:01:22 +00:00
SmallJoker f7311e0d97
Lua API documentation: Various fixes (#12059)
Change 1: Clarify when on_step collision information is provided
Change 2: Document PostgreSQL and Redis settings
Change 3: Overall AreaStore documentation improvements including consistent parameter naming based on community suggestions
2022-02-23 21:21:37 +01:00
DS 633e23bd65
FormspecMenu: make drawing of backgrounds less hacky (#9517) 2022-02-22 19:17:53 +01:00