Cel Shaders for Iray?
Daz 3D Forums > General > The Commons>Cel Shaders for Iray?
Cel Shaders for Iray?

in The Commons
Hi all,
Are there any (good) cel shaders out there for Iray?
Thanks a lot,
Me
Comments
DimensionTheory has a pack - https://www.daz3d.com/sketchy-toon-edge-and-art-style-shaders-for-iray
Hi,
Thanks for the reply. I know that product lets me "toonify" my renders using Iray, but does it also allow me to create that tipical toon look in textures with ionly two or three shades to define color like in the attachment?
Thanks a lot,
Me
No. But if you light it right and use simple colors, post filters should do a good job at replicating the look.
Are the Crescent shaders updated for Iray? Or is there an Iray alternative?
Thanks a lot,
Me
DT's shaders are pretty much it for Iray. One day I mean to get them to figure out what they actually do.
Iray is difficult to do toon for because it is A) not meant to do that. All unbaised renders are Not Meant To Do That™. B) It lacks any obvious mechanism for hacking around that limitation to create the proper effect. Or, perhaps it's better to say, it's not clear that Daz's implementation of Iray has the right bells and whistles. Ideally, you want a flat shader that is unreactive to incoming light. Emission is normally good for this, but then you need a means of preventing the emission effect being visible to anything but the camera. Ambient Occulusion also works if you can limite the distance to very small amounts. It's not immediately obvious how to do that in Iray. 3Delight, OTOH already has a built in toonshader system, and is probably a much easier way to go about it.
Most people want to use an unbaised renderer because they use the GPU to crunch the numbers, which is a good reason, but these renderer strive for realism, (with the exception of Blender Cycles to my knowledge, though I think Poser Superfly has it as well. Of course, Superfly is just a different implementation of Cycles) they don't have built in methods for getting the right flattening effect for cel shading. Obviously, DT did it, for some degrees of doing it (less cel, more noir inked) but it's not really obvious how, which goes a ways to explaining why only DT has really done it. At least for Daz Iray.
Hi again,
So if I were to try and create this myself for either 3delight or Iray, what programs would I need to build this kind of shader from scratch?
Thanks a lot,
Me
Notepad, if you're lucky.
Otherwise, you'd need the nvidia Iray SDK and an appropriate complier. You'd need to learn to program an Iray bidirectional scattering distribution function, as opposed to using the MDL to invoke them. I don't know that that's the case. It may be possible to bang a real cel shader together using just MDL or even just Daz bricks.
Here's the thing. Outside the DT shaders, no one on the internet seems to have banged out celshading for iray. This is indicative.
It suggest the problem is very difficult to crack. Blender Cycles launched with no NPR support. It was matter of days or weeks and there was a celshading hack on the web. Iray has been around for a long time, by tech standards. No similar workaround seems in the offing outside DT's shaders.
So you are looking at inventing a wheel only one person seems to have found the fundamental shape of from first principles. At the very least, you're going to need to buy those shaders to see how it was done
If you use 3dl then the PWToon shaders are probably your best bet.
Thanks for the replies!
I've been on the hunt for the perfect toon shder for years now. Every single one that I've come across, either doesn't cel shade the colours quite right or has issues with the outline funtionality...
Does anybody know anything about the blender cel shade system? Haven't tried that yet.
Thanks a lot,
Me
Within DS, the most perfect system, imo, is PWToon + LineRender9000.
Thanks, I know of both products, but still, to my taste, the result is still "off" in the outline department...
Also I was hoping to find a solution that would give me the final toon picture in one render, without the need to layer multiple renders together.
Thanks a lot,
Me
I use Blender, and I can say bot of Blender's render engines are far and away superior in term of toon ability compared to either of Studio's options.
Neither is easy to learn. Moving a figure from Studio to blender, and getting the materials set up is also going to be a pain.
These problems can be solved, but if the difficulty of learning Iray's Material Definition Language is a 10, I would say the level of complexity in learning to smoothly transfer a scene from Studio to Blender is like an 8.
Pwroon sounds like the solution you want, unless you really want to make use of a GPU.
Well, it looks like I'll have to learn how to use blender then, because I would like to make use of my dual GPU rig... Any courses you could maybe point me to to get the hang of this?
Blender itself is a free product, but how about possible addons I would need to create this toon effect?
Thanks a lot,
Me
I'm keeping the details of how I do it secret. It's two years of my life, and I'm the only person on the web who does it, so I'm leaving it as an excersie for other to figure out how make that kind of material. That said, I will explain broadly.
You will need McjTeleblender. It's suite of scripts for Studio and Blender that will bridge a scene from Daz to blender. It will not allow you to do much with the scene in blender, so you have to set things up in Studio the way you want them.
You will need to study Blenders materials nodes editor. You need to understand how to make the nodes behave as you want for whatever render engine you choose.
You will need to have a minimal understanding of Python, enough to edit the makeCyclesNodes.py file in the Blender side of mcjTeleblender so as to replace the diffuse node with a node group.
You will need to create the node group you've added to the py file in Blender, attach it to something or give it a fake user, and then save that scene as your start up scene. Otherwise, makeCyclesNodes will be looking for something that doesn't exist.
Inside the node group you can then build the shaders (either cycles or Blender internal) they you want. At run time, Teleblender will automatically attach the shader definiton to the materials it gets from Studio.
I did say this was about 80% as hard as teaching yourself MDL.
Thanks for the tips! Looking forward to the next two years of my life :) Respect that you figured that out!
Thanks a lot,
Me
Using 3delight you need to learn Renderman, if you want produce robust outline without ugly artifacts produced with normals approach you need to learn daz scripting. For this last is better that you use LineRender9000 or Toony cam pro. The cell shading is more easy, in fact is enough with shader mixer to produce it, but shader builder give more control. In both cases you need to know something about renderman.
Hi, Thanks for the reply!
What is shader builder (yes, I'm not that skilled in shaders :) )? I know what the shader mixer is and where to find it, but I haven't heard of a shader builder before...
What is that and where do I find that?
Thanks a lot,
Me
Shader Builder is another pane, it's similar to Shader Mixer (bricks connected by links) but in this case you get access to the snippets of RSL code and the whole thing compiles at the end, instead of being interpreted at render time.
Thanks a lot!