[Bf-cycles] Realistic Nk-Data Metal BSDF

Brecht Van Lommel brechtvanlommel at pandora.be
Fri Dec 27 14:29:29 CET 2013


Great work. I agree about the vector socket and adding a table in the
wiki until we have a preset system here.

For the implementation, I'm not quite sure yet how we should expose
this, you added a BSDF node while we have previously used a separate
Fresnel node for this kind of thing. Maybe it's needed, I'll need to
look into it closer.

The parameter names might also need to be tweaked, we usually try to
avoid names such as Eta or K, however if there is a convention in
other renderers to use these same names then it would be ok. If Eta is
index of refraction then it should be called IOR. We can do further
code review when you submit this to our code review tool.

Brecht.

On Thu, Dec 26, 2013 at 8:18 PM, Greg Zaal <gregzzmail at gmail.com> wrote:
> Hey folks,
>
> Indeed, vector socket like the SSS radius is the way to go.
>
> As for presets, I think we should have this as a todo for a later stage. We
> could benefit with presets for many areas, such as wavelengths, color
> temperatures, SSS presets like BI, and even complete material setups.
> This is not a new idea of course, I just think if we're to add presets for
> certain things, we should begin doing the same for others similarly.
>
> Instead of (or in addition to) presets, some nice documentation with those
> measured Eta and K values will be important - I've little experience with
> this sort of physically based shading, but if you need any help with the
> documentation I'd be glad to.
>
> Great job on this Lukas :) I've no doubt many folk will appreciate it.
>
> Cheers,
> Greg Zaal
>
>
> On 26 December 2013 20:23, Thomas Dinges <blender at dingto.org> wrote:
>>
>> Oh and I forgot, we already have a fresnel_conductor() function, which
>> is currently unused in bsdf_util.h, maybe you can re-use that?
>> For OSL you would need to copy the code into node_fresnel.h, and include
>> this in the OSL shader then.
>>
>> Am 26.12.2013 19:17, schrieb Thomas Dinges:
>> > Hi,
>> > looks good already, thank you.
>> >
>> > I wouldn't go with color sockets, that is weird, as the resulting color
>> > is not what the user sets. Probably it would be better to use vector
>> > sockets for this, but I leave this decision to Brecht. (We already use
>> > the Vector socket for SSS RGB Radius).
>> >
>> > As for presets, not sure. We don't have presets yet for (Shading) Nodes,
>> > but maybe this could be added.
>> >
>> > Also on a side note, maybe you'd like to use this here to upload
>> > patches: https://developer.blender.org/differential/diff/create/
>> > This way its easier to review the code and we have all infos/patches in
>> > one place. :)
>> >
>> > Best regards,
>> > Thomas
>> >
>> > Am 26.12.2013 17:45, schrieb Lukas Stockner:
>> >> Wow, adding a node was really difficult, but I got it working. Attached
>> >> is a
>> >> patch that adds a "Conductive BSDF" which just calculates reflectance
>> >> based on
>> >> the Fresnel equation for conductors.
>> >>
>> >> Its inputs are Eta and K, the coefficients of the complex IOR, and
>> >> Roughness. It
>> >> supports Sharp, Beckmann and GGX microfacets. Performance and sampling
>> >> look
>> >> just as good as the Glossy BSDF. I haven't tried the OSL version yet
>> >> since I
>> >> can't get it to build, but the shader itself works in standard 2.69.7
>> >> in the
>> >> script node. GPU should work, but not tested since my GPU still is
>> >> Compute
>> >> Capability 1.3.
>> >>
>> >> Two questions remain: First, how should the ETa and K values be input?
>> >> Currently, since thay are RGB, they just show up as a color. However,
>> >> their
>> >> compontents can easily reach 5 and higher. 6 Sliders, on the other
>> >> hand, ane
>> >> probably overkill. Second, should there be a set of preset coefficients
>> >> to
>> >> choose from (like in the LuxRender plugin), or just a list somewhere in
>> >> the
>> >> Wiki?
>> >>
>> >> I have rendered a simple demo, the image is on
>> >> http://postimg.org/image/70vyf00yp/ . From left to right, the materials
>> >> are:
>> >> Silver, Gold, Chrome, Copper and Aluminium. The coefficients are simply
>> >> from
>> >> multiplication of the PBRT measurements with the CIE XYZ curves and a
>> >> transform to sRGB. If someone is interested, I could post an Octave
>> >> script for
>> >> it.
>> >>
>> >> Lukas Stockner
>> > _______________________________________________
>> > Bf-cycles mailing list
>> > Bf-cycles at blender.org
>> > http://lists.blender.org/mailman/listinfo/bf-cycles
>>
>> _______________________________________________
>> Bf-cycles mailing list
>> Bf-cycles at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-cycles
>
>
>
> _______________________________________________
> Bf-cycles mailing list
> Bf-cycles at blender.org
> http://lists.blender.org/mailman/listinfo/bf-cycles
>


More information about the Bf-cycles mailing list