[ℹ]
FULLNAME=Graphics adjustments
PREVIEW=https://acstuff.club/images/modules/graphics_adjustments.jpg
DESCRIPTION=Fixes depth fighting artifacts, improves LODs processing, fixes MSAA, optionally replaces FXAA by SMAA, adds post-processing refraction and more.
SHORT_DESCRIPTION=Subtle visual tweaks
URL=https://trello.com/c/Qbz4r8Zt/18-other-small-things
[BASIC]
; Extension
ENABLED=1 ; Active (set to 0 to disable graphic adjustments); 1 or 0
FORCE_FXAA=1 ; Force FXAA route (enables FXAA in AC video settings without actually applying it to make sure some of the CSP features will work); 1 or 0
__HINT_BOTTOM=Disabling Graphics Adjustments might break most of CSP: a lot of other modules rely on some things set up by this one.
[RENDER_SCALE]
; Render scale
SCALE=1 ; Scale; from 0.1 to 1, perc.
SCREENSHOTS_SCALE=1 ; Accumulative screenshots (keep at 100% to create full-resolution screenshots); from 0.1 to 2, perc
__HINT_BOTTOM=This option affects render, UI and everything else, good for fixing the size of original UI elements and improving performance on high DPI screens. For example, if you’re using a laptop with a 4K monitor, set AC resolution in video settings to maximum, disable fullscreen mode, set this scale to 50% and you’ll get a FullHD experience and a massive performance boost.
Not compatible with fullscreen mode. Also, screenshot scale might not be available with some older advanced WeatherFX styles.
[FSR]
; AMD FidelityFX Super Resolution
ACTIVE=0 ; Active; 1 or 0; not available with IS_LIVE__
DISABLE_FOR_SCREENSHOTS=1 ; Disable for screenshots; 1 or 0
OLD_IMPLEMENTATION=0 ; Old implementation (old implementation is based on some early mod adding FSR to GTA V with MIT license, new one is based on official SDK and it seems like it might produce worse results); 1 or 0
QUALITY=0.667 ; Quality, old (resolution multiplier is in brackets); "Custom (Any%)" is -1, "Ultra Quality (88%)" is 0.883, "Quality (75%)" is 0.75, "Balanced (66%)" is 0.667, "Performance (50%)" is 0.5, "Sad (25%, for testing)" is 0.25; visible with OLD_IMPLEMENTATION; not available with IS_LIVE__
QUALITY2=0.77 ; Quality, new (resolution multiplier is in brackets); "Custom (Any%)" is -1, "Best Quality (87%)" is 0.87, "Ultra Quality (77%)" is 0.77, "Quality (67%)" is 0.67, "Balanced (59%)" is 0.59, "Performance (50%)" is 0.5, "Sad (25%, for testing)" is 0.25; hidden with OLD_IMPLEMENTATION; not available with IS_LIVE__
CUSTOM_PIXEL_DENSITY=1.2 ; Pixel density; from 0.1 to 2, perc.; visible with OLD_IMPLEMENTATION=1 and QUALITY=-1 or OLD_IMPLEMENTATION=0 and QUALITY2=-1
SHARPEN=-1 ; Sharpness, old; Auto is -1, Very low is 0.15, Low is 0.3, Medium is 0.5, High is 0.7, Very high is 0.85; visible with OLD_IMPLEMENTATION
SHARPEN2=0.5 ; Sharpness, new; from 0 to 1, perc.; hidden with OLD_IMPLEMENTATION
ADJUST_MIP_BIAS=0.5 ; Adjust MIP bias; from 0 to 1, perc.; hidden with OLD_IMPLEMENTATION
DEBUG_MODE=0 ; Debug mode (with debug mode active, hold Space to quickly disable FSR and compare it with regular linear upscaling); 1 or 0
__HINT_BOTTOM=Available only with single or triple with both post-processing and FXAA in AC video settings active, or in VR (any combination of settings). Might negatively affect screenshots quality. Works with AMD Radeon, Intel UHD and NVIDIA GPUs. Restart Assetto Corsa to activate, deactivate or change quality preset, other settings can be changed live.
[LODS]
; LOD settings
COCKPIT_LR_FIX=1 ; Force low-res cockpits for other cars in first person view (don’t know about you, but I always found that back and forth switching to be quite distracting); 1 or 0
DRIVER_LR_FIX=0 ; Force low-res drivers for other cars in first person view (might help with performance); 1 or 0
CARS_DISTANCE_MULT=1 ; Multiplier for car LODs (increase to see more detailed models for longer); from 0.2 to 3.2, perc
TRACK_DISTANCE_MULT=1 ; Multiplier for track LODs (increase to see more detailed models for longer); from 0.2 to 3.2, perc
TREES_DISTANCE_MULT=1 ; Multiplier for trees LODs (increase to see more detailed models for longer, requires restart to apply); from 0.2 to 3.2, perc; not available with IS_LIVE__
FORCE_LOD_B=0 ; Force LOD B for other cars in first person view; 1 or 0
TREAT_TRACK_CAMERAS_THE_SAME=1 ; Treat track cameras the same; 1 or 0
FALLBACK_LODS=0 ; Add extra collider-based LODs for distant cars (materials won’t match exactly, but might be acceptable for something very distant); 1 or 0
LODLESS_LIMIT=40 ; Limit LODless cars (once limit is reached, fallback LODs will be used instead); from 2 to 200, round to 1
HIDE_DISTANT_DRIVERS=1 ; Hide drivers for distant cars; 1 or 0
[VISIBLE_CARS]
; hidden
; four values are for: LOD A, simplified LOD A, simplified some more, LOD D
MAIN=2, 4, 10, 200
GBUFFER=2, 4, 8, 12
SHADOWS=2, 4, 6, 24
OUTSIDE_MAIN=2, 4, 20, 200
OUTSIDE_GBUFFER=2, 4, 8, 12
OUTSIDE_SHADOWS=2, 4, 8, 24
SPECTATING_MAIN=6, 12, 40, 200
SPECTATING_GBUFFER=3, 6, 12, 24
SPECTATING_SHADOWS=3, 6, 6, 24
MIRROR=1, 3, 7, 12
[ORIGIN_SHIFT]
; Origin shift (reduces flickering and visual shaking on large tracks; to reduce physics shaking activate double precision physics engine in general settings)
ENABLED=1 ; Active; 1 or 0
; DEBUG_MODE=0 ; Debug mode (in debug mode, use digit keys to shift origin, 1: default origin shift behavior, 2: no shift, 3: shift 1 meter vertically, 4: shift 20 meters horizontally, 5: shifts really far away); 1 or 0
[ADAPTIVE_CLIP_PLANES]
; Adaptive clip planes (at the same time fixes depth fighting artifacts and increases rendering distance)
ENABLED=1 ; Active; 1 or 0
NEAR_PLANE=0.1, 10 ; Near plane, m; two numbers
FAR_PLANE=20000, 30000 ; Far plane, m; two numbers
FOV_RANGE=0.5, 12 ; FOV range, degrees; two numbers
FOV_EXP=2 ; FOV exponent; from 0.5 to 7.5
NEAR_ADAPTIVE=1 ; Increase near plane for camera far away (fixes depth fighting artifacts for shots from above and such); 1 or 0
[VR_CLIP_PLANES]
; Clip planes in VR
NEAR_PLANE=0.05 ; Near plane, m
FAR_PLANE=15000 ; Far plane, m
[SHADER_REPLACEMENTS]
; hidden
ALLOW_TAG_NEW_CARPAINT=1 ; Allow to use new car paint shader; 1 or 0
ALLOW_TAG_NEW_WATER=1 ; Allow to use new water shader; 1 or 0
ALLOW_TAG_PBR=1 ; Allow to use new experimental PBR shaders; 1 or 0
[HUMAN_SHADER]
; hidden
; New shader for human skin
ENABLED=1 ; Active; 1 or 0
; [POSTPROCESSING]
; ; Alternative post-processing
; DEACTIVATE_YEBIS=0 ; Deactivate YEBIS; 1 or 0
; __HINT_BOTTOM=Much simpler alternative which might work faster. Keep original post-processing option in AC video settings enabled.
[ANTIALIASING_MSAA]
; MSAA tweaks
CUSTOM_RESOLVE=1 ; Use custom MSAA resolve; 1 or 0
CUSTOM_KERNEL=0 ; Use custom kernel for MSAA resolve; 1 or 0; only with CUSTOM_RESOLVE
CUSTOM_RESOLVE_MIRROR=1 ; Use custom MSAA resolve for mirrors (works only with high quality mirrors); 1 or 0
__HINT_BOTTOM=Custom MSAA resolve applies a tonemapping fix to improve MSAA quality close to bright areas (more details). Custom kerner improves quality further, but it would slightly reduce performance. ;; hidden
[ANTIALIASING]
; Post-processing antialiasing
MODE=FXAA3 ;; DISABLED, Original is DEFAULT, YEBIS method is YEBIS, __separator__, “CMAA 2.0” is CMAA, “FXAA 1.0” is FXAA, “FXAA 3.11” is FXAA3, “SMAA” is SMAA
QUALITY=HIGH ;; MEDIUM, HIGH or ULTRA; visible with MODE:CMAA or MODE:FXAA or MODE:FXAA3 or MODE:SMAA
DEBUG_MODE=0 ;; hidden
CMAA_EXTRA_SHARP=0 ; Extra sharp; 1 or 0; visible with MODE:CMAA
; MLAA_GREEN_AS_LUMA=1 ; Use green for luminocity (faster, but worse quality in some cases); 1 or 0; visible with MODE:MLAA
; MLAA_EDGE_THRESHOLD=0.083 ; Edge threshold; from 0.01 to 0.25, perc.; visible with MODE:MLAA
FXAA3_GREEN_AS_LUMA=1 ; Use green for luminocity (faster, but worse quality in some cases); 1 or 0; visible with MODE:FXAA3
FXAA3_EDGE_THRESHOLD=0.166 ; Edge threshold; from 0.01 to 0.25, perc.; visible with MODE:FXAA3
FXAA3_LESS_DITHER=1 ; Less dither; 1 or 0; visible with MODE:FXAA3
FXAA3_QUALITY_SUBPIX=0.75 ; Blurry/sharp; from 0 to 1, perc.; visible with MODE:FXAA3
FXAA3_QUALITY_EDGE_THRESHOLD_MIN=0.0833 ; Edge threshold min.; from 0.01 to 0.25, perc.; visible with MODE:FXAA3
FFXCAS_PASS=0 ; Use FidelityFX CAS by AMD for extra sharpness; 1 or 0; hidden with MODE:YEBIS
FFXCAS_SHARPNESS=0.5 ; FidelityFX CAS sharpness; from 0 to 1, perc.; hidden with MODE:YEBIS or not FFXCAS_PASS
__HINT_BOTTOM=Please note: the way this and a few other effects work, they’re intercepting FXAA when Assetto Corsa applies it. So, keep FXAA enabled in original video settings. If you don’t need it, instead, disable it here.
; [SMAA]
; ; SMAA instead of FXAA (slower, but might (it’s all a matter of taste anyway) produce better and sharper picture)
; ENABLED=0 ; Active; 1 or 0
; QUALITY=high ;; Medium is "medium", High is "high", Ultra is "ultra"
; [YEBIS]
; ; YEBIS options
; ALLOW_YEBIS_AA=0 ; Use YEBIS AA instead of FXAA; 1 or 0
[COLOR_BUFFER]
; Accessible color buffer
ACTIVE=1 ; Active; 1 or 0
FULL_RESOLUTION=1 ; Full resolution for better quality; 1 or 0
EXTRAFX_INTEGRATION=1 ; Extra FX integration (to take SSLR or TAA into account); hidden
__HINT_BOTTOM=This option passes color from opaque stage to following stages, used mainly for refraction in certain surfaces and water droplets.
[TWEAKS]
; Tweaks
DISABLE_LDR_FIX=1 ; Disable HDR-LDR conversion for AC emissives (a lot of CSP features might break if this tweak is disabled); 1 or 0; hidden
BLOCK_COLOR_CLEAR=1 ; Skip color clearing stage (might slightly improve performance, but mainly, might help to hide small holes in some track models); 1 or 0
USE_VIRTUAL_MIRROR_MASKING=0 ; Do not draw anything under virtual mirror (for single or triple mode and only if it’s drawn with post-processing active, might improve performance a bit); 1 or 0; only with BLOCK_COLOR_CLEAR
; UAV_INPUT2=1 ; Add UAV flag to input (speeds up CMAA 2, might result in black screen on specific systems); 1 or 0; hidden
; UAV_OUTPUT2=1 ; Add UAV flag to output (speeds up FidelityFX CAS); 1 or 0; hidden
; SRV_OUTPUT2=1 ; Add SRV flag to output (for UI background with 360° mode); hidden
TILT_MIP_BIAS=-2.5 ; Mip bias for tilted surfaces (for cases where anisotropic filtering is not enough, increases shapness for those heavily tilted surfaces; only affects certain shaders at the moment); from -4 to 0
LOAD_INACTIVE_SEATBELT=0 ; Load mesh for inactive seatbelt (might cause issues with unusual cars with extra geometry for the showroom); 1 or 0; new
USE_CAR_EXPOSURES_FOR_FREE_CAMERA=1 ; Use car exposures for free cameras (each car has its recommended exposure offsets that usually apply with first person or chase cameras, this tweak also applies them to F5/F7 cameras); 1 or 0; new
REORDER_DRIVER_RENDERING=1 ; Draw driver after the car for external cameras (might improve performance and shading a bit); 1 or 0; new
DRIVER_TILT_GFORCES=1 ; Tilt driver models with G-forces; 1 or 0; new
DRIVER_SHAKE_GFORCES=1 ; Shake driver heads with G-forces; 1 or 0; new
CAR_BEND_SEATBELTS=1 ; Bend seatbelts with driver models (used by driver weight shifting or driver tilting with G-forces, also improves shading a bit); 1 or 0; new
[FIXES]
; Fixes for common content issues
FIX_GROOVES_RENDERING_ORDER=0 ; Draw grooves over track, but before dynamic entities (improves visuals and performance, but might cause issues with some strange tracks, use carefully); 1 or 0
DOUBLESIDED_SHADOWS=1 ; Use doublesided shadows for track geometry (fixes shadows often getting detached from casters, might slightly reduce performance); 1 or 0
DOUBLESIDED_SHADOWS_WHEELS=1 ; Use doublesided shadows for wheels (fixes holes in shadows from wheels); 1 or 0; new
[SCRIPTABLE_FILTER]
; Scriptable filters
ENABLED=0 ; Active; 1 or 0
ENABLED_MAIN=1 ; Active during racing; 1 or 0
ENABLED_TRACK=1 ; Active on track cameras; 1 or 0
ENABLED_REPLAYS=1 ; Active in replays; 1 or 0
ENABLED_PAUSE=1 ; Active when AC is paused; 1 or 0
ENABLED_PITS=1 ; Active when car is in pits; 1 or 0
IMPLEMENTATION=tunnel ; Filter script; look for filter.lua in extension/lua/pp-filters; only with ENABLED
__HINT_BOTTOM=Simple Lua scripts can be used to apply further post-processing to LDR image. Being scriptable, such scripts can react to simulation conditions. For example, turn screen black and white when collision occurs.
[SCRIPTABLE_FILTER_SETTINGS]
; Scriptable filter settings
__PLUGIN_SETTINGS=SCRIPTABLE_FILTER/IMPLEMENTATION, extension/state/lua/pp_filters/{0}__settings.ini ;; hidden
[MOTION_BLUR]
; Extra tweaks for original AC motion blur
INTERIOR_MULT=2 ; Gain in first person view (visual glitches might occur if more 400%); from 0 to 6, perc.
EXTERIOR_MULT=1.2 ; Gain for exterior cameras (visual glitches might occur if more 400%); from 0 to 6, perc.
[DEV]
; hidden
; NO_FXAA=0 ; disable FXAA (for FXAA/SMAA/nothing comparison); 1 or 0