I’ve put everything regarding my shenanigans with curved world and lighting in the repo now ![]()
It’s a fork of the fork and here it mainly is about adding a skybox and a few different Depth of Field effects, including one that is just full screen blur. You can enable a debug preview with configurable colors marking focus area and adjust the values for your scene:
Everything is also explained at the top of the README:
You can tweak different configurations, foe example skip the “curve world” shader totally and have DoF with regular 3D scenes:
There are also few additions to the camera controls in comparison to the original one, so you can now also rotate camera (with configurable limits):
@ackle Thank you, yes, your answer does apply here indeed: the horizontal (or vertical if it’s first) pass is effectively lost because both passes share one constant buffer! I pushed a fix for this too, so you can look up the solution, but there are also other issues regarding just the implementation approach
Treat all of this for learning purposes, and if you have any questions, I would love to answer! ![]()
Few issues also regard frustum culling - the frustum should be adjusted to the curve of the world otherwise objects can disappear or appear while being still in the visible area on the screen as on the video above.
Also fixed the skybox rotation issues ![]()


