Currently I need a couple of textures' worth of per-pixel data from my rendering pass (normals, depth and colour).
Instead of running three passes with shaders that are essentially the same (WorldViewPos multiplication, etc.) but each outputting a different type of data to a texture in a render target (e.g. one pass for colour, one pass for depth, one pass for normals); I'd like to either use a Texture3D object or ideally a Texture2D array as my pixel shader's render target. That way I could reduce these three render passes to just one and output all the data in one go.
Unfortunately the only examples I've found have been for geometry shaders. Is there a way to specify which texture in a texture array to send data to inside a pixel shader?