Simple Custom Shaders

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

Author: 8eHg

Last revision: 14 Mar, 2025 at 14:52 UTC

File size: 169.17 KB

On Steam Workshop

Description:
Simple Custom Shaders

A few simple custom post process shaders I added to the game for fun now that they can be uploaded to the workshop.
You can find all of them in Post Process > Effects.
All of them can be configured if you click on the icons.

Some of these shaders are CC0/MIT licensed shaders I found on ShaderToy and converted from GLSL to HLSL. All of the credits for the original shaders go to their respective authors.

As of now contains:

  • Vignette
  • Fisheye
  • Blur
  • Depth Grayscale
  • Depth Blur (This one is kinda bleh)
  • Depth Blur 2 (Better but limited in quality by Shader Model 2.0b)
  • Film Grain
  • Posterize
  • Chromatic Aberration
  • Radial Blur
  • VHS Shader №1 (Probably won’t be the only one)
  • Video Glitch

Shader Damage Effects

An example addon to show how the shaders could be used by Lua developers:
https://steamcommunity.com/sharedfiles/filedetails/?id=3443685887

For developers

I intend to make some/most/all of these have their own respective draw functions, outside of the hooks, for use in other addons, so here’s the documentation for the functions. I will update it as I add more or if I change the functions.

render.DrawMercVignette( float outerRingPos, float innerRingPos ) – Draw a vignette using the framebuffer texture render.DrawMercRadialBlur( float xScreenFrac, float yScreenFrac, float blurWidth ) – Draw radial blur on the screen render.DrawMercFisheye( float strength ) – Draw fisheye on the screen render.DrawMercFilmGrain( int blendmode, float speed, float intensity, float mean, float variance ) render.DrawMercChromaticAberration( float amount, bool centerfalloff ) – Draw chromatic aberration on the screen render.DrawMercVHS1( float xoffset, float yoffset ) – Draw a VHS effect with variable chromatic aberration render.DrawMercVideoglitch( float strength – Draw a Video Glitch effect render.DrawMercBlur( float strength ) – Draw a fullscreen blur render.DrawMercDepthBlur2( float depthstart, depthend, strength ) – Draw a depth blur effect, works decently as DOF

Support Links

[revolut.me]