optifine icon indicating copy to clipboard operation
optifine copied to clipboard

[1.21.3/1.21.4 J4 Feature Request] Option to override render distance-based sky saturation

Open SeaOfPixels opened this issue 1 year ago • 7 comments

Description of the new feature

Currently, the saturation of the sky is determined by render distance. This is a problem because it's near-impossible to make a skybox that looks good at both low render distances (desaturated) and high render distances (overly saturated). There should be an option (ideally in color.properties, or alternatively sky properties files) to force the sky saturation given at a designated render distance to apply to all render distances.

For example, providing the field render_distance.sky_color=16 in a color.properties file would force the sky to have the 16 render distance saturation at all render distances. This would be incredible for pack creators, as currently custom skyboxes look terrible at very low and very high render distances.

Screenshot comparison of the current forced render distance sky saturation

2 Render Distance (desaturated): 2024-11-22_07 35 22

32 Render Distance (overly saturated, bottom portion renders fully white because of it): 2024-11-22_07 35 27

16 Render Distance (ideal saturation): 2024-11-22_07 35 57

SeaOfPixels avatar Nov 22 '24 15:11 SeaOfPixels

This could be added, but then the far edge of the clouds isn't going to blend with the sky:

Image

default sky fog distance:

Image

sp614x avatar Feb 21 '25 15:02 sp614x

To fix it the the cloud render distance could also be increased which may affect the FPS.

sp614x avatar Feb 21 '25 16:02 sp614x

My pack encourages clouds to be off so this wouldn't effect me personally. If it were able to be an option enabled in resource packs then I think it'd be a great addition, since it wouldn't effect people not using a specific resource pack that enables it. I would personally advocate for the route that doesn't affect FPS, again because my pack doesn't use the vanilla clouds.

Sidenote: there is currently no way afaik to force vanilla clouds to be off specifically when using OptiFine inside a resource pack, which would also be a great addition.

SeaOfPixels avatar Feb 21 '25 20:02 SeaOfPixels

Resource packs can disable clouds by including a transparent clouds.png.

sp614x avatar Feb 21 '25 23:02 sp614x

I meant for only when using OptiFine, so that they show when playing vanilla/snapshots since there's no custom sky there.

SeaOfPixels avatar Feb 22 '25 01:02 SeaOfPixels

Just don't make clouds.png 1x1 or else it causes issues i've found, killing mipmapping/etc

lowercasebtw avatar Feb 22 '25 05:02 lowercasebtw

There is clouds=off in color.properties: https://github.com/sp614x/optifine/blob/master/OptiFineDoc/doc/color.properties#L310

sp614x avatar Feb 22 '25 09:02 sp614x

This could be added, but then the far edge of the clouds isn't going to blend with the sky:

Image

default sky fog distance:

Image

This is already the case in the current implementation, clouds don't blend into the bluer sky at higher render distance, so I don't see a problem with implementing this.

SeaOfPixels avatar Apr 18 '25 22:04 SeaOfPixels

With the expanded cloud render distance in 1.21.5, I don't see why this can't be added now.

SeaOfPixels avatar Nov 25 '25 05:11 SeaOfPixels