Ask Unreal Anything: Rendering | June 15, 2022 at 1PM EDT

Some of these requests are actually not possible. The Dbuffer is basically a premultipled alpha texture which then uses premultipled alpha blending. That means the final blend equation is SceneColor.rgb * DBuffer.a + DBuffer.rgb. Add can work with DBuffer.rgb += Color. Grayscale multiply can work with Dbuffer.a *= Color.r. Colored multiply can’t. Subtract only would work if Dbuffer pixel format was signed which it isnt and would double its size.

Picking individual decals to apply to individual meshes maybe could be done but that data would need to be known before the base pass since after the DBuffer has accumulated there is no way to separate individual decal contributions.

I don’t think we currently have any specific plans for expanding DBuffer decal functionality.

1 Like