Moo-Ack-Productions / MCprep

Blender python addon to increase workflow for creating minecraft renders and animations
https://theduckcow.com/MCprep
GNU General Public License v3.0
287 stars 24 forks source link

Massive Improvements for Global Illumination and Sky Shader #638

Open leonardofries opened 1 month ago

leonardofries commented 1 month ago

Name of asset submission

[Improvement] Massive Improvements for Global Illumination and Sky Shader

Quality checks

Describe any usage details

I've redone the World Shader so the Sky and Global Illumination look more like the trailers from Mojang. This is perfect for use with the Barebones Texture Pack.

Parts of the changes are:

I tried my best to make the shader readable. Changes are located on: Shader Tab > World Volume > Shader Tab Sun/Moon > Transform Rotation & Custom Property for Extra Rotation Control & Shaders Render Tab > Color Management

I'll make a youtube tutorial explaining in depth the changes and how to recreate the Trailer Style on my YouTube in the future too. For now, you can dissect the changes I made on the file Not sure on how to send the file so here's the Drive link for it. https://drive.google.com/file/d/1CsUnoDbMkXsSGKEB9-5KwWnyXCa1Lvqx/view?usp=drive_link

Day1

Night1

Home1

[IMPORTANT UPDATE]

Tutorial Incoming - Should last 20 minutes and explain how I made the shader from the ground up

Shader Fix - I like to iterate my creations, and this one I have fixed it to an even better point. Fully works in Eevee, Cycles, Blender 4.2, and up to 2.8. More Minecraft feel. Works with default texture pack. Patch coming this week (06/10)

What name should we use to credit you in the README.md file?

Leonardo Frito

What credit url should we use to reference you in the README.md file?

instagram.com/leonardofrito

Confirmation

TheDuckCow commented 1 month ago

Looks really nice @leonardofries!

I'm curious, do you think at this moment that this shader setup would be appropriate for all users - Ie replacing the current one entirely, or that it should be an additional option?

The other detail is that we want to support as old versions of blender as possible - when I get a chance I'll see how far I can downgrade or, but are you aware of which version of blender you saved it on/any features it's using which would prevent it from being used in the 2.8x or 3.x series? Not necessarily a blocker, but is a consideration.

Looking forward to the tutorial - and appreciate your patience while we review.

StandingPadAnimations commented 1 month ago

I'm curious, do you think at this moment that this shader setup would be appropriate for all users - Ie replacing the current one entirely, or that it should be an additional option?

I think we could add this as a separate "trailer" option, since this is more geared for a trailer style, but then backport parts of it the current "in-game" sky

leonardofries commented 1 month ago

@TheDuckCow It can be used by all players without problems. I made the whole day and night cycle for that. I have given a lot of creative control over the entire thing, so you can turn the Global Illumination on and off or change the strength of it. As far as I'm concerned the default values I left at will make the render look like the trailers when used with the Barebones texture pack, but should look good on the default textures too.

And about Backwards compatibility, that's something to be checked, I don't think it would go all the way to 2.8, but it can go back a couple versions with no issues

TheDuckCow commented 1 month ago

Ok that's a good suggestion @StandingPadAnimations, giving it as another option would also mitigate the need to get it working too far back in terms of blender versions. I'm not sure how common it would be, but perhaps we could actually generalize the system such that we have a skies folder for different sky setups, allowing users to create their own custom ones. A little extra work, but would make it more feasible to merge this work in sooner.

Uploading your source blend after zipping it up, so we have a longer term record of it (in case the drive link dies) Proj Terr - Barebones.blend.zip

Demo file is really nice @leonardofries! Curious, have you rendered this out and shared somewhere? Would love a to link to it.

leonardofries commented 1 month ago

@TheDuckCow I'll have a video by tomorrow. For now I only have these weird test images and the ones on the original post 1 - Blossom - Lyncon 2 1 - Blossom - Lyncon 2 - Bau - Lyncon

TheDuckCow commented 1 month ago

lol wonderful, looking forward to it haha

leonardofries commented 1 month ago

Good news and not so bad news. It seems to be fully compatible up to 2.8. But one thing will be missing. I wasn't around the 2.8 era, I think I came in at 2.83 and only learned it fully at 2.9. So, not sure on this one, but you can't add a Input to Rotation on the Mapping Node, so I could not think of a way of making the stars rotate in the background as the time passes. The rest works fine. I'll be uploading these files soon

https://github.com/user-attachments/assets/13b292b7-16f4-4b20-93c3-cae91f14afdc

leonardofries commented 1 month ago

Default Texture Pack Checks Out for me! Default Test - 4 Default Test - 1 Default Test - 2 Default Test - 3

leonardofries commented 1 month ago

image Works exactly the same as in blender 4.4 except for Rotating Stars As The Time Pass and the Truncate Modulo that fixes the time thing. I don't have time to fix these, but the Truncate Modulo can be made with the Math Nodes Available. And I'm pretty sure theres a way to animate the rotation of the noise texture (ie: stars)