Number of interpolators in Shader Model 3.0

Started by
2 comments, last by IrYoKu1 14 years, 9 months ago
Hey guys!, I am wondering about what is the number of interpolators, as in this page it's stated that you can have 12 output variables in the vertex shader which I assume are interpolators passed to the pixel shader. Then in this page it's stated that you have 10 input registers in the pixel shader, which I assume again to be texture interpolators. How is that you can have 12 output variables in the vertex shader, and only 10 input variables in the pixel shader? They shouldn't be the same? I may be misunderstanding something, if someone can explain it a little I would really appreciate it! Thanks! [Edited by - IrYoKu1 on July 21, 2009 12:32:19 PM]
Advertisement
One of the mystery outputs is the position. The second may be position1, which is used in ATI's tessellation hardware.

Shader model 3 has the same 8 texcoord interpolators as previous models, and then replaces the two low precision COLOR0 and COLOR1 interpolators with 2 more high precision texcoord interpolators, but the FOG interpolator is just plain gone in SM3. The HLSL compiler is nice enough to auto-magically replace COLOR0 and COLOR1 with an appropriate texcoord interpolator when using SM3.
If think the second output is for PSIZE.

[Edited by - MJP on July 21, 2009 2:30:25 PM]
That makes sense!

I think it's PSIZE because when I try to use 12 output vars, the compiler complains with a message saying "you can only use 12 output vars when one of them is of type PSIZE".

Thanks!

This topic is closed to new replies.

Advertisement