Creating a gold shader in V-Ray for Maya with a metalness workflow

We are at that point again when blog posts I’ve written in the past are obsolete again. For a long time, I was happy with my metal shading workflow and didn’t see the need to update. And I was slow to embrace PBR and didn’t see the need to implement it. But after some encouragement from my colleague, I did some long-overdue research and quickly realized that it was time to re-invent my workflows again. So to test this new workflow using Metalness, I created a gold shader and compared the method to my old approach. 

My old method consisted of using the Complex fresnel OSL shader and feeding values from https://refractiveindex.info. So basically you needed to type in values for the n and k coefficients for the different wavelengths of light. It was a little bit tedious, but I only had to do it once and could then save them as presets, so it was okay.  

If you, for some reason, want to read more about the old method you can do that here: http://www.magnus-olsson.se/creating-mastering-v-ray-shaders-in-maya-lesson-02-materials-101/.

But now on the new method. With this, you don’t need any external files at all. All you have to do is punch in values provided in a chart from this article in a standard V-Ray Material: https://www.chaosgroup.com/blog/understanding-metalness#. (Worthwhile reading the rest of it as well). 

As soon as I came to terms with the fact that it was okay to have color in the diffuse slot for metal materials, I quickly grew fond of the approach. It’s quicker and simpler to set up and also takes about half the time to render compared to a gold shader with the OSL method. 

A note is that this workflow is only possible in V-Ray Next since you need the Metalness checkbox in the material. If you haven’t already upgraded, I highly recommend it. 

Showreel Spring 2018

I’ve just published a new showreel with some of my work as a 3D Generalist. A more detailed breakdown of what I’ve done is available under my portfolio and on Vimeo. Check it out!

3D and VFX Showreel Spring 2018 from Magnus Olsson on Vimeo.

Digital Emily skin shader setup using regular V-Ray materials and AlSurface Shader

I’ve been required to do skin shaders in V-Ray from time to time at work and I usually like to start with the data provided by Digital Human League for the Wikihuman Project as a reference. You can find the available data here: http://gl.ict.usc.edu/Research/DigitalEmily2/. It’s a set of textures captured at the ICT Lightstage of an actress named Emily and the data set is referred to as Digital Emily. For Maya users there’s a Maya scene included, prepared with lights and shaders just ready to render. However, if you’re not just using it as it is and perhaps want to use the shaders as a starting point for your own project the setup is not ideal as it relies on plugin materials instead of the regular materials in V-Ray. For example the SSS shader looks like this:

I would much rather have a VRayFastSSS2 material instead and a VRayMtl for the specular components. It’s fairly straight forward to convert these plugin materials to regular materials. I’m happy to share my Maya scene with my already converted shader setup. Just write a comment in the section below. This shader setup is a pixel perfect match with the plugin material setup and the results looks like this:

I think the results are quite nice, but there’s some parts of the SSS I don’t like. The glowing parts around the nose for example. And the shader setup is quite complex with four different materials blended together. The node tree looks like this:

With the release of AlSurface Shader in V-Ray there’s a possibility to get even better result within one single shader using the same textures. Here’s a blog post from Digital Human League about this topic: http://www.wikihuman.org/index.php/off-topic/the-alsurface-shader-on-the-wikihuman-data/. Here they use the Digital Mike data set, but that’s not publicly available as far as I know. They describe briefly how to use the AlSurface shader instead but doesn’t go into detail. It’s fairly straight forward, but there are some potential pitfalls. First of all you need to invert the single scatter map. You can either use an external program, like Nuke, but the easiest way is to use a Reverse node in Maya. Another thing that needs to be inverted is the Reflection Roughness values compared to the Glossiness values in the VrayMtl. For example 0.2 insead of 0.8 and so on. Here’s the settings I ended up with:

Once again, as I’ve already done a conversion and have a prepared Maya scene I’m always happy to share it if someone’s interested. Here’s the result using the AlSurface Shader.

It took a bit longer to render but I like the result more. I think the SSS feels more realistic now and have less of the glowing effect from the other setup.

Mastering CGI shader ball 2016 converted to Maya

I’ve converted the Mastering CGI shader ball (2016) to Maya. It’s a complete Maya scene with lights and shaders (manually converted so not pixel perfect but close enough) so it’s ready to use. If anyone is interested you can contact me (use the Contact Form here on the website or write a comment below). The max version of the shader ball is shared for free on cgtricks (https://cgtricks.com/shader-ball-2016-mastering-cgi/) with the following restrictions: ”You can use the shaderball for personal and commercial use, but you don’t change the base textures or resell the ball. Now, enjoy and share it around.” I assume the same rules would apply here.

Showreel Spring 2016

I’ve created a new showreel that includes work I’ve done over the last two years at Filmgate. Check it out under my portfolio!

 

Creating Mastering V-Ray shaders in Maya: Lesson 02 – Materials 101

A while ago I wrote a blog post called ”Creating Mastering Vray style shaders in Maya”. My goal was to translate some of the techniques Grant Warwick uses in the course Mastering V-Ray in 3ds Max to Maya. A lot of people still contacts me about these techniques and I’ve been feeling more and more bad about how outdated they are. So I thought it was time to update this and show how I would create these shaders today. And with new features like GGX and OSL it’s both faster and simpler to do now!

This post will cover how to create a plastic and a gold shader. Basically what I do is recreate the shaders from Mastering V-Ray: Lesson 02 – Materials 101, but with an updated approach. If this is something that people will find interesting I might continue and cover other Mastering V-Ray lessons in Maya. So please comment or contact me and let me know what you think!

Let’s start with the plastic shader. This is how the node tree looked like with the old setup:

Plastic_Old_NodeTree

It requiered three different V-Ray materials (with different values for Reflection Glossiness) to be blended together. I’ve also used the RemapValue node as an equivalent to the Falloff node in 3ds Max which is not ideal since it is pretty clumsy. V-Ray 3.3 introduces a Falloff node in Maya with a lot of the same features as in 3ds Max.  I’ve only tried it briefly but I was a little bit disappointed by the lack of bezier handles. For this plastic shader I didn’t need any falloff node since I could get the desired result with a simple V-Ray material with GGX as BRDF. Here is the settings I used:

Plastic_GGX_settings

Here is a comparision between the old shader (to the left) and the new (right):

Plastic_comparison

And now on to the gold shader. I’ve used the same approach as with the plastic shader to not blend multiple materials but to rely on a single material with GGX as BRDF.  The other big difference is that I use an OSL texture for the reflection instead of using Remap Value nodes. The OSL texture is called Complex Fresnel and you can read more about it here: http://docs.chaosgroup.com/display/OSLShaders/Complex+Fresnel+shader. The way I use this is that I start by browsing to the right material on http://refractiveindex.info/ and simply type in the right values for n and k based on the wavelength (0.650, 0.510, 0.475 for R, G and B). This is how the page looks like:

Refractive_Index_Gold_red02

There is actually a shelf called ”selected data for 3D artists” and that’s a good place to start. However, I found the values for the gold there made it look to reddish, almost like copper. So I tried a few different other Pages and chose the values from the Babar and Weaver 2015 instead.

And this is how the OSL texture looks in Maya:

All of this is better explained here: http://viscorbel.com/vray-materials-part-3-metals/ so I encourage you to read that as well.

This is how the node tree looks like for the gold shader:

Gold_OSL_Node_Tree

The color correction is for purely artistic reasons to tweak the shader to your own liking. In this setup I tried to make the gold look more like the old shader. This Color Correction node is not a default node but can be created from Create – V-Ray – Create from V-Ray plugin – Texture. By multiplying the reflection with a V-Ray Dirt I make the shader slightly less reflective in occluded areas.

This is the final settings for the shader:

Gold_OSL_settings

And here is a comparision between the old shader (to the left) and the new (right):

As you can see they are not exactly identical but I think they new one is looking better so I didn’t tweak it further to match the old one. Also worth mentioning is the significant dropoff in render time between the old shader and the new.

I have some plans to continue with these blog posts and the next one up would be a Green Metallic Paint shader, which is similar to the one Grant creates in Mastering V-Ray: Lesson 04 – Advanced Material Creation Part 1. But like I said earlier, it depends if someone actually finds this interesting. So please comment and let me know what you think and what you would like to see in the future.

Showreel Spring 2014

I’m finally finished with creating my showreel for spring 2014. It includes the most recent work I’ve done at Filmgate. Check it out here in my Portfolio.