Dust – A Kenshi Rendering Framework

If you liked this item, please rate it up on Steam Workshop page.

Author: Xscreade

Last revision: 29 Apr at 20:06 UTC

File size: 2.43 MB

On Steam Workshop

Description:
Dust – Graphics Enhancement for Kenshi

Dust modernizes Kenshi’s visuals with global illumination, ambient occlusion, improved shadows, color grading, depth of field, bloom, and more. The goal is to make the game look better while staying true to its original art style.

Everything is tweakable in-game with an F11 settings menu, so you can adjust things to your taste or turn off what you don’t like.

Under the hood, Dust works differently from ReShade or other injectors. It hooks directly into the game’s rendering pipeline, which means effects like SSAO can work with the actual lighting system instead of being applied on top after the fact. This avoids common issues like fog bleed and UI getting affected.

The mod is also built as a plugin framework. Effects are separate DLLs, so anyone can make and share their own.

Requirements

What it does

Global Illumination (RTGI)

For high end GPUs, its an very expensive effect.
Screen-space ray-traced indirect lighting. Rays are cast per pixel against the depth buffer and sample the lit scene at hit points, producing colored light bounces and ambient occlusion. Multi-bounce support feeds previous frame GI back into the current frame. Temporal accumulation and wavelet denoising keep the result stable and noise-free. Runs on compute shaders for best GPU utilization.

Ambient Occlusion (SSAO)

Adds realistic contact shadows in corners, crevices, and where objects meet the ground. Works directly with the game’s lighting, so it looks natural even under different weather and time of day. Automatically adjusts for night scenes.

Indirect Lighting (SSIL)

Adds a single bounce of indirect light from nearby surfaces. Albedo-weighted accumulation produces colored bleed (red walls cast a red glow, etc.) for richer scene lighting. Cheaper than RTGI and complements SSAO at the same injection point.

Improved Shadows

Replaces the game’s shadow sampling and filter with PCSS (Percentage-Closer Soft Shadows). Shadows get softer the further they are from the casting object, just like real life. Configurable light size, filter radius, and bias. Shadow map resolution can be increased up to 16384 in the settings (requires restart, RTWSM shadows only).

Color Grading

Full color grading pipeline with selectable tonemapper (ACES, Reinhard, AgX, Khronos PBR Neutral, and more). Includes contrast, saturation, temperature, exposure, and shadow/highlight split toning.

Depth of Field

Camera-style focus blur with auto-focus. Objects in front of and behind your focus point get blurred separately, with full control over near and far blur curves and intensity.

Bloom

Soft glow on bright light sources. Extracted from the HDR scene before tonemapping for physically accurate results. Adjustable threshold, radius, and intensity.

Clarity

Local contrast enhancement that brings out fine detail in textures without affecting the overall image brightness.

Outline

Edge detection from depth and normal discontinuities. Configurable thickness, strength, color, and max depth.

Kuwahara Filter

Anisotropic painterly filter that smooths flat regions while preserving edges for a hand-painted look.

SMAA

Subpixel morphological anti-aliasing to clean up jagged edges left by the game’s forward-rendered geometry. Three modes: luma, depth, or combined edge detection.

Deband

Removes the visible color banding in skies and soft gradients caused by 8-bit quantization. Optional sky-only mode keeps the noise off detailed surfaces.

Chromatic Aberration

Subtle lens-style color fringing that grows toward the screen edges. A single Strength slider controls the magnitude.

Vignette

Smooth darkening around the edges of the frame, with circular or rectangular falloff and adjustable radius, softness, and strength.

Film Grain

Animated noise on top of the final image. Adjustable intensity and grain size, with optional per-channel chromatic mode.

Letterbox

Cinematic black bars to constrain the visible image to a target aspect ratio (default 2.35:1). Bar color and opacity are configurable.

Features
  • In-game settings (F11): Tweak every effect in real-time with sliders, save your settings, reset anytime
  • Preset system: Quick-switch between Low, Medium, High, and Ultra presets (plus cinematic and stylized variants), share custom presets within the community
  • Performance overlay: See exactly how much GPU time each effect costs
  • Hot-reloadable configs: Edit .ini files while the game is running
  • Plugin system: Effects are separate DLLs, anyone can create and share new ones

In-Game Settings

Press F11 to open the settings overlay. From there you can adjust every effect, see performance stats, save your configuration, or reset to defaults. Double-click any slider to type in an exact value.

Compatibility

The mod should be compatible with any other mod, except specific mods that hook directly into the render pipeline of the
game, or mods that modify the render pipeline directly (ReShade REST addon seems to be causing issues).
The mod currently does not officialy support Proton/Wine for now. It seems to work for a lot of users, but it depends on the version.

A startup notification appears for 30 seconds indicating the mod is active and which key toggles the GUI. This can
be disabled in the framework settings.

How it works

Dust is not a ReShade preset or a post-process overlay. It hooks into Kenshi’s D3D11 deferred rendering pipeline and injects effects at specific points in the render pass (after GBuffer, after lighting, after tonemapping, etc). This means effects have access to the actual depth buffer, HDR scene data, and lighting state before the game flattens everything to the final image.

For example, SSAO is injected into the deferred lighting pass so it affects both ambient and direct light. Color grading captures the HDR render target before the game’s tonemapper runs, applies its own ACES tonemapping, and writes the result back. This would not be possible with a generic post-process injector.

Effects are loaded as plugin DLLs via a stable C API. The framework handles shader compilation, state management, constant buffers, GPU timing, config I/O, and the settings GUI. A new effect only needs to fill out a descriptor struct and provide a pixel shader.

Credits
  • BFrizzleFoShizzle – RE_Kenshi (plugin loader) and KenshiLib (game structure library)
  • disi30 – ShaderSSAO, the original Kenshi SSAO mod that inspired this project
  • Bob – Native Stylise, also an inspiration
  • Dear ImGui – In-game GUI library
  • Atlas – Made the video that gave me the idea of this mod

Source Code

https://github.com/Bazouz660/Dust

Discord Server

https://discord.gg/3fd3c7EFvT