Renderman approach to earth rendering

This is a nice render! I played with Renderman export in Blender in the past. I never went this far.

I got the Blender to Pixie script from the Blender.org development forum. I must say this is a very smooth setup. I am new to renderman so I was wondering what process you used to get your uv maps from Blender to work so good? Did you use custom renderman shader or tweak a ready made renderman shader to fit your needs?

I can’t wait to get these basic down so that I can explore renderman lighting and shading on my Blender scenes.

Cool stuff!

To get UV working I’ve just pressed “Export UV” key in BlenderPixie :wink:
I’ve wrote shaders but there are very simple. It’s just color mapping and displacement base on texture color and coordinates.

I did that. Do you have to add a speacial string of code in your shader for the color mapping and displacement base?

Did you press the displacement button in the shader panel and also press the uv button in the object panel?

Most of the surface shader tut’s for renderman that I have looked over only discussed basic texture mapping coordinates. There was a bit on nurbs surface uv coordinates. This is probably very simple but right now it seems confusing.

Also, where does BlendertoPixie place the texture path for your maps? Do dump I my maps in the “texture” folder? I already put the maps there so…

Can you give me an example of the code? That would help a lot. Thanks.

Here is simple colormap shader:

surface colormap(float Ka = 1, 
                            Kd = 0.5, 
                            Ks = 0.7,
			    flipS = 0,
  			    flipT = 0,
                            roughness = 0.1,
			    tex_sharpness = 1;
		                    color hilite = 1;
		                   string texname = "")
{
normal  nf, n;
vector  i;
color   ambientcolor, diffusecolor, speccolor,
        surfcolor = Cs, surfopac = Os;
float ss, tt;
   
n = normalize(N);
nf = faceforward(n, I);
   
Oi = surfopac;
   
 ambientcolor = Ka * ambient();
 diffusecolor = Kd * diffuse(nf);
i = normalize(-I);
 speccolor = Ks * specular(nf, i, roughness) * hilite;

ss = (flipS == 0)? s: 1-s;
  tt = (flipT == 0)? t: 1-t;  
if(texname != "") /* NOTE: no space between the quotes */
    surfcolor = texture(texname, ss, tt, "width", tex_sharpness);
 	
 Ci = Oi * surfcolor * (ambientcolor + diffusecolor + speccolor);
}		

As you see most important for you line is :
surfcolor = texture(texname, ss, tt, “width”, tex_sharpness);

where s and t are uv coordinates.

I’m using BlenderPixie only for light, camera and geometry export. As I know there are no complete Renderman exporter for now, but I belive someone is working on it :wink:

Thanks so much. I figured that “s” and “t” had something to do with uv’s. I just spent a large part of the day studying renderman doc’s. None of the doc covered the code beyond the basic stuff.

Do you know of any good books or web links for information on Pixies approach to the RSL? I’m ready to dig into this stuff and add renderman rendering to my set of 3d tools.