bradleyq / mc_vanilla_shaders

MC vanilla fabulous shaders
MIT License
244 stars 5 forks source link

Toggles for various settings #1

Open seeruk opened 4 years ago

seeruk commented 4 years ago

Fantastic work on these shaders. They definitely feature the best bloom of any 1.16 shaders I've tried (the others all seem to either make things blurry or have some kind of smear next to things). The reflections are very cool too, hopefully this functionality is here to stay in Vanilla because this sort of thing makes a huge difference.

One thing that would be great in these shaders is if we could toggle functionality. For example, although the reflections are very cool, there are some issues with them (like they bob up and down as you move). It might also make it easier for people with worse rigs to be able to run these shaders. At the moment I just figured out the bit I needed to delete to play with the things I don't want, but some toggle in one of the shader files or something would work great!

bradleyq commented 4 years ago

Yeah, this was kind of a pet project for me but now that it is getting some attention, I will try cleaning up the code in the near future. i will keep some convenient toggle uniforms in mind.

bradleyq commented 3 years ago

1.17 allows for #include which will make this very easy (hopefully). It will not, however, be coming in 1.16

Reeses-Puffs commented 3 years ago

there's a mod called respackopts that could be used for configuration in game, though I've only seen it used with shaders made for canvas

bradleyq commented 3 years ago

it's great if it works but I don't plan to build around any mods

AlienXtream commented 3 years ago

would you be able to provide us some kind of instructions to modify the parameters manually ourselves? like, if i wanted to tone down the exposure by some amount what would i change. i wouldn't expect anything like mod support. i dont even have any expectations at all honestly. i was just after some nice soft bloom when i found out that vanilla can actually do that and so much more! XD i wonder if mojang will ever allow interaction between datapacks and shader packs too... so, for instance, being able to apply shaders under specific game events (like nightvision being fine at night but blinding in bright areas, or blindness actually making the DoF super shallow or even double vision from explosions!! :O)

AlienXtream commented 3 years ago

sorry... i just nerded out there XD

bradleyq commented 3 years ago

interesting ideas. I will keep them in mind. As for the exposure issue, I updated #12 with instructions to tone down exposure to your liking.

AlienXtream commented 3 years ago

im curious. what render layers do you have access to for shaders. i gather you have the depth buffer and composite render but does it have other layers too? like what about glow maps or advanced stencil buffers?

bradleyq commented 3 years ago

there is no infra provided beyond albedo and depth. Everything else is done through trickery. Of course, hacking gets you a long way. For example: https://github.com/BalintCsala/PathTracing1.17

I wouldn't say anything is impossible but you will need to hack it together yourself.

AlienXtream commented 3 years ago

thats annoying. dont know why those passes aren't exposed. means that the bloom has to be a soft blur based of pixel brightness rather than emission pass. hopefully it will get some more love for 1.18+ "1.19- the "spic 'n' span update" :P

Larandar commented 3 years ago

Since there is no more work on shaders at least until the end of the year, may I propose a solution for changing parameters:

The big picture is to generate a ZIP for the user depending on a preset he choose (like Vanilla Tweaks), and since I'm mainly a developer my hammer is to make a script do it with the following milestones:

Note before reading: I'm confident that I can implement a part of those in a reasonable amount of time, so don't fear if you like it but are not prepared to implement them yourself.

Milestone 0.1: Proof of Concept

This is a proof of concept, mainly so that you and the users can validate if we go deeper in this road. At that point, we would be able to either tinker with presets or even generate a few desired configs for releases (like Saldur who has multiple presets). The one requested in this issue seems to be a more "moody" preset for example (and I personally would like it too since I'm playing hardcore and cave are not terrifying at all (yes I'm a masochist).

Milestone 0.2:

Milestone 0.3:

Milestone 0.4:

Anyway I love the work you have done and I the shader pack every day (except in Enigmatica where there are too many mods that hate shaders...)

Reeses-Puffs commented 3 years ago

That solution is incredibly complicated and sounds like far too much work for a simple shader config system.

Larandar commented 3 years ago

Until there is a vanilla way to configure Ressource Pack it's unfortunately the only way there is, for that reason this is how Vanilla Tweaks is done.

As for complexity I don't think it's that far off of a good we of coding per milestone IMO