Is RSL Dead? What Should A Shading Artist Learn?

Become a member of the CGSociety

Connect, Share, and Learn with our Large Growing CG Art Community. It's Free!

THREAD CLOSED
 
Thread Tools Search this Thread Display Modes
Old 09 September 2013   #1
Is RSL Dead? What Should A Shading Artist Learn?

I want to be a shading artist and I also love lighting so I've been trying to figure out what I need to learn. RenderMan has been a great jumping off point for me and I've found that I'm picking up it fairly smoothly. When I tried to find out info on what jobs RSL would get me online though, I have been coming up with a ton of conflicting information online. I'll admit, my info is skewed because I've found it hard to look at smaller companies because I'm still fuzzy on who uses what, so I looked to Pixar on what they require from their TDs.

The oddest thing was, even Pixar, who makes RSL and RIB so widely available, doesn't list it as a requirement for their Pup internship program or for actual jobs
For the curious, these are the listings I'm referring to:

http://www.pixar.com/careers/Availa...icalArtists-874
and
http://www.creativeheads.net/job/10...td-in-vancouver

So, in all seriousness, I'm not trying to make a cliched title, I actually want to know. Is RSL coding for RenderMan dead or am I wrong-minded? What is the face of shader development at Pixar and other company's production pipelines? And, if RSL doesn't have any relevance in the industry, what should I be focusing on to achieve my dream?
__________________
My posts are always so lllooooooooooooooooooooooooooooooooonnnng

~~~Korinkite~~~
 
Old 09 September 2013   #2
I won't comment on the "RSL is dead"-part, but I feel like it's a good idea at the moment to have solid C/C++-knowledge and an understanding of the Arnold-shader-API, if you want to work as a shader writer.
 
Old 09 September 2013   #3
Perhaps OSL?
__________________
The Pirate
Duplicator Series
 
Old 09 September 2013   #4
Thank you so much for your replies!

I've definitely seen C++ over and over again, I honestly know nothing of it but it has always seemed to be an elusive gold standard for the CG industry. Maybe it's time to finally start learning it. I'm just perplexed because it seemed to me that RSL and RIB were the building blocks for writing RenderMan shaders - wouldn't it make sense to want to give yourself full control by using it? Or is C++ more extendable for RenderMan and other renderers?

Where would someone go to start learning these languages? I'm speaking of both online and University. I want to research computer graphics like this more but I don't know where to begin. Any guidance would be really appreciated!
__________________
My posts are always so lllooooooooooooooooooooooooooooooooonnnng

~~~Korinkite~~~

Last edited by ColinKennedy : 09 September 2013 at 07:11 PM.
 
Old 09 September 2013   #5
To me RSL systax is just the same as C++. I looked a bit into Arnold shader is that one is in C++ also. Not only that, Maya plug-ins and Houdini nodes can all be created in C++.

I have a question myself. Do shader writers get to do anything else in big studio? Do they get to look dev using the shaders they create or maybe occasionally light a scene? Or are their roles purely programming? If they are strictly programmers, are there that many shaders they need to create since most render engines already come with shaders covering every use already?

I used to be interested in RSL myself but I was afraid because I only have basic C++ knowledge. I'm not sure how far I can go in this path without proper programming education those science students have.
 
Old 09 September 2013   #6
I feel you Panupat. I'm in the same boat myself. I want to reveal my biases - I'm an outsider looking into the industry and have little work experience. From professionals that I've talked to however, I've found that flexibility varies depending on the size of the company - whether you're asked to specialize or if you have room to change hands with other roles is determined by production need.

Hun, could you please give me a couple details on what C++ is applicable for on the side of shading? I know of CGFX's shaders where you can import your own Maya shaders and how RSL has an option to inject C++ or were you referring specifically to writing shaders for Arnold?
__________________
My posts are always so lllooooooooooooooooooooooooooooooooonnnng

~~~Korinkite~~~
 
Old 09 September 2013   #7
Arnold shader is not only written in C++, you need to compile it into .dll as well. Check this out.

https://support.solidangle.com/down...90559000&api=v2
 
Old 09 September 2013   #8
RSL is most certainly not dead if you intend you continue learning RenderMan. It serves as a good jumping board for other APIs too. It'll only help you make your portfolio even more appealing to potential employers.

All the best!
 
Old 09 September 2013   #9
RSL is far from dead. If you know nothing about writing shaders, then it's your best first step without having to deal with the complexities of C++.

It's also a much simpler introduction to some of the maths involved in shading and lighting as well as some image processing/compositing maths.

If you know RSL then OSL is a breeze.

A couple of good online resources are...

http://renderman.pixar.com/view/renderman-university
http://www.fundza.com/

Also the documentation for Renderman and 3Delight is a great resource for shader writing.

The following books are also excellent for learning (you should be able to pick up a used one for cheap)...

http://www.amazon.com/The-RenderMan...&qid=1379274843
http://www.amazon.com/Advanced-Rend...pd_bxgy_b_img_y

As usual "depends on the studio", but to address a few specific points...

Originally Posted by Panupat: Do shader writers get to do anything else in big studio?


Yes, sometimes the shader writers are also the lookdev artists and sometimes they just develop shaders which are used by other artists.

Originally Posted by Panupat: Arnold shader is not only written in C++, you need to compile it into .dll as well.


All shaders generally need to be compiled into machine-code, however like other scripting languages such as Python or MEL, SL is a lot more portable than C++.

Originally Posted by ColinKennedy: could you please give me a couple details on what C++ is applicable for on the side of shading?


Mental Ray, Vray and Arnold all use C++ in order to write shaders. Mental Ray does have a scripted shading language but I've never looked into it, Vray has support (upcoming?) for OSL.

In terms of C++ and Renderman shader writing, the most common application is for writing plugins to extend the functionality of RSL.
 
Old 09 September 2013   #10
When you are asking if RSL is dead you are essentially asking if prman is dead (I know there are other implementations, but Pixar's is by far the biggest). It isn't dead yet, but it isn't too rosy either. Prman's achilles heel is still ray tracing - especially running the shading engine on hit points.

It's the industry's worst kept secret (http://www.fxguide.com/featured/pix...erman-turns-25/) that prman 19 will include a very different beast with a pure bidirectional path tracer which won't run RSL code. However being a brand new renderer this will be having a much longer alpha/beta than usual.

I think it is still worth learning some RSL - the principles are much easier to pick up without the overhead of learning C/C++ too. Also there are a lot of places which still have large production code bases in RSL.

However the longer term future isn't looking too rosy.

Simon
__________________
http://www.rendermania.com/
 
Old 09 September 2013   #11
Originally Posted by rendermaniac: It's the industry's worst kept secret (http://www.fxguide.com/featured/pix...erman-turns-25/) that prman 19 will include a very different beast with a pure bidirectional path tracer which won't run RSL code


Good spot. I took the new 'Porting RSL to C++' as being that you could write shaders in C++ in addition to RSL.
 
Old 09 September 2013   #12
It's not really an either / or question:

- C++ is a generic programming language that out of the box knows nothing about graphics.

- RSL is a programming language that is specialized for shading within the environment of a hybrid REYES / tracing renderer.

- OSL is a programming language also specialized for shading tasks, maybe slightly more oriented towards ray-tracing.

To add to the confusion, in PRman, the RSL language can be extended with plugins written in C++ (often for optimization purposes, sometimes to access data in particular file formats). Similarly, OSL provides a JIT LLVM compiler, so i assume that it should be linkable with C++ extensions.

None of the above really matters when developing shader code though: maths, physics & rendering algorithms is what you should be worrying about. Computer languages are fairly trivial to learn and transition to, by comparison.
 
Old 09 September 2013   #13
Pick one language and learn it. Become good at it, write some killer shaders. Whether it's C++, RSL or OSL doesn't matter very much. If you can write good shaders in one language, you can write good shaders in the other.

If you're just starting out, I would suggest staying away from C++ and using OSL or RSL, as fighting against a C++ compiler, linker and dynamic library runtime can be frustrating and confusing.
 
Old 09 September 2013   #14
I definitely see the value of using RSL in order to become familiar/simplify the process of learning shader writing. I'm continuing my self-education there.

Reading through everything that has been said so far though - the inevitable evolution of PRMan towards C++ and the introduction of physically plausible shaders, it did raise some questions for me. Are older techniques still transferrable into a Physically Plausible environment?

Pixar is really pushing the Physically Plausible Shading and energy conversation, so much so that they've simplified their shaders down to basically just one type, the GPSurface. It's highly customizable and makes shading easier for artists in GUIs like Slim. Are older shading techniques still able to function correctly in this new architecture? What, if anything, will run counter to the Physically Plausible Model? Things like ray-marching volumetrics and shading models like Oren-Nayar, Cook-Torrance, etc.
__________________
My posts are always so lllooooooooooooooooooooooooooooooooonnnng

~~~Korinkite~~~
 
Old 09 September 2013   #15
Quote: What, if anything, will run counter to the Physically Plausible Model?


Mostly anything that breaks energy conservation equations. There is nothing preventing you from marching volumes and account for energy propagation correctly. Similarly, most of the common BRDF functions can be normalized to be energy conservative.

"Physically Plausible" is hardly a new concept: it's just the buzz-word of the moment, now that artists finally have to put down the pitchforks and torches and accept some constraints in their shaders if they want to play with the shiny new GI toys...
 
Thread Closed share thread



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
CGSociety
Society of Digital Artists
www.cgsociety.org

Powered by vBulletin
Copyright 2000 - 2006,
Jelsoft Enterprises Ltd.
Minimize Ads
Forum Jump
Miscellaneous

All times are GMT. The time now is 05:30 AM.


Powered by vBulletin
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.