How To Take Artistic Screenshots

From Valve Developer Community
Jump to navigation Jump to search
English (en)日本語 (ja)Translate (Translate)
Todo: write a more about 16xq CSAA (add images). In the past, 16xQ CSAA was popular with older NVIDIA graphics cards such as the GeForce 200 series and earlier[Clarify].

Introduction

This article covers the creation of artistic screenshots which are higher in artistic quality than typical screenshots. The objective of this article is to approach screenshot creation more along the lines of photography.

Graphics quality

Modern graphics hardware is often capable of much higher quality rendering than what it commonly runs at, as gaming usually involves a compromise between image fidelity and rendering cost. Various tricks such as anti-aliasing can help hide jagged, step-like boundaries at the edges of polygons, but at the expense of lowering the framerate on less expensive hardware. However, taking screenshots is not about performance. Instead of rendering images perhaps thirty or forty times a second, our aim is to render a single image which is to be displayed for perhaps minutes at a time — so the aim is to jack your graphics card's settings up as far as they'll go.

Nvidia NVIDIA

Warning.pngWarning:Any Nvidia Nvidia cards made after Maxwell architecture (GeForce GTX 745/750/750 Ti, GTX 800M/900 series and later) with the latest drivers will lose the ability to use other anti-aliasing techniques (CSAA for example) other than in-game MSAA, SSAA (through NVIDIA Profile Inspector) or post FX methods like FXAA, TAA, etc... (through injectors like ReShade, ENB, built-in NVIDIA Control Panel or in some third-party games/branch).

Furthermore, if you are using ReShade to take screenshots, you must disable MSAA and use its own AA method (FXAA, SMAA, etc...) to make sure depth buffer access is working properly, which allows you to add effects such as ambient occlusion.
Warning.pngWarning:If ambient occlusion is used, then the fog may not work well with it.

Nvidia Nvidia graphics cards are currently the most popular, followed by its rival AMD's Radeon (formerly ATI prior to acquisition), and the lower-end Intel (except the new Arc series, which is high-end). On an NVIDIA GeForce 6600, for example, there are graphics settings which are not directly accessible through Source's in-game configuration screens — there is an additional "8xS" anti-aliasing setting which is definitely worth pursuing for taking screenshots, due to the significantly improved image quality when rendering masked textures such as foliage, fences and gratings. In newer cards, such as Maxwell series and above (GTX 745/750Ti, 800M/900 series and newer, and/or later driver updates) lose the ability to use other anti-aliasing techniques such as CSAA, but SSAA is still possible through third-party applications.

Examples of some of the anti-aliasing levels available are shown below:

No anti-aliasing
8x MSAA (Click to enlarge)
SSAA 4x4 (Click to enlarge)
Best possible result, with jagged edges on towers completely disappear, at the cost of performance.
16xS (SSAA 2x2 & MSAA 4X) (Click to enlarge)
Similar to SSAA 4x4, although less demanding.

First of all, start the game with the mod of your choice and set everything except anti-aliasing to as high as it will possibly go; Model detail, Texture detail and Filtering mode will make the most visible differences. An example screenshot is shown below:

Advanced Video Settings (on a NVIDIA GTX 750Ti)
Note.pngNote:If you are running DirectX 8 level (or have Intel GPU — see below), "High" shadow option is not available, and all graphical options will be limited to lower settings. To fix this, run the game with -dxlevel 95 once, then quit, and remove the command line (required otherwise your graphics settings will be reset), run the game again, Hardware DX level should shown as: DirectX 9.0+. Set the graphics to as high as it will possibly go again.

Next, quit the game. There are two methods of anti-aliasing:

MSAA/FXAA

Note.pngNote:Source, as well as NVIDIA Control Panel only provides options to enable MSAA, CSAA (older NVIDIA GPUs), FXAA (Counter-Strike: Global Offensive, Xengine only) on the video settings. Enabling other AA methods like the highest quality SSAA requires you to use third-party applications such as NVIDIA Profile Inspector.
Note.pngNote:MSAA is not available in Xengine Xengine (Black Mesa) after Xen update, because it does not work correctly with certain implementations of deferred lighting or deferred rendering.

For MSAA or FXAA, right-click on the desktop and select NVIDIA Control Panel, then click on the Manage 3D Settings. Choose Global Settings or Program Settings (then select Half-Life 2, or Half Life[sic]: Source), if you haven't added it, click on Add and locate common\Half-Life 2\hl2.exe. Done. We now want to select the highest anti-aliasing mode available, so in the Settings (Global) or Specify the settings for this program (Program settings), click on Antialiasing - Mode, select Enhance the application setting (or Override, if available) then click on Antialiasing - Settings, choose the maximum that the card would support it. In the original author's case, this is to "8xS" (1x2SS + 4x MS). In older NVIDIA cards, 32x CSAA is the maximum. Most modern PCs equipped with modern GPU (such as NVIDIA GeForce GTX 750Ti, 800M/900 series and newer, including all RTX cards), running latest drivers, "8x" MSAA is the maximum available. FXAA option is also available, which can be used alongside MSAA to reduce jagged edges that MSAA missed. Another example screenshot is shown below:

NVIDIA display properties on GTX 750Ti, Windows 11.

Click on Apply buttons, close the NVIDIA Control Panel, and restart the game. In the author's case, bringing up the console and typing mat_antialias 8 appears to be necessary to enable the "8xS" anti-aliasing. Once this is done, there should be precipitous drop in framerates, so type in sv_cheats 1 and load your map - the game is now ready for screenshots!

SSAA (highest quality)

Note.pngNote:It is impossible to force AA methods such as SSAA in Source games that use Direct3D 11 (DX11), or uses deferred lighting/deferred renderer (Xengine) using NVIDIA Profile Inspector. This also applies to Source 2 games. Using NVIDIA DSR or increasing the render resolution (over 100%, if the game has this feature) combined with other post-processing method can be used as a workaround for SSAA. Importantly, using DSR on certain games will cause the HUD to be blurrier, or cause certain games UI to not scale properly (VGUI will be smaller).
Note.pngNote:SSAA are more demanding than MSAA, but if you have a powerful graphics card, such as higher end NVIDIA GTX/RTX cards, the game would still be playable over 60FPS as SSAA only drops from capped "300" to "100-200" FPS.
NVIDIA Profile Inspector, with "Half Life: Source" profile selected. AA settings was set to 16xS, which combines SSAA 2x2 and MSAA 4x.

To enable SSAA, which is the highest quality anti-aliasing method available, you need a third-party software called "NVIDIA Profile Inspector", after opening it, select Half-Life 2, or Half Life: Source, then change Antialiasing compatibility (DX9) to 0x004000C1 (0x004000C0 for Left 4 Dead and later branch), set AA mode to "Override any application setting", and AA setting to "8xQ [8x Multisampling]" or alternatively, "16xS [Combined: 2x2 SS + 4x MS]" or "4x4 [4x4 Supersampling (D3D only)]". If you use "8xQ [8x Multisampling]", you should also set Transparency Supersampling to "8x Sparse Grid Supersampling".

Optionally you can also adjust the LOD bias to negative values shown on this page, in case if SSAA is too blurry (too low value would also cause texture shimmering). After doing this, bringing up the console and typing mat_antialias 1, then sv_cheats 1" and load your map — the game is now ready for screenshots!

Note.pngNote:Selecting the Half Life: Source profile would apply anti-aliasing and other graphical settings to all games sharing the hl2.exe executable name (except Half-Life: Source due to changes to the path after SteamPipe). This includes Source SDK Bases (2006, 2007 and 2013 SP/MP).
To apply anti-aliasing on Half-Life 2: Episode One, Half-Life 2: Episode Two, Half-Life 2: Lost Coast and Half-Life: Source, you need to select "Half-Life 2" profile, as the original path to .exe was no longer correct after SteamPipe.

AMD ATI/AMD

Broom icon.png
This article or section needs to be updated to include current information regarding the subject because:
If you have a modern AMD Radeon or some ATI GPU, try to update the information if needed, then remove the template once you done it.
Remember to check for any notes left by the tagger at this article's talk page.

ATI and AMD Radeon's Adaptive Anti-Aliasing performs a similar function to NVIDIA's "8XS", smoothing transparent edges of textures. It can be enabled through the Catalyst Control Center in the usual manner. All ATI cards above the X800 Pro range support AAA; however, X800 Pro cards have the feature locked by default. Following this guide will help you enable the option. Note that the level of Adaptive AA is taken from the level of regular AA.

With the Catalyst 6.2 drivers, "High-Quality AF" is also an option, again accessible from the Control Center. This will improve texture filtering, making textures at long distances and high angles appear sharper.

For newer AMD Radeon GPUs, the user can enable 8x SSAA and other options through AMD Software Adrenalin Edition. Here are the steps to enable this:

  1. Open the game and change the settings like what was explained with Nvidia but enable 8x MSAA instead of disabling it.
  2. Minimize the game and open AMD Software Adrenalin Edition.
  3. It should show the game that's open. Click on adjust game graphics under "CURRENT SESSION".
    1. If the game can't be seen, then the game may have to be added to the software through the Gaming tab.
    2. Click on the back button if the tab goes to a specific game.
    3. Click on the more options button at the far right.
    4. Locate and add the executable for the game.
  4. Scroll down and click on Advanced.
  5. Change Anti-Aliasing to Enhance application settings. Change Anti-Aliasing Method to Supersampling. Change Texture Filtering Quality to High.
  6. Restart the game.

Intel

Todo: Fill this.
Note.pngNote:If you are running DirectX 8 level, and/or with Intel graphics card (including Arc), "High" shadow option is not available, and all graphical options will be limited to lower settings. There a ways to fix this:
  • For DirectX 8 level, run the game with -dxlevel 95 once, then quit, and remove the command line (required otherwise your graphics settings will be reset), run the game again, Hardware DX level should shown as: DirectX 9. Set the graphics to as high as it will possibly go again.
  • For Intel graphics cards, there are Pcgw icon.png multiple ways to fix this.

Targa (TGA), PNG & uncompressed screenshots

The standard screenshot function in Source compresses the output to lossy Wikipedia icon JPEG images, which, while great for quickly uploading to the web and to save bandwidth, JPEG can result in a loss of quality for any subsequent editing.

To save screenshots in an uncompressed Wikipedia icon Truevision TGA format which can easily be opened by most, decent image-editing software (such as Adobe Photoshop Adobe Photoshop or GIMP GIMP), it is recommended that you type something like following into the console: "bind F4 screenshot", which will save a TGA screenshot every time you press the F4 key. If you're using Garry's Mod Garry's Mod, you can also use the poster command to take screenshots in a Wikipedia icon PNG format, which can be previewed with built-in photo viewer (Windows Photo Viewer, Windows Photos app, etc.), compared to TGA.

Warning.pngWarning:A screenshot from the poster command can only be at max 2 GiB. Each pixel is 4 bytes. Exceeding the limit will crash the game. Anti-aliasing doesn't count to the limit.
Note.pngNote:Alternatively, if the game doesn't support saving the screenshot to PNG directly, run the game in borderless window (by selecting the option on main menu if it's available, or -window -noborder command line argument). Then, to take a screenshot:
  • Press Win + Print Screen (Windows 10 or later only). The screen will briefly dim to indicate that the screenshot has been taken. The captured screenshot will be saved in the "Screenshots" folder in your "Pictures" folder.
  • Alternatively, pressing the Print Screen key (to take the screenshot) then open any image editor (Paint, Adobe Photoshop, etc.) and Ctrl + V to paste, after that save the image as .png.
  • You can also use third-party applications such as ShareX or Lightshot to take a screenshot in .PNG format.

Removing the crosshair and HUD

Sometimes when taking screenshots, the aim is to give a visual, near-photographic impression of the map without the presence of any game interface elements. In single-player Half-Life 2 (and most other games and mods), the primary elements are the HUD (head-up display), the crosshair and the weapon model. Fortunately, there are console commands to remove all of these - "cl_drawhud 0", "crosshair 0", "r_drawviewmodel 0" and "impulse 200".

Environmental shots

For this, enable the "god", "notarget", and "noclip" commands at the console - the player character will then effectively become an invisible, free-floating camera. Try to find interesting angles which give a flavor of some of the more interesting sections of your map. Treat it as if you are using a real camera and you are visiting a real place, with the aim of taking aesthetically pleasing photographs rather than merely documenting what is there - with the advantage of effectively infinite film, no need to focus or choose exposure settings and the ability to float the camera absolutely anywhere in the world in order to get the best shot.

Countless millions of pages have been written on real-world photographic techniques, so it is impossible to condense it all into a paragraph here - perhaps the best approach is to experiment, and most importantly, to expect to throw many of your shots away in the pursuit of getting that one, "perfect" image.

Action shots

For screenshots which illustrate gameplay and other dynamic aspects of a map, it can be advantageous to record a "demo" of normal gameplay (essentially a film of everything which happens) and then to take screenshots during its playback - it is much easier to capture fleeting details such as gun muzzle-flashes, explosions and other events this way.

More information is available on the Demo Recording Tools page, which documents Source's highly versatile demo playback facilities.

Another technique is to actually slow down game time by typing "host_timescale x" into the console, x being the desired time scale (i.e. 0.5 scales time speed by half). With this technique, it is possible to orchestrate brilliant battle scenes.

Going beyond the monitor's resolution

Screenshot of Dear Esther.
Note that the screenshot shown here are 2048x2048, due to wiki limitations preventing the thumbnail from generating properly. You can view the original image here. (click to enlarge)

Using this method, you can ignore your monitors resolution and instead hit the limits of your graphics card's maximum resolution, which is now limited to your HDMI/DisplayPort version supported by your GPU in most cases on modern GPUs.

Using the NVIDIA Control Panel to create custom resolutions, you can force these a new desktop resolution and then start the Source Engine in window mode with the resolution settings in the command line. If there is a similar method for ATI/AMD graphics cards is yet to be documented here.

Open up the NVIDIA Control Panel and navigate to Display -> Change Resolution -> Customize... -> Create Custom Resolution

Here, you can set your resolution of choice, but keep in mind that not every resolution will work. Also, lowering the refresh rate (or enable Display Stream Compression) will enable you to achieve even higher resolutions. With a recent graphics model (such as NVIDIA GeForce RTX 30 and 40 series or AMD equivalent), for example, 8K is possible at 30Hz (120Hz with Display Stream Compression (DSC)), as long you have HDMI 2.1 capable GPU, while 4K is possible up to 144Hz (240Hz with Display Stream Compression (DSC), HDMI 2.1).

Only few resolutions will be supported, so it will fail with the error message "Custom resolution xxxx x yyyy at (refresh rate)Hz (32-bit) is not supported by your display." Nevertheless, the custom resolution will remain until you click OK. At this point, you will most likely end up with black screen, unable to see your desktop. Using remote control tools such as TeamViewer or similar VNC tools, you can stream the video to another display or computer.

Alternatively, you can also use the NVIDIA "DSR" feature to render the game up to 4K (or higher) resolutions (which would downscale the image to your monitor resolution), without creating custom resolutions.

Once you can see your high resolution desktop again, boot up your Source game with the new resolution in the command line:

  • For Source 2013 Source 2013 (or earlier): hl2.exe -width xxxx -height -yyyy -windowed
  • For Left 4 Dead engine branch Left 4 Dead engine branch and above (or any standalone Source games): game-name.exe -width xxxx -height -yyyy -windowed

After starting the game, it is often possible to revert to your old resolution with the game still running at a higher resolution.

Post-processing

Broom icon.png
This article or section needs to be cleaned up to conform to a higher standard of quality.
For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.

Uploading an otherwise unmodified JPEG version of a screenshot will result in a dark, impenetrable mess. There are, however, some simple tasks you can perform in post-processing which will make the screenshot appear more as it did in-game.

If you wish to turn off the game's post processing you can do it with mat_postprocess_enable 0. Maps sometimes have unnecessary vignettes, or you may even wish to make your own take of the look of the map.

Gamma

The images a typical computer game saves in a screenshot and what it actually displays on screen are usually subtly different, thanks to something called gamma. A way of describing a display's brightness response for a given input value, a game's output gamma is generally different from a typical computer desktop's gamma. A game such as Half-Life 2 will typically brighten low- to midrange-values much more than a normal computer graphics application - in Source, this is controlled using the in-game Brightness dialog box.

To make your screenshots look as they did while you were playing the game, it is thus best to use an external graphics editing program such as Photoshop or, in the case of this article, examples from the free, open source GIMP will be used.

Original screenshot

As can be seen above, the original screenshot is far too dark. So, bring up the Levels dialog box (Layer: Colors: Levels...) and increase the applied gamma from 1.00 - around 1.30 seems to be a good number for typical screenshots:

Levels dialog in GIMP

For particularly dark images, it can be useful to apply "overbrightening" by decreasing the input level's maximum from the standard 255 to something lower - a gamma of 1.3 combined with a maximum input level of 200 can work wonders on screenshots portraying night-time or underground scenes.

Your image should now look something like the following:

Screenshot after gamma correction

Sharpening

If you wish to reduce your screenshot's size, it can be useful to then apply a relatively small amount of sharpening. First, scale it down to the appropriate size (File: Scale Image...) then bring up the Sharpen dialog (Filters: Enhance: Sharpen...). A value of 10-30 is usually about right - if set too high, black and white fringes may start to appear around edges and other details.

Sharpening dialog in GIMP

Finally, your screenshot should look something like this 400x300 File:

Final screenshot

Saving as JPEG

To save your masterpiece, go to File: Save as..., select the destination and type in the final filename (to save as JPEG, simply end the filename with a ".JPG") and press OK. To see what the lossy JPEG compression will do to your image, click on Show Preview in image window - increase the quality if necessary to remove compression artifacts. Advanced options include 'progressive' (image blurs in when loading, and file is often slightly smaller too) and different Wikipedia icon subsampling methods (for more accurate colors at the expense of Wikipedia icon file size).

Conclusions

When combined, the above techniques can be used to greatly improve the images with which you show off your latest work. While they won't cover the cracks in a poor-quality original, they can definitely help differentiate your efforts from the crowd. So have fun, and happy screenshotting!

Also, please note that if you are planning to upload screenshots in this wiki, due to MediaWiki limitations, only 4K (3840x2160) (or possibly smaller) images will be able to have thumbnail displaying properly.

See also