Anti-Aliasing - Post-Process AA & Sharpening
Adds modern anti-aliasing and sharpening effects to RimWorld. Smooth jagged edges on sprites and terrain without impacting gameplay performance.
Comparisons
Default Textures w/ Compression: [url=https://steamcommunity.com/linkfilter/?u=https%3A%2F%2Fimgsli.com%2FNDQ3MjI2]https://imgsli.com/NDQ3MjI2[/url]
Upscaled Textures w/o Compression: [url=https://steamcommunity.com/linkfilter/?u=https%3A%2F%2Fimgsli.com%2FNDQ4MDQ5]https://imgsli.com/NDQ4MDQ5[/url]
Performance Impact
Game renders scene → source RT → OnRenderImage → AA blit(s) → destination RT → Present
Each AA method adds:
- FXAA: 1 blit
- DLAA Low: 1 blit
- DLAA High: 2 blits (horizontal pre-filter → vertical)
- CMAA2 Low: 2 blits (edge detect → shape blend)
- CMAA2 High: 3 blits (edge detect → shape blend → quality pass)
- CAS: 1 blit (added after AA if enabled)
The overhead is minimal for sprite-based 2D rendering like RimWorld. Modern GPUs handle these full-screen blits efficiently.
Like anything, the cost is not free. Any additional blit or post-process step invariably will reduce FPS by adding more operations to the graphics pipeline, please test and report your findings if you have substantial performance loss.
Technical Notes
• All effects run as post-process shaders on the GPU
• Negligible CPU overhead, processing happens after rendering
• Compatible with other graphics mods
FXAA - Fast Approximate Anti-Aliasing
FXAA works by detecting edges based on luminance (brightness) contrast, then blurring along those edges.
How FXAA sees your screen:
Before: Edge Detection: After:
┌─────────┐ ┌─────────┐ ┌─────────┐
│▓▓▓▓░░░░░│ │ ││││ │ │▓▓▓▒░░░░░│
│▓▓▓▓░░░░░│ → │ ││││ │ → │▓▓▓▒▒░░░░│
│▓▓▓▓░░░░░│ │ ││││ │ │▓▓▓▒▒░░░░│
└─────────┘ └─────────┘ └─────────┘
Hard edge "Found it!" Smoothed
[b]Technical Details:[/b]
• Samples 5x5 neighborhood to compute local contrast
• Determines edge orientation (horizontal vs vertical)
• Walks along edge up to 6 pixels to find endpoints
• Blends pixels perpendicular to edge direction
• Single pass, extremely GPU-friendly
[b]Best for:[/b] Lower-end hardware, maximum performance
DLAA - Directional Localized Anti-Aliasing
DLAA is smarter about [i]where[/i] it blurs. It only smooths along the direction of edges, preserving detail perpendicular to them.
FXAA vs DLAA on diagonal lines:
FXAA blurs everything: DLAA blurs directionally:
░▒▒▒░ ░░▓░░
░▒▒▒░ ░░▓░░
░▒▒▒░ vs ░░▓░░
░▒▒▒░ ░░▓░░
(softer overall) (sharp perpendicular)
[b]Technical Details:[/b]
• Pass 1: Horizontal pre-filter detects and softens horizontal edges
• Pass 2: Vertical edge detection with directional search
• Searches up to 8 pixels along detected edge direction
• Preserves high-frequency detail perpendicular to edges
• Optional diagonal support in High Quality mode
[b]Best for:[/b] Balanced quality/performance, recommended for most users
CMAA2 - Conservative Morphological Anti-Aliasing
CMAA2 recognizes [i]patterns[/i]. It identifies common aliasing shapes (Z-shapes, L-corners, staircases) and applies targeted fixes.
Pattern Recognition:
Z-Shape: L-Corner: Staircase:
▓▓▓░░░ ▓▓▓▓▓░ ░░░▓▓
░░▓▓▓░ ▓░░░░░ ░░▓▓░
░░░░▓▓ ▓░░░░░ ░▓▓░░
CMAA2 identifies these shapes and blends
specifically at the jagged transition points,
leaving flat areas completely untouched.
[b]Technical Details:[/b]
• Pass 1: Edge detection with local contrast adaptation
• Pass 2: Shape classification (Z, L, staircase patterns)
• Pass 3: Targeted blending at identified problem areas
• Adapts threshold based on surrounding contrast
• Preserves intentional pixel art edges better than FXAA
[b]Best for:[/b] Maximum quality, high-resolution displays
CAS - Contrast Adaptive Sharpening
CAS restores detail that anti-aliasing may soften. Unlike basic sharpening, it adapts to local contrast to avoid amplifying noise or creating halos.
Traditional Sharpen vs CAS:
Original: Basic Sharpen: CAS:
░░▓▓▓░░ ░░▓▓▓░░ ░░▓▓▓░░
░░▓▓▓░░ → ░▒▓▓▓▒░ vs ░░▓▓▓░░
░░▓▓▓░░ ░░▓▓▓░░ ░░▓▓▓░░
↑halos↑ no artifacts
[b]Two Modes:[/b]
[b]CAS (RGB)[/b] - Sharpens all color channels independently
• Maximum detail enhancement
• Best for most content
[b]CAS (Luma)[/b] - Sharpens brightness only, preserves colors
• Prevents color fringing on high-contrast edges
• Better for pixel art or stylized graphics