-
Notifications
You must be signed in to change notification settings - Fork 365
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GenOSL : Subsurface BSSRDF questions #2198
Comments
Here is an initial implementation for Cycles: |
This is a good note, @boberfly, and we still need to add support for Here's the location in Open Shading Language where support for With respect to the naming convention, we currently use the term |
Thank you for looking into it @jstone-lucasfilm - yep we were discussing whether or not to support optional arguments but in the end decided to support the current closure arguments only. From having a look around I saw that random-walk is the best fit to default to as well as roughness at 1.0f and IOR of 1.4f for Cycles' implementation. |
Hi,
I am just getting my head around translating MaterialX nodes from USD SDR schema into OSL for ingesting into an OSL-compatible renderer eg. Cycles in this case in Gaffer, but also for other renderers as this functionality will be generalised. I've already found some missing closures in Cycles eg.
uniform_edf
as well asoren_nayar_diffuse_bsdf
differences and up-streamed them back to Blender.Am I correct in my observations that
subsurface_bssrdf
isn't implemented yet from seeing this, despite the builtin instdosl.h
?https://github.com/AcademySoftwareFoundation/MaterialX/blob/main/libraries/pbrlib/genosl/mx_subsurface_bsdf.osl
Also is this going to be renamed from
_bsdf
to_bssrdf
?I'm looking to upstream this back to Cycles also, however their
bssrdf
defined instdcycles.h
has a lot more capabilities, but it's understandable that every renderer would have their own unique approaches. Would the correct way of adding these things be making asubsurface_bssrdf
closure and add additional optional arguments when declaring the closure in Cycles as well as creating custom 'options' for theGenContext
for OSL-gen to pass pre-processor defines to OSL for renderer-specific tweaks? And for modifying things likestandard_surface.mtlx
to allow specifying an enum eg. to change the method of the BSSDF, would you just fork and modify your own with the added enum/string?Cheers
The text was updated successfully, but these errors were encountered: