el_diablo Posted October 11, 2014 Share Posted October 11, 2014 It should work without a problem as long as the specific functionality you are using are not changing (which would mean you have to change the code and recompile anyway). As vex is compiled to bytecode and interpreted on runtime it is much more forgiving in that regard. As for a new version of Houdini/Mantra you probably have separate repositories for your major versions anyway, so I don't see a problem there. You can use the Mix VOP to blend bsdfs (I feel like this answer is too obvious and you might mean something else ) Thanks, I thought as BSDF isn't color on output there would be a special node of sorts to do a weighted blend, good to hear it being so simple. Quote Link to comment Share on other sites More sharing options...
jkunz07 Posted October 11, 2014 Share Posted October 11, 2014 You can also use add, multiply, and subtract Quote Link to comment Share on other sites More sharing options...
ndeboar Posted October 15, 2014 Share Posted October 15, 2014 I ended up compiling ggx_eval and ggx_sample into our otl. If anyone's interested, you can do this in vcc: vcc -L /path/houdini/shader.otl ggx_eval.vlf vcc -L /path/houdini/shader.otl ggx_sample.vlf And then you can read it back in: $f = bsdf(); $f = cvex_bsdf( "opdef:/Shop/ggx_eval?", "opdef:/Shop/ggx_sample?", "label", $label, 1 Quote Link to comment Share on other sites More sharing options...
timmwagener Posted November 4, 2014 Share Posted November 4, 2014 (edited) Hey guys, i'm encountering some strange behaviour with the GGX BRDF node from the v1.1 stable release of the otl. Basicaly when i'm turning on anisotropy, i get strange blocks for polygons. Here are some screenshots The error is happening in the direct reflection. Indirect reflection looks right Edit: K, it doesnt seem to be an issue with the GGX nodes, it also happens with a normal PBRSpecular node and anisotropy turned on... Must be something with the scene setup. Anistropy on (problem): Anisotropy off (clean): Here's how i wired it up: Is this some known problem or am i using it wrong? Edited November 4, 2014 by timmwagener Quote Link to comment Share on other sites More sharing options...
Kardonn Posted November 4, 2014 Share Posted November 4, 2014 Wire it up with a compute tangents node first and you'll be set. Plug the output utan and vtan into the corresponding ones on the ggx shader, they're hidden by default. 1 Quote Link to comment Share on other sites More sharing options...
timmwagener Posted November 4, 2014 Share Posted November 4, 2014 Wire it up with a compute tangents node first and you'll be set. Plug the output utan and vtan into the corresponding ones on the ggx shader, they're hidden by default. Works! Thanks Quote Link to comment Share on other sites More sharing options...
sebkaine Posted December 1, 2014 Share Posted December 1, 2014 Jim you are a JEDI ! Quote Link to comment Share on other sites More sharing options...
magneto Posted January 20, 2015 Share Posted January 20, 2015 Does this material have a high level version or is it supposed to be used low level, i.e. when you want to use a texture map for roughness? Quote Link to comment Share on other sites More sharing options...
Solitude Posted January 20, 2015 Share Posted January 20, 2015 Does this material have a high level version or is it supposed to be used low level, i.e. when you want to use a texture map for roughness? It's more like a replacement for the surface model. 1 Quote Link to comment Share on other sites More sharing options...
j00ey Posted January 22, 2015 Share Posted January 22, 2015 I'm having some trouble with the Disney BSDF in H14. It was all working fine in 13 but now as soon as I try and render anything that has a Metallic setting below 1 I get this error, Can anyone tell me what I'm doing wrong? - mantra: Unable to find CVEX shader 'oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample' mantra: bsdf_utils.h:247:6-14: Error 1015: Cannot override intrinsic function: void makebasis(vector; vector; vector) mantra: Failed to resolve VEX code oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: Could not find VEX code. mantra: Failed to resolve VEX code opdef:/Shop/oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: Could not find VEX code. mantra: Failed to resolve VEX code opdef:/Vop/oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: bsdf_utils.h:247:6-14: Error 1015: Cannot override intrinsic function: void makebasis(vector; vector; vector) mantra: Failed to resolve VEX code oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: Could not find VEX code. mantra: Failed to resolve VEX code opdef:/Shop/oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: Could not find VEX code. mantra: Failed to resolve VEX code opdef:/Vop/oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample Quote Link to comment Share on other sites More sharing options...
magneto Posted January 22, 2015 Share Posted January 22, 2015 It's more like a replacement for the surface model. Thanks Solitude, it makes sense now Quote Link to comment Share on other sites More sharing options...
ajz Posted January 30, 2015 Share Posted January 30, 2015 I'm having some trouble with the Disney BSDF in H14. It was all working fine in 13 but now as soon as I try and render anything that has a Metallic setting below 1 I get this error, Can anyone tell me what I'm doing wrong? - mantra: Unable to find CVEX shader 'oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample'(...) I get some errors too. And it worked great in 13. Are there any chances for this awesome VOPs pack to be made compatible with Houdini 14? Quote Link to comment Share on other sites More sharing options...
edward Posted January 30, 2015 Share Posted January 30, 2015 In case some people have missed it. Thursday, August 7, 2014Houdini 14.0.55: Added the GGX Microfacet model as a Specular Model in the Physically Based Specular VOP. Added Specular Roughness parameter which is used instead of Specular Angle when GGX is chosen.Also exposed these options in the Surface Model VOP.GGX is now the default Specular Model in the Mantra Surface shader in both reflection layers. Additionaly, the Coat layer now defaults to perfectly sharp specular reflections. Quote Link to comment Share on other sites More sharing options...
ajz Posted January 31, 2015 Share Posted January 31, 2015 Hello Edward.Yes, I know. However the Disney BSDF shader offers an almost "out-of-the-box" compatibility with metalness PBR workflow of Substance Designer and the newest beta version of 3D-Coat, with little to no tweaking. With the new Mantra Surface shader and surface model in general, I'm still trying to figure out the correct settings to match the output I get in those programs. Quote Link to comment Share on other sites More sharing options...
Serg Posted January 31, 2015 Share Posted January 31, 2015 I found while migrating to H14 that the sidefx implementation name clashes with Wolfwood's otl, so they cant both be used at the same time. To fix that I made a copy of the ggx cvex shaders, appending a W to the name (must also be done on the Node tab in type properties or the cvex_bsdf() wont find it), and changed the cvex_bsdf() path to reflect this. The H14 implementation does not appear to use microfacet Fresnel shadowing as Wolfwood's does. i.e. as roughness goes up the result should darken a lot. That feature enables to shade specular the physical/easy/good looking way, with just roughness map, no need to mess around with reflectivity maps/slider/scaling factors. Presumably it was implemented this way because the correct albedo still cant be computed, and so the mantra surface still has to post multiply the specular bsdf with unrealistic (perfect mirror) Fresnel. I'm still using the fake ggx albedo hack as per a few pages back to multiply diffuse with, although obviously not `scientific`, it works better than using basic Fresnel complement to mult diffuse with. The Disney shading model uses basic Fresnel for this, which causes dark edges when spec rough is high. IMO it's much more wrong to ignore microfacet Fresnel, for the sake of mathematically perfect energy conservation with unrealistic Fresnel. 2 Quote Link to comment Share on other sites More sharing options...
ajz Posted February 5, 2015 Share Posted February 5, 2015 (edited) I did what Serg suggested, reimported the OTL a couple of times, rebuild my networks and... it worked. I still get some errors when rendering, if metallic is lower than 1: mantra: Unable to find CVEX shader 'oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample' mantra: bsdf_utils.h:247:6-14: Error 1015: Cannot override intrinsic function: void makebasis(vector; vector; vector) mantra: Failed to resolve VEX code oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: Could not find VEX code. mantra: Failed to resolve VEX code opdef:/Shop/oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: Could not find VEX code. mantra: Failed to resolve VEX code opdef:/Vop/oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: bsdf_utils.h:247:6-14: Error 1015: Cannot override intrinsic function: void makebasis(vector; vector; vector) mantra: Failed to resolve VEX code oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: Could not find VEX code. mantra: Failed to resolve VEX code opdef:/Shop/oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample mantra: Could not find VEX code. mantra: Failed to resolve VEX code opdef:/Vop/oplib:/Shop/disney_diffuse_sample?Shop/disney_diffuse_sample But surprisingly the results are identical to those from Houdini 13. What is with this makebasis function, and why does this error only occur in Houdini 14? Edited February 5, 2015 by ajz Quote Link to comment Share on other sites More sharing options...
Serg Posted February 7, 2015 Share Posted February 7, 2015 Hi ajz, I only did what I did to get the ggx shader working. I'm not using the Disney stuff, but that stuff should not be name clashing with H14 stuff... Probably just needs a Woolfwood compatibility sweep. Quote Link to comment Share on other sites More sharing options...
glassman3d Posted March 17, 2015 Share Posted March 17, 2015 Hi All These shaders are fantastic, I have been using the disney plausible shader on all my work for a few months now with substance designer - truly a revelation I am currently wrapping it up into an ubershader and have the same errors in my shell as Ajz is there any chance someone could point me in the right direction with how to resolve this? many thanks Quote Link to comment Share on other sites More sharing options...
cammann Posted May 22, 2015 Share Posted May 22, 2015 These shaders are great, thank you for sharing Jim! I've ran into an issue with the disney shader. Indirect diffuse is too bright when using an indirect light (with PBR). I assume this might be related to the albedo issue that Serg mentioned? Has anyone managed to make this work? Or any ideas how to make it work? thanks Quote Link to comment Share on other sites More sharing options...
cammann Posted May 22, 2015 Share Posted May 22, 2015 oh and for anyone who is trying to make this work in H14. Looks like sidefx have added their own version of makebasis() So just replace all instances of makebasis with a different name in the various _sample and _eval ops and it should work fine. Hope that helps Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.