Forum

Multipass shading on vvvv

Hello there!
simple question, is vvvv supporting multi-pass HLSL shading?, if so, how do you apply it to a single geometry/mesh?
Thank you!
Emmanuel

Hello

vvvv do not support multi pass Shaders.
You may use DX9Texture to stack mono pass shaders.

but how did i do this in the Cel (EX9.Effect) ?

technique Cel
{
// CullMode = CW ; --> render only the backfaces
// VS ( OutlineWidth ) ; --> boost mesh a little
pass Outline
{
VertexShader = compile vs_1_1 VS ( OutlineWidth ) ;
PixelShader = compile ps_1_0 Outline ( ) ;
CullMode = CW ;
}

               pass FrontFace
                    // CullMode     = CCW ;    --> render only the frontfaces
                    // VS      ( 0 ) ;         --> do NOT boost mesh
                    {
                    VertexShader = compile vs_1_1 VS          ( 0 ) ;
                    PixelShader  = compile ps_1_0 SimpleFront (   ) ;
                    CullMode     = CCW ;
                    }
               }

vvvv does indeed support multiple passes in one technique but not the fancy feature of rendering to a texture in the first pass and using that texture in the second pass.

Thank you for the answers. I assume, then, that you can have different passes but they cannot be ordered as a pipeline, am I correct?. I am familiar with GLSL but I am a noob with HLSL, so this idea of ‘pass’ is still a little bit blurry for me.
Emmanuel

then i am not familiar with GLSL and the term “pipeline” is not an official one but it may as well describe what we mean:

what is possible, as kalle is showing above, is to render one geometry with multiple passes, one after the other, within one shader/effect call.

what is not possible, as i mentioned above, is to render one pass to a texture and use that texture as input to another pass.

Great, now I get it!
thank you for the help.
Emmanuel