Log inGet started
Package

asc_dustmix.shader

README.md

asc_dustmix

The post-process pass that puts ASCENSION's sandstorm on the frame.

preseed.asc.asc_dust (the compute shader) marches the medium into a half-resolution target and binds it here as dust_rt every frame; this pass blends it over the scene at priority 6 — after the fire tornado's emissive composite at 5, which is the whole reason the column looks like it is inside the storm instead of in front of it. The dust's extinction and its inscatter are applied over the fire, not under it.

dust_rt arrives premultiplied — rgb is the integrated inscatter already weighted by the transmittance in front of it, alpha is 1 - transmittance — so the blend is a straight over and there is no second colour decision in this file. Every colour the medium carries is authored and solved in asc_dust.

Its default is transparent, so a frame in which the march has not dispatched is the frame without the storm. Note that an UNRESOLVED texture property is not the default: it reads as white, and a pass left bound to one blows the frame out. The module rebinds every frame rather than caching, for exactly that reason.