sp614x / optifine

1.79k stars 418 forks source link

Backport 1.14 Resolution/Refresh Rate Features #3255

Open da3dsoul opened 4 years ago

da3dsoul commented 4 years ago

I don't know what your rules on backports are, if you even consider them for anything but fatal bugs. I have an LG B9 OLED. It's a big, 4k 120Hz HDMI 2.1 TV. Needless to say, HDMI 2.0b is what my GTX1060 has, so it's 4K60 or 1080p120. Some games handle that better than others, so I'm kind of used to it clamping me to 60Hz even for 1080p. In 1.12, my only option is to attempt to play 1080p with whatever refresh rate it decides on (60 with Optifine...4K without). That was okay, and I was going to live with it. Then I tried a 1.14 pack, and it's hard to go back, as it let me appropriately tell this fabulous TV to run at the 1080p120 that it should. I would just let it go to 4k, but I can't read any of the UI, and I can run it at 40fps...sometimes.

TL;DR Can you please backport the Fullscreen Resolution/Refresh Rate Selector from 1.14 to 1.12? I can usually play the game without it, but it actually would make some mod packs playable when they weren't before. Other TVs with less intelligent EDIDs would benefit even more.

McHox commented 4 years ago

just set the preferred refresh rate in the nvcp to max available and it should override whatever is set ingame

da3dsoul commented 4 years ago

Thanks for the advice. Sadly, that setting doesn't work for this (also not a thing on my other machine with an RX570 afaik). I have outrageous tearing on 1080p, which leads me to believe that it's actually running at lower than 60Hz, as well. My TV doesn't have an OSD section that reports the current refresh rate, so it's hard to say for sure. I sent them an email about that one, considering it's a GSYNC certified TV...and $2000. On the 1.14 version, I don't have tearing, and it's just visibly way smoother (and actually says the refresh rate in the video settings).

EDIT: looks like one of the TV's dev menus has refresh rate info. I'll start Minecraft and check what it's actually running at.

I'll note ahead of time that CRU is unnecessary. 1080p120 is a reported view mode of the TV. Crysis 3 (another random game I tried) and Optifine 1.14 will both do it no questions asked.

EDIT2: That's why the tearing...

1920x1080P @ 59.92Hz RGB 8BIT xvYCC601
NO_AUDIO 0Ch 48000Hz
HDMI Mode: HDMI, HDR Type: SDR

Active Res: 1920x1080, Total Res: 2200x1125, Pixel Clk: 148.400 MHz

Note that it's at almost 60Hz. I get tearing because Minecraft (probably most things) rounds the VSync to 60, then when it hits 60, it tears.

EDIT3: now that I know why it was tearing, I set the max FPS to 60 rather than VSync, and force enabled VSync in NCP. That helped a lot with the tearing. That makes it playable, though 120Hz and not needing to go through this would be nice. I'm no beginner to tech, but even my dad, a Network Engineer of 20 years, would Google this, come up short, then give up and not use it. It seems like a relatively simple feature to backport and would save countless headaches.

EDIT4: after playing for a while longer, the tearing is still really bad, even with VSync force enabled. Ladders and vertical panning while mining really mess with it.