Using supersampling to take higher-resolution screenshots without those ugly stitching artifacts
소개
If you like to make GMod posters, you may have run into a desire to take higher-res screenshots than your monitor supports. 예를 들어, I’m stuck with a 1080p monitor, which can mean that small details in posters can be difficult to see sometimes.
The common advice you hear for this is to use the “poster” 명령. 예를 들어, “poster 2” will create a screenshot with 2x the horizontal and vertical resolution (예를 들어. 1920×1080 -> 3840×2160). 안타깝게도, this method can cause some nasty visual artifacts. To demonstrate, 여기 a comparison, with the same basic shot taken with multiple settings. 보시다시피, the second pic looks awful – the water reflection is totally broken, and there’s a clear seam where the image was stitched together.
하지만, the album also contains a third image – a proper 4k screenshot with none of these artifacts, 사용하여 “supersampling”. What exactly is this, and how can it help us?
슈퍼샘플링
슈퍼샘플링 involves rendering the game at a higher resolution than your monitor normally allows, and then scaling it down afterward. It’s normally used as an anti-aliasing strategy (the additional pixels allow a smoother image to be created), 하지만 you can also take advantage of that higher resolution for your screenshots.
It turns out that graphics drivers have built-in ways to enable supersampling. Here are instructions on how to enable it for both Nvidia and AMD cards. If you already know this stuff, feel free to skip to the “What to do with supersampling” 부분.
Enabling supersampling with Nvidia
Nvidia’s supersampling feature is called Dynamic Super Resolution, or DSR.
- 열려 있는 엔비디아 제어판. You should be able to find it in the Start menu.
- 다음으로 이동하세요. 3D 설정 관리 메뉴, underneath the “3D Settings” header on the left.
- Make sure you’re in the Global Settings 꼬리표, rather than the Program Settings tab. (Don’t worry that the setting is global – this will just enable additional resolution options in your games, it shouldn’t affect anything by default.)
- Scroll down to the DSR – Factors setting and select it.
- Underneath the Legacy scaling 부분, check off the resolutions you wish to enable, 그런 다음 클릭하세요. 좋아요. (메모, this is based on the pixel count and not the scale factor, so 4.00x is actually just double width and height.)
- 마지막으로, 딸깍 하는 소리 적용하다 at the bottom to actually save your changes.
그리고 당신은 끝났습니다! You can proceed to the “What to do with supersampling” 부분.
Enabling supersampling with AMD
AAMD’s supersampling feature is called Virtual Super Resolution, or VSR.
메모: I don’t have an AMD card myself, so these instructions come straight from this article. If someone wants to confirm that these steps are correct, that’d be much appreciated.
- 열려 있는 AMD Radeon Software.
- Click the gear icon in the upper right, 그리고 표시하다 꼬리표.
- Turn the Virtual Super Resolution setting on. This will enable all supported supersampling resolution options in-game.
Image credit Alan Bradley, via PCMag
What to do with supersampling
So now you have supersampling enabled, but how do you use it? 간단합니다: once you’re in-game, just go to 옵션 > Video and check out the resolution settings. If you’ve done everything right, you should see new option(에스) that let you use higher than native resolution.
Once you’re using the higher resolution, all you need to do is use the poster 1 명령 (~ 아니다 poster 2, 단지 1), or take a screenshot in some other way, and bam – you’ve got yourself a pic with as high a res as possible, and none of those ugly stitching artifacts!
There are a couple caveats worth mentioning, 하지만:
- GMod doesn’t have any UI scaling, so the UI will only show up at half scale and make things very difficult to use. 나는 추천하고 싶다 only switching for the moment you’re ready to take the final shot. 그만큼 “mat_setvideomode” 명령 (described below) can help a little with this.
- 이것 does not work properly with borderless window. You’ll only be able to see the top left corner of the screen. You need to use proper fullscreen mode if you want to see the whole game (although the “poster” command will still work fine regardless).
Shortcut command to change resolution
mat_setvideomode is a console command that simply changes the resolution and display mode settings. It’s not strictly necessary, but it’s a very nice convenience, since you can bind it to a key and it skips having to navigate the menus (which can be difficult while you’re set to a higher res).
The syntax is:
mat_setvideomode [w] [시간] [방법]
어디 w is width, 시간 is height, 그리고 방법 is either 0 for fullscreen, 1 for windowed, 또는 2 for borderless windowed.
예를 들어, I currently have one key bound to mat_setvideomode 3840 2160 0, to set 4k resolution and fullscreen mode; and another key bound to mat_setvideomode 1920 1080 2, to return to normal 1080p resolution and borderless windowed mode.
명심하세요, 하지만, that this doesn’t let you skip turning on supersampling in your graphics driver settings. If you give the command an invalid resolution (anything that wouldn’t normally appear in the settings menu) it will just default to 640×480 대신에. So it really is just a convenience, nothing more.