Jump to content

layered shaders


Recommended Posts

hi,

is there an elegant way of layering shaders in houdini?

basically, if I have a leather shader for example and then a dust shader or a dirt shader etc, and I want to layer them, and if both shaders are in fact, at their origin, the same shader, so they have the same parameters/parameter names, when I add the 2 shaders in the same vop network, half of my parameters will become unavailable, so I have to go parameter by parameter and rename them bastards... and, of course, my shader's interface will also have to be redone. all this is no biggie if you do it once or a few times maybe, although it's a mighty waste of time, but it becomes really impractical on a larger scale.

so I'm making a generic layered shader... and all my maps have a certain number of layers... the problem with this approach is that it's inefficient for both the renderer - because every layer has ALL the parameters available, what if I want to layer a diffusion-only shader with a diffusion+specular+reflection shader... it would be ideal if I only kept what's necessary in each layer - and it's inefficient for the 'shading artist' (that would be me) as well, because I can't imagine yet a way to save my presets, or layers - so I can combine for example the leather preset with a scratches preset maybe.... instead of the above-mentioned dust and dirt... and this approach is not smart nor flexible, I'm making separate shaders for a 2-layer, or 3-layer-shader for example, and then what if I need a 10-layer all of a sudden? I have to build one that specifically has 10 layers...

any ideas would be greatly appreciated, thank you!

vm

Link to comment
Share on other sites

yep it looks pretty awkward at the moment. from what I can tell

you would have to pre-compile your vopnet 'shaders' into digital assets

and layer them up in a new vopnet. a shop-level composite node would be

much better, especially if the alpha of a 3rd shader as the blend multiplier.

post-369-1211231510_thumb.jpg

Link to comment
Share on other sites

steven, thanks, of course I looked at the VEX Layered ;) but I need to be able to layer my own shaders.

yo cpb, wow, thanks a lot, awesome idea, why didn't I think of it?? :D

I don't see why I can't use a texture as alpha between layers... let me see how this works... :)

cheers!!

Link to comment
Share on other sites

hm... except that when making a subnet or a digital asset and duplicating it, the parameters of the duplicated shaders are going to have the same name as the original, and therefore will be inactive...

so.... is there a way to have houdini rename Parameter Name automatically when you duplicate a parameter?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...