Skip to content

graphics

Source: mods/graphics.

What it does

aowl.graphics — full-frame post-process. The RENDERING runs client-side in the host (abi/aowlspt_graphics.h) over the DXGI back buffer; this file is only the control surface. Keys are flat so the settings UI and the write-back path both address them directly. See README.md for what each does and the screen-space caveat (this grades the shipped LDR frame; it is not a replacement for BSG's HDR tonemapper).

Settings

Defined in mods/graphics/config.json. The values shown are the shipped defaults, not what is currently deployed.

enabled

  • Default: true

UNKNOWN — this key carries no doc comment in config.json.

preset

  • Default: "filmic"

THE ONE KEY THAT MATTERS. A finished look in one word. While this is anything other than "custom", the preset OWNS every look key below and the individual sliders are IGNORED — set it to "custom" to drive them yourself. Sharing a look with someone is sharing this line. Options: custom | neutral | filmic | cold-clinical | warm-cinematic | night-owl.

Accepted values:

  • cold-clinical — Visibility first. Cool, slightly bright, shadows pulled open hard. No bloom (bloom is glare, and glare is a player you did not see) and no vignette (it darkens exactly the screen edge where peripheral movement lives).
  • filmic — The default. AgX look, real contrast with the shadow toe bought back, a little grain.
  • neutral — Cleanup only — vanilla minus the banding and the mush. If you cannot tell it from stock in a screenshot, it is doing its job.
  • night-owl — Dark interiors and night raids — Factory basements, Labs, Reserve bunkers. Exposure and gamma up, toe lifted hard, highlight roll-off raised so a flashlight does not blow out the wall in front of you.
  • warm-cinematic — The screenshot look. Warm, contrasty, bloomy, grainy, a touch of lens. Costs a little visibility.

raidOnly

  • Default: true

When true (default), the grade runs ONLY inside a raid; the main menu and 2D UI screens stay stock. The raid signal comes from the backend (the tarkov mod knows raid start/end). Set false to grade everywhere — also the escape hatch if you run without the backend/manager, since without the signal the gate stays closed.

tonemapper

  • Default: 1

0 = none, 1 = AgX (filmic, neutral highlights — default), 2 = ACES. tonemapStrength blends the look 0..1.

tonemapStrength

  • Default: 0.9

UNKNOWN — this key carries no doc comment in config.json.

exposure

  • Default: 0.0

EV bias applied before the tonemap look. 0 = neutral.

contrast

  • Default: 1.1

UNKNOWN — this key carries no doc comment in config.json.

saturation

  • Default: 1.02

UNKNOWN — this key carries no doc comment in config.json.

vibrance

  • Default: 0.35

Saturation weighted by how unsaturated a pixel already IS, 0..1. Gains colour separation without turning foliage neon the way a flat saturation multiplier does. Costs no extra texture taps.

shadowDetail

  • Default: 0.35

Re-lifts ONLY the toe after contrast, 0..1, so raising contrast does not cost you the ability to see a player standing in a doorway. Costs no extra taps.

clarity

  • Default: 0.3

Wide-radius local contrast (unsharp against a 4-tap low pass), 0..1. This is what makes a flat, hazy frame read as three-dimensional. Masked to the mid-tones so it cannot crush blacks or blow highlights. Costs 4 texture taps.

temperature

  • Default: 0.04

White balance. temperature -1..1 (cool..warm), tint -1..1 (green..magenta).

tint

  • Default: 0.0

UNKNOWN — this key carries no doc comment in config.json.

lift

  • Default: 0.0

UNKNOWN — this key carries no doc comment in config.json.

gamma

  • Default: 1.0

UNKNOWN — this key carries no doc comment in config.json.

gain

  • Default: 1.0

UNKNOWN — this key carries no doc comment in config.json.

shadows

  • Default: 0.0

UNKNOWN — this key carries no doc comment in config.json.

highlights

  • Default: 1.1

UNKNOWN — this key carries no doc comment in config.json.

sharpness

  • Default: 0.35

CAS-style contrast-adaptive sharpening, 0..1. Adaptive, so it does not ring on already-crisp edges the way a fixed unsharp mask does.

bloom

  • Default: true

bloom enables the bright-pass blur — this is the ONLY expensive switch in the stack (3 extra fullscreen passes at half resolution). Turn it off first if you are chasing frames. bloomThreshold is the luma knee; raise it so only real light sources bloom.

bloomStrength

  • Default: 0.3

UNKNOWN — this key carries no doc comment in config.json.

bloomThreshold

  • Default: 0.7

UNKNOWN — this key carries no doc comment in config.json.

grain

  • Default: 0.18

Animated film grain, 0..1, weighted toward the shadows — where real grain lives and where banding lives. grainSize is the cell size in pixels. Costs no extra taps.

grainSize

  • Default: 1.5

UNKNOWN — this key carries no doc comment in config.json.

dither

  • Default: 1.0

Triangular-PDF noise at ~1 least-significant bit before the 8-bit write, 0..2. The cheapest real win in the stack: it is the only thing that kills banding in dark interiors, and Tarkov interiors are almost entirely gradient. Leave it on.

chroma

  • Default: 0.0

Radial chromatic aberration, 0..1. Red/blue only and exactly zero at the screen centre, so it never smears what you are aiming at. Off by default — tasteful means opt-in. Costs 2 texture taps.

vignette

  • Default: 0.2

vignette strength 0..1; vignetteRadius 0.5..1.5 (larger = darkening starts further out).

vignetteRadius

  • Default: 1.0

UNKNOWN — this key carries no doc comment in config.json.

diag

  • Default: false

Red-tint the frame to confirm the post-process blit lands on the right back buffer, ignoring the raid gate. Turn off for normal play.

aoughwl — self-hosted platform for things n stuff. Contact / Support on Discord for access to the private backends.