Reference/Primitives
From Affogato
Contents |
Types
- Implicit Spheres
- Blobbies
- Polygon Meshes
- Subdivision Surfaces
- NURB Surfaces
- NURB Curves
- Hair/Fur/Fibers
- Particles
Primitive Variables
UV(W) Data
Affogato exports all UV sets. With their exact XSI names with one exception (see below).
So if your UVs are called 'BensUVSet' (w/o the quotes) in XSI, your shader needs to pick them up like this:
surface myshader( float BensUVSet[ 2 ] = { 0,0 } ) {
Ci = texture( "blah.tex", BensUVSet[ 0 ], BensUVSet[ 1 ] );
}
This means that if there are multiple projections, they all get exported and you can look them up each in your shader, blend textures etc, etc.
Default Name Translation
However, if your UV set has the XSI default name 'Texture_Projection', Affogato does the right thing(tm) and translates it into the RMan default name 'st'. That is what texture() uses by default. So then, your shader looks a lot simpler:
surface myshader() {
Ci = texture( "blah.tex" );
}
Which also means that all shaders you find on the net or that come with 3Delight work straight, as long as you use the right name for your projection -- 'Texture_Projection'.
I don't know if that makes sense and we should have an override to always export the first uv set as 'st' or allow turning the name translation off altogether. Feedback/thoughts on this is welcome.

