<feed xmlns='http://www.w3.org/2005/Atom'>
<title>minetest.git/src/client/shadows, branch dual_wielding</title>
<subtitle>lizzy's patches for luanti
</subtitle>
<id>https://git.vlhl.dev/lizzy/luanti/minetest.git/atom?h=dual_wielding</id>
<link rel='self' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/atom?h=dual_wielding'/>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/'/>
<updated>2022-11-20T20:28:01+00:00</updated>
<entry>
<title>Avoid shadow flicker at certain angles (#12961)</title>
<updated>2022-11-20T20:28:01+00:00</updated>
<author>
<name>x2048</name>
<email>codeforsmile@gmail.com</email>
</author>
<published>2022-11-20T20:28:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=70a82b07844ce5187ba030110ea84c0e6c07c291'/>
<id>urn:sha1:70a82b07844ce5187ba030110ea84c0e6c07c291</id>
<content type='text'>
Change the way look direction and camera position are quantized when calculating light frustum

</content>
</entry>
<entry>
<title>Reduce exposure of various internals (#12885)</title>
<updated>2022-11-03T16:35:31+00:00</updated>
<author>
<name>Loïc Blot</name>
<email>nerzhul@users.noreply.github.com</email>
</author>
<published>2022-11-03T16:35:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=322c8cf270a6fe2cd6ac152af0f3f5d2963fa0b3'/>
<id>urn:sha1:322c8cf270a6fe2cd6ac152af0f3f5d2963fa0b3</id>
<content type='text'>
* refactoring(StaticObjectList): don't expose m_active and m_stored anymore

This prevents our old crap code where anyone can access to StaticObjectList. use proper modifiers. It also permits to do a short cleanup on MapBlock using a helper

* refactoring(MapBlock): reduce a bit exposed m_active_blocks variable

* refactoring: MapBlock::m_node_timers is now private

We already had various helpers to perform this privatization, just use it. Also factorize the MapBlock stepping code for timers using already existing code and importing them from ServerEnvironment to MapBlock.

It's currently done pretty straight forward without any inheritance as MapBlock is just used everywhere, maybe in a future we'll have ServerMapBlock over MapBlock. Currently for a simple function let's just use proper objects and add a comment warning

* refactoring(Server): fix duplicated function for add/remove node

* refactoring(guiFormSpecMenu): add removeAll function to prevent duplicated code

* refactoring(ShadowRenderer) + perf: code quality  + increase performance

* All callers are already using the point and we should never test a function with nullptr node, it's a bug. Removed workaround which was hacky and fix the bug
* Drop clientmap lookup from shadowrendered, just use directly its
  pointer and forbid to push it in the generic list
* Reduce memory pressure on the renderShadowObject by preventing
  deallocating and reallocating multiple vectors on each node

* refactoring(MapBlock): reduce exposure of MapBlock::m_static_objects

It's not complete as some parts of the code are pretty nested, but it's better than before :)

* fix: better working on new functions &amp; drop unwanted 2 lines

Co-authored-by: Jude Melton-Houghton &lt;jwmhjwmh@gmail.com&gt;

Co-authored-by: Jude Melton-Houghton &lt;jwmhjwmh@gmail.com&gt;</content>
</entry>
<entry>
<title>Shadow list improvements (#12898)</title>
<updated>2022-10-26T20:26:09+00:00</updated>
<author>
<name>x2048</name>
<email>codeforsmile@gmail.com</email>
</author>
<published>2022-10-26T20:26:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=88820cd31c2fe21c8c16ee547a3335131e8ba009'/>
<id>urn:sha1:88820cd31c2fe21c8c16ee547a3335131e8ba009</id>
<content type='text'>
* Remove redundant checks when attaching SM texture to entities.
  Some of the checks were broken, leading to crashes when shadow intensity is set to 0
* Avoid memory leak in shadow casters list when wield mesh changes item stacks</content>
</entry>
<entry>
<title>Implement rendering pipeline and post-processing (#12465)</title>
<updated>2022-09-06T06:25:18+00:00</updated>
<author>
<name>x2048</name>
<email>codeforsmile@gmail.com</email>
</author>
<published>2022-09-06T06:25:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=ff6dcfea82974df6db5a557e31aaddb6bdb7a71f'/>
<id>urn:sha1:ff6dcfea82974df6db5a557e31aaddb6bdb7a71f</id>
<content type='text'>
Co-authored-by: Lars Mueller &lt;appgurulars@gmx.de&gt;
Co-authored-by: sfan5 &lt;sfan5@live.de&gt;
Co-authored-by: lhofhansl &lt;lhofhansl@yahoo.com&gt;</content>
</entry>
<entry>
<title>Release shadow mapping resources when not needed (#12497)</title>
<updated>2022-07-09T20:26:39+00:00</updated>
<author>
<name>x2048</name>
<email>codeforsmile@gmail.com</email>
</author>
<published>2022-07-09T20:26:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=7c261118e06c630ea9ad00f20d7005b8edc108dd'/>
<id>urn:sha1:7c261118e06c630ea9ad00f20d7005b8edc108dd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Force-update shadows when the world is changed (#12364)</title>
<updated>2022-05-26T20:28:34+00:00</updated>
<author>
<name>x2048</name>
<email>codeforsmile@gmail.com</email>
</author>
<published>2022-05-26T20:28:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=ef22c0206f225dbccd67bff9fb888867c63039b3'/>
<id>urn:sha1:ef22c0206f225dbccd67bff9fb888867c63039b3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Quantize light frustum calculations (#12357)</title>
<updated>2022-05-23T21:45:18+00:00</updated>
<author>
<name>x2048</name>
<email>codeforsmile@gmail.com</email>
</author>
<published>2022-05-23T21:45:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=ed26ed5a1f49fc66facd4a745d29441aba5a92c3'/>
<id>urn:sha1:ed26ed5a1f49fc66facd4a745d29441aba5a92c3</id>
<content type='text'>
* Quantize light frustum calculations

Reduces shadow flicker

* Fix function name to match conventions</content>
</entry>
<entry>
<title>Improve shadow filters (#12195)</title>
<updated>2022-05-21T14:49:30+00:00</updated>
<author>
<name>x2048</name>
<email>codeforsmile@gmail.com</email>
</author>
<published>2022-05-21T14:49:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=dc45b85a543b4c8ad72f69a554ecfe7f0a60c533'/>
<id>urn:sha1:dc45b85a543b4c8ad72f69a554ecfe7f0a60c533</id>
<content type='text'>
* Rewrite shadow filtering for the new distortion
* Calculate penumbra radius using a single sample
* Avoid peter-panning effect due to filtering of short shadows
* Add adaptive filter quality for soft shadows
* Avoid sharp shadows on surfaces without normals (e.g. plants)
* Increase default and maximum soft shadow radius
* Make line numbers in shader errors match the code</content>
</entry>
<entry>
<title>Deal with compiler warnings</title>
<updated>2022-04-30T14:49:41+00:00</updated>
<author>
<name>sfan5</name>
<email>sfan5@live.de</email>
</author>
<published>2022-04-28T18:53:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=a89afe1229e327da3c397a3912b2d43d2196ea2b'/>
<id>urn:sha1:a89afe1229e327da3c397a3912b2d43d2196ea2b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Implement shadow offsets for the new SM distortion function (#12191)</title>
<updated>2022-04-14T20:49:30+00:00</updated>
<author>
<name>x2048</name>
<email>codeforsmile@gmail.com</email>
</author>
<published>2022-04-14T20:49:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vlhl.dev/lizzy/luanti/minetest.git/commit/?id=a5d29fa1d4bc6849d7a6529edc522accac8219d2'/>
<id>urn:sha1:a5d29fa1d4bc6849d7a6529edc522accac8219d2</id>
<content type='text'>
* Move shadow position calculation to vertex shaders
* Animate entire scene before rendering shadows to prevent lagging of shadows
* Remove unnecessary use of PolygonOffsetFactor
* Apply normal offset to both nodes and objects
* Rename getPerspectiveFactor -&gt; applyPerspectiveDistortion
* Remove perspective distortion from fragment shaders</content>
</entry>
</feed>
