SweetFX – Splitscreen

006Let’s begin our look at the SweetFX 1.5.1 effects by beginning with an effect so simple to use that it is impossible to mess up and yet obvious enough to see that the effect is being applied.

That effect is splitscreen, and it divides the image into unprocessed and processed output for comparison. This effect is introduced first because it can be a useful debugging tool later on.

There is no single, comprehensive repository of SweetFX documentation with screenshots available (at least not found yet), so as these articles attempt to describe and show the various effects and settings, keep in mind that much of this information was researched through hours of trial and error and tedious experimentation with only the provided SweetFX files available for reference. Therefore, some settings might be incomplete or lacking in detail. Despite the theory behind how these effects operate, some results are obtained from guesswork and by examining the code files to make even more guesses.

Setting Up

When tweaking SweetFX settings, always use a custom file and specify that file in SweetFX_preset.txt. Do not edit the original files. Use a file with a different name, and keep SweetFX_settings.txt open for reference.

In these articles, SweetFX_settings.txt or “settings” will be used when referring to the file in which tweaks are made. Keep in mind that real editing should be performed in a preset file dedicated for testing.

How to Enable Effects

Open SweetFX_settings.txt in a text editor and have a look. It looks a lot like a standard C header file with all of the #define statements and comments, and it is arranged neatly into sections.

At the top of the file is a description, below it is the section for enabling or disabling effects, and after that are a number of sections that contain specific settings for each effect.

a

SweetFX_settings.txt default structure.

In the section titled “Choose effects” is a list of #define statements. Each statement corresponds to one effect.

#define USE_SMAA_ANTIALIASING 1
#define USE_FXAA_ANTIALIASING 0
#define USE_EXPLOSION 0
#define USE_CARTOON 0
[...continued...]

Each effect has a name, such as USE_SMAA_ANTIALIASING, followed by a number, 0 or 1. The number specifies if an effect is enabled or not. If 1, the effect is turned on, and if set to 0, the effect is turned off and ignored.

#define USE_SPLITSCREEN 0 // Effect is disabled
#define USE_SPLITSCREEN 1 // Effect is enabled

Use a regular text editor to manually edit these values. Save the file after each edit.

For each enabled effect, the extra settings located in the corresponding sections become relevant, and SweetFX applies the effect according to the code files located in SweetFX\Shaders. Each file describes one effect. For example, SweetFX\Shaders\Splitscreen.h contains the code used when applying the splitscreen effect.

This code is written in HLSL (high-level shader language), and it can be modified. However, it would be better to copy an existing file and rename it to custom.h for editing rather than to edit one of the default SweetFX files.

Splitscreen

Off by default, so use #define USE_SPLITSCREEN 1 to turn splitscreen on. Useful for debugging, not playing.

Six splitscreen modes are possible, and the chosen mode is determined by the value of splitscreen_mode located in the splitscreen settings section of SweetFX_settings.txt.

1 = Vertical 50/50 split
2 = Vertical 25/50/25 split
3 = Vertical 50/50 angled split
4 = Horizontal 50/50 split
5 = Horizontal 25/50/25 split
6 = Curvy vertical 50/50 split

Shown below are screenshots of these effects and the values needed to produce them. The game shown is Fallout: New Vegas. Enable another effect, such as monochrome, to see the splitscreen effect.

1 = Vertical 50/50 split

a

Splits the screen halfway. Original image is on the left, the processed image is on the right. Shown with the monochrome effect enabled.

#define splitscreen_mode 1

2 = Vertical 25/50/25 split

a

Three vertical strips with the processed image in the center.

#define splitscreen_mode 2

3 = Vertical 50/50 angled split

a

Same as #1 but divided vertically at an angle.

#define splitscreen_mode 3

4 = Horizontal 50/50 split

a

Original image at the top, processed image at the bottom.

#define splitscreen_mode 4

5 = Horizontal 25/50/25 split

a

The horizontal version of #2. The center strip contains the processed image.

#define splitscreen_mode 5

6 = Curvy vertical 50/50 split

a

Splits the screen vertical through the middle, but uses a wavy division instead of a straight one.

#define splitscreen_mode 6

SweetFX Effects

, , ,

  1. Leave a comment

Leave a comment