every time i launch minecraft, i have to fix the hi-res filter.
JonathanTippy opened this issue · 21 comments
i play at 1080p with resolution set to 2.0x and hi-res filter set to linear. every time i launch the game, its still set to linear but actually uses nearest. i have to set it to nearest and then back to liner to get it to work again.
I just realized this is happening to me too. No wonder it's been looking so bad. I really hope this gets fixed because now I have to remember to toggle the setting every time. I don't understand why linear is not the default anyway, as increasing the render resolution is usually done to improve visual quality and nearest neighbor looks horrible.
After a little bit of testing:
v2.0.1 + Minecraft 1.16.5 -> no issue
v3.0.0 + Minecraft 1.17.1 -> setting not honored, needs toggling every time the game is launched
I can also confirm that in the config file, the setting is being saved correctly as "LINEAR"
, it's just not being applied. (This can also be confirmed by the fact that when the settings dialog is opened it says it's using linear but it's not.)
I don't know if that helps to narrow it down at all. I can provide any additional debugging steps that are required.
Basic system info:
Windows 7 x64 / MC 1.17.1 stock launcher / Java 16.0.1 (AdoptOpenJDK) / 2GB heap
Mods in use:
advancementinfo-1.17.1-fabric0.36.1-1.2.1.jar
appleskin-fabric-mc1.17-2.1.2.jar
BetterControls-1.17+-v1.2.0.jar
cleardespawn-1.17.1-fabric0.36.1-1.1.1.jar
continuebutton-1.0.4.jar
ctm-fabric-0.5.1+1.17.jar
custom-fog-1.6.0.jar
dynamic-fps-2.0.4.jar
easiercrafting-1.17.1-fabric0.36.1-1.6.7.jar
easiervillagertrading-1.17.1-fabric0.36.1-1.5.4.jar
EditSign-1.17.1-2.2.2.jar
enhancedblockentities-0.4.1+1.17.jar
fabric-api-0.37.1+1.17.jar
FatExperienceOrbs-1.0.1.jar
ferritecore-3.0.1-fabric.jar
horse-stats-vanilla-4.1.8.jar
hydrogen-fabric-mc1.17.1-0.3.jar
indium-1.0.0-dev.d797129+mc1.17.1.jar
lazydfu-0.1.2.jar
litematica-fabric-1.17.1-0.0.0-dev.20210713.103711.jar
lithium-fabric-mc1.17.1-0.7.3.jar
malilib-fabric-1.17.1-0.10.0-dev.24.jar
minihud-fabric-1.17.1-0.19.0-dev.20210707.150016.jar
modmenu-2.0.4.jar
okzoomer-5.0.0-beta.2+1.17.jar
resolution-control-plus-3.0.0.jar
sodium-fabric-mc1.17.1-0.3.0+build.5.jar
starlight-1.0.0-RC3+fabric.1.17.x.jar
tweakeroo-fabric-1.17.1-0.10.0-dev.20210710.155746.jar
winwonders-0.1.2.jar
Nothing obvious in the logfile. I can try creating a new install with just resolution-control-plus-3.0.0.jar
to narrow down a mod conflict (possibly something with sodium/indium?)
Confirmed that it is not a mod conflict, as I can reproduce the problem with a fresh install containing only
fabric-api-0.37.1+1.17.jar
modmenu-2.0.4.jar
resolution-control-plus-3.0.0.jar
Steps to reproduce:
- install above mods
- set render scale to 2x and linear
- quit game, restart
- note that distant thin objects have lots of aliasing
- open the resolution control+ settings menu
- scaling type says linear, click it to toggle to nearest, and note that the screen does not change when it toggles
- click it a second time to go back to linear, this time the screen changes and looks much more anti-aliased, not at all like when the game started
Are you referring to UltimateBoomer or fantahund99?
fantahund99 has been maintaining the extension, updating it to 1.18 and 1.19 — they uploaded a 1.19.3 version on Curseforge just a few weeks ago. I guess they were granted CF upload privileges but they must be working out of a different Github repo because this one has not been touched.
The scaling issue described here still exists in their 1.19.3 port, too, though.
Oh, excuse me, I wasn't aware. I was referring to UltimateBoomer.
Found fantahund's repo: https://github.com/fantahund/Resolution-Control/tree/1.19.3
I was going to suggest that we move this issue there for visibility, but they have Issues disabled so there's no way to do that.
@fantahund Do you have any thoughts about this longstanding bug?
Don’t know if theyre gonna ever fix it, I’ve at least gotten used to exiting and reentering fullscreen to fix it every time I restart my game
I contacted the developer a few weeks ago and they said that they're not planning on maintaining ResolutionControl+ for the time being.
Of course, it's open source and it's github, so if anyone else knows how to fix this or other issues, I reckon they're welcome to do so and either fork the project or make a pull request with fixed code.
Are you referring to UltimateBoomer or fantahund99?
fantahund99 has been maintaining the extension, updating it to 1.18 and 1.19 — they uploaded a 1.19.3 version on Curseforge just a few weeks ago. I guess they were granted CF upload privileges but they must be working out of a different Github repo because this one has not been touched.
The scaling issue described here still exists in their 1.19.3 port, too, though.
Issues are now active with me. I have to take a look at the problem in the next few days.
Issues are now active with me. I have to take a look at the problem in the next few days.
I copied over this issue to the fork: fantahund#1
I finally got tired of this and debugged the issue. Fix is easy:
+++ b/src/main/java/io/github/ultimateboomer/resolutioncontrol/ResolutionControlMod.java
@@ -141,10 +141,12 @@ public class ResolutionControlMod implements ModInitializer {
Window window = getWindow();
if (framebuffer == null) {
this.shouldScale = true; // so we get the right dimensions
- framebuffer = new WindowFramebuffer(
- window.getFramebufferWidth(),
- window.getFramebufferHeight()
- );
+ var w = window.getFramebufferWidth();
+ var h = window.getFramebufferHeight();
+ framebuffer = new WindowFramebuffer(w, h);
+
+ // necessary to trigger initFbo() so that scaling algorithm is set correctly
+ framebuffer.resize(w, h, MinecraftClient.IS_SYSTEM_MAC);
calculateSize();
}
The issue is the framebuffer is being created without the scaling attributes being applied. A dummy call to resize()
causes that to happen via initFbo()
.
This is wonderful work purple512! Might be easy fix for you but I certainly couldn't figure it out myself with my limited coding knowledge!
I took the time to fork the project and add your changes to fix this issue for 1.18.x, 1.19.x, 1.19.3, 1.19.4 and 1.20.x.
Compiled them and added to the releases.
I added a link to your comment to the top of the README.md to credit you.