Wallpaper Submission - Lens

Light wide version:

Full quality: https://cdn.discordapp.com/attachments/648193583962390528/1156782636929392731/lens_wide_light.png

Dark wide version:

Full quality: https://cdn.discordapp.com/attachments/648193583962390528/1156783147380396042/lens_wide_dark.png

Light tall version:

Full quality: https://cdn.discordapp.com/attachments/648193583962390528/1156783411504095282/lens_tall_light.png

Dark tall version:

Full quality: https://cdn.discordapp.com/attachments/648193583962390528/1156783435323543652/lens_tall_dark.png

Source file for wide versions: https://cdn.discordapp.com/attachments/648193583962390528/1156780975850799235/3p6_Lens.blend

Source file for tall versions: https://cdn.discordapp.com/attachments/648193583962390528/1156780998160298015/3p6_Lens_tall.blend

Links are to files in Discord group chat, but said group is only me.
Therefore, this “group” can be used to share small files (like these).

I used Blender (version 3.6) to create all these.
I used Efficient Compression Tool (FOSS, can be found on github) to shrink file size of “full quality” without affecting pixels.
Specifically, I compiled it (by following readme) and used command “ect -9 -strip --mt-file” (followed by png files).

All these digital lenses created by me, specifically for this KDE Wallpaper competition.
And with accordance to rules, I license all these under CC-BY-SA-4.0
No generative AI is used, only Blender’s built-in AI denoiser (which should be fine, I think).
Wide wallpapers are 5120x2880 and tall wallpapers are 1080x2280, as recommended.

Please note that these take a while to render, especially big (wide) ones.
Cycles is ill-suited for caustics and needed 2^17 samples to be pretty here.
Cycles has Path Guiding and MNEE for some caustics, but these did not help.
So… caustics are essentially brute-forced with classic (backwards) ray tracing.

This scene is inspired by one of render showcases of LuxCoreRender.
Specifically, by Abstract section in the Gallery on the official website.
Maybe I should’ve used LuxCoreRender from the beginning. Oh well.
I am much more familiar with Cycles & scene did not just convert 1:1.

Recursive grid on the ground is procedural and hence not bound by resolution.
The light source is just point light, due to it being off-screen, I think that is okay.
I tried Nishita sky, but in this case just solid dark blue world color looks better.
Lens uses material imitating diamond (including dispersion, which is important).
Lens geometry is also, a diamond. Kinda. It’s Brilliant Diamond with Subdivision modifier.
Built-in add-on “Add Mesh: Extra Objects” adds it (and some other stuff) to Add->Mesh.
I also tweaked lens manually, but only a little bit, overall what it is, is as it was described.
Compositing denoises R, G and B in RGB separately, which is very good for this scene.
Max Bounces for Transmission is set to 2, otherwise there’s nasty caustic in the lens…
It’s pretty, but denoiser can’t clean up it okay even at 2^20 (over 1 000 000) of samples.


Huh. Uploaded jpegs get corrupted (turned into stripped lines) for some reason.
Okay. I’ll try to upload lower resolution pngs instead, for the embed previews…

Edit: Reason was found! It was my browser (LibreWolf) blocking HTML5 canvas access. See developer’s answer ~ https://discuss.kde.org/t/some-uploaded-jpeg-images-get-corrupted/5572/2?u=waterfall And, this also can be caused by extension (like CanvasBlocker), which is just good to know (was not my case).

Alright. Uploading pngs fixed embed corruption.

That’s a beautiful wallpaper :clap:

1 Like

Thank you for the kind words. :slight_smile:

Really nice! I love this kind of stuff.

1 Like

Yay! Thank you for this kind of words (kind words :).