It would be cool if one of you shader folk could have a quick look at it. This should be quite easy to fix. I can’t find where this conversion happens.
well, one of the errors seems to be that you’ve got multiple returns - some are float2 and some are float4 type. however, your function signature wants a float4 return type.
so: change the signature to float2 Filter(float4 tex0col) and all returns accordingly.
still, this does not solve it entirely for me. i’m stuck with the next error: lerp: implicite truncation of vector type
Thank you, I totally missed the multiple returns! It compiles if all of them return float4. I guess this has to do with stride’s base shaders, and they don’t allow for outputting float2. On the node itself I can set the shader to output float16.
@tonfilm is it possible to just process r16 in the pixel shader and output float instead of float4?
the pixel shader output must be float4, you can’t change that, but if you only write into the red channel and the output format is R16 all is fine. the shader won’t do extra work…