PDA

View Full Version : Co Shader in RSL


Meet
08-31-2010, 03:26 PM
Hi there,

Want to create layer shader for prman like there is in maya. Can you please tell me how to create that using RSL and how in works?

Meet
:)

neuromancer1978
09-03-2010, 04:10 PM
Hi there,

Want to create layer shader for prman like there is in maya. Can you please tell me how to create that using RSL and how in works?

Meet
:)

Unfortunately there is no real true way to layered shaders in PRMan, at least as far as I know. The only REYES based renderer that can do something like that is Aqsis, which has layered shaders capability. As for how to go about it, I am not sure as it takes a bit of skill to get some good results and I honestly don't remember how (mainly since Aqsis is the only one that can I try to make shaders that can work with PRMan, 3Delight etc...)

Meet
09-09-2010, 03:28 PM
Unfortunately there is no real true way to layered shaders in PRMan, at least as far as I know. The only REYES based renderer that can do something like that is Aqsis, which has layered shaders capability. As for how to go about it, I am not sure as it takes a bit of skill to get some good results and I honestly don't remember how (mainly since Aqsis is the only one that can I try to make shaders that can work with PRMan, 3Delight etc...)


Hi there, I have tried with the Slim which has layer utility which allows you to connect different shaders togather, but reading slim code is a bit diffcult. I am woking on it, will let you know once done.
Currently working on the different illumination model, have to pullout some time for this.
thanks again.
:)

playmesumch00ns
09-09-2010, 03:49 PM
Unfortunately there is no real true way to layered shaders in PRMan, at least as far as I know. The only REYES based renderer that can do something like that is Aqsis, which has layered shaders capability. As for how to go about it, I am not sure as it takes a bit of skill to get some good results and I honestly don't remember how (mainly since Aqsis is the only one that can I try to make shaders that can work with PRMan, 3Delight etc...)

Actually that's complete tosh. PRMan has been able to do this since version 13.5. I don't think Slim really exposes this for you too much at the moment though (maybe next version?), or whether RenderMan Studio would be able to export what you need to be able to write the shaders by hand and have them interact properly.

You're probably better off posting on the pixar support forums.

neuromancer1978
09-09-2010, 07:08 PM
Actually that's complete tosh. PRMan has been able to do this since version 13.5. I don't think Slim really exposes this for you too much at the moment though (maybe next version?), or whether RenderMan Studio would be able to export what you need to be able to write the shaders by hand and have them interact properly.

You're probably better off posting on the pixar support forums.

Layered Shaders as in multiple surface shaders per polygon... that is supported by Pixar's Renderman? I know co-shaders, such as using displacement values to control surface shaders is very possible but was not aware Pixar's could do layered shaders. I guess it is all in the programming of the shader?

ndeboar
09-10-2010, 01:45 AM
Layered Shaders as in multiple surface shaders per polygon... that is supported by Pixar's Renderman? I know co-shaders, such as using displacement values to control surface shaders is very possible but was not aware Pixar's could do layered shaders. I guess it is all in the programming of the shader?

Woudn't be that hard to implement this. Either you could take a "slim" approach and mix un-compiled RSL, or you could mix compiled surface shaders using co-shaders.

Nick

rendermaniac
09-10-2010, 05:15 AM
Layered Shaders as in multiple surface shaders per polygon... that is supported by Pixar's Renderman? I know co-shaders, such as using displacement values to control surface shaders is very possible but was not aware Pixar's could do layered shaders. I guess it is all in the programming of the shader?

If you are using coshaders then your surface shader just calls the surface() method on the shaders passed in to it.


class layer(
shader layers[] = {};
) {
surface() {

Ci = 0;
Oi = 0;

uniform float i = 0;
uniform float num_layers[] = arraylength(layers);

for (i=0; i < num_layers; i == 1) {
color c = 0, o = 0;
layer->surface(c, o);
over(c, o, Ci, Oi); // function to return properly composited Ci and Oi
}
}


There are a couple of ways to get the list of coshaders - with explicitly passing in the shader handle names (my prefered approach) or by getting a category of coshaders - this is what Slim (and Houdini?) do. Using categories means you don't have much control over order.

I'm pretty sure 3delight supports doing this too.

Simon

rendermaniac
09-10-2010, 05:19 AM
PS if you are using Slim I would stick to writing normal templates which produce monolithic shaders and don't bother with coshaders.

This does mean you have to recompile to change stuff, but it is a small inconvenience comapred to getting coshaders working.

Slim's coshader support is very basic and the class based templates are pretty horrible.

Simon

Meet
09-12-2010, 03:48 AM
Actually that's complete tosh. PRMan has been able to do this since version 13.5. I don't think Slim really exposes this for you too much at the moment though (maybe next version?), or whether RenderMan Studio would be able to export what you need to be able to write the shaders by hand and have them interact properly.

You're probably better off posting on the pixar support forums.

Hi,
I tried with the slim but it not working as what I want. But may co-shader will do. Will try with that.
With the code you can give that the specific facility of using different illumination model and I think that should be the main goal of the layer shader. But this depends on the requirement and the artist will have to wait until we provide the shader. Lets see will work on it and let you know.
Thanks

Meet
09-12-2010, 03:52 AM
Layered Shaders as in multiple surface shaders per polygon... that is supported by Pixar's Renderman? I know co-shaders, such as using displacement values to control surface shaders is very possible but was not aware Pixar's could do layered shaders. I guess it is all in the programming of the shader?

Hi Ted,
But geving this facility with the code is dependant on the requirement and the artist will have to wait until we provide the shader. I am working on it, will let you know.
:)

Meet
09-12-2010, 04:00 AM
Woudn't be that hard to implement this. Either you could take a "slim" approach and mix un-compiled RSL, or you could mix compiled surface shaders using co-shaders.

Nick

Hi Nick,

I have not used the co-shader till now. I went through the code and understand that but can you please tell how to compile that code.

:)

Meet
09-12-2010, 04:03 AM
If you are using coshaders then your surface shader just calls the surface() method on the shaders passed in to it.

There are a couple of ways to get the list of coshaders - with explicitly passing in the shader handle names (my prefered approach) or by getting a category of coshaders - this is what Slim (and Houdini?) do. Using categories means you don't have much control over order.

I'm pretty sure 3delight supports doing this too.

Simon

Hi Simon,

Thanks for the code, but can you please send me the process of how to implement this code to get that work with MAYA.

Meet

Meet
09-12-2010, 04:04 AM
PS if you are using Slim I would stick to writing normal templates which produce monolithic shaders and don't bother with coshaders.

This does mean you have to recompile to change stuff, but it is a small inconvenience comapred to getting coshaders working.

Slim's coshader support is very basic and the class based templates are pretty horrible.

Simon


Oh, ok will try that and get back to you for the same.

Thanks
:)

ndeboar
09-12-2010, 09:10 AM
To just get back to basics:

- If your using RMS, doesn't it support maya layered shader?
- What's wrong with the layered shader support in Slim? I've used it in the past, worked pretty well.
- Do you really need layered shaders? I almost never see the point in using them these days, most shaders have almost every option you could need with out mixing/matching.

Meet
09-12-2010, 10:32 AM
To just get back to basics:

- If your using RMS, doesn't it support maya layered shader?
- What's wrong with the layered shader support in Slim? I've used it in the past, worked pretty well.
- Do you really need layered shaders? I almost never see the point in using them these days, most shaders have almost every option you could need with out mixing/matching.

Hi Nick,

It works for the MAYA using slim, but I will have to try for the other renderman compliant render which solves the overall purpose.

Thanks
:)

CGTalk Moderation
09-12-2010, 10:32 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.