Forum: Poser - OFFICIAL


Subject: What use for shader nodes dNdv,dNdu,dPdv,dPdu?

bagginsbill opened this issue on Mar 01, 2006 ยท 8 posts


stewer posted Wed, 01 March 2006 at 1:47 PM

Attached Link: http://www.renderman.org/RMR/Publications/sig92.course21.pdf

dPdu and dPdv are tangent vectors, perpendicular to each other and the surface normal. In many RenderMan shaders these are used to construct a local coordinate system around the normal. dNdu and dNdv (derivatives of the normal over u and v) relate to the curvature of surfaces, the toon shader nod is using these values internally for outlines. Du and Dv express how big the current micropolygon is in uv space. It can be used to build self-antialising procedural patterns. There is a good introduction to antialiasing in shaders in http://www.renderman.org/RMR/Publications/sig92.course21.pdf The linked shader is also using the second derivatives of P for determining the curvature (Du(dPdu) and Dv(dPdv)) which are not available in Poser, but dNdu and dNdv could serve for similar purposes. Unfortunately, derivatives are in general a bit problematic with polygon objects (esp with triangles), they are much smoother when used with parametric surfaces like NURBS. One could maybe use these artifacts to create a wire shader (you can already see some wireframe patterns in bagginsbill's image).