View Full Version : metal - getting a 'buffed' round specular effect
anthonymcgrath 07-22-2008, 03:53 PM hi all
I'm trying to figure out how to get a machine-polished highlight effect on metal. I was initially thinking brush metal but its not quite accurate. Imagine a blinn shader but where the highlight is there is a kind of stretched noise that runs concentric rings around the highlight giving a very subtle buffed specular effect. The nearest I've seen is on car paintwork where someone uses a machine buffer that spins in small circles very fast and creates this effect (unintentionally I think) but as the sun then catches the paintwork you can see the rings effect?
I'm sorry I cant explain it better and I'm having trouble finding images of what I mean but nevertheless does anyone have an idea of how to go about it please?
| |
jeremybirn
07-22-2008, 05:25 PM
I think what you're looking for is anisotropic highlights, with the circular pattern mapped to the direction.
If you have access to it, Boaz Livny's Mental Ray book has an tutorial on doing that and a sample scene with it set-up.
-jeremy
anthonymcgrath
07-23-2008, 08:56 AM
hi Jeremy
thanks for your reply - we actually have that book at work :) so i'll take a look thru it and see what I get :)
thanks again
ant
anthonymcgrath
07-23-2008, 10:36 AM
okay I had a read through that book and dug out the tutorial but bloody hell I'm so lost!! I just have very little experience with the mib_ mia shader stuff and I'm not quite sure whats going on with it :(
however I found a little workaround - I'd be interested in hearing ppls thoughts on it...
I created a circle noise texture in pshop by creating a 640x640 noise texture and adding some radial blur. saved it out as a jpeg.
now I use a projection on the texture, connect the texture to my blinn specular roll off using the colour as alpha.
Then I constrained the aim of the 3d placement node to the light that I want to use.
I aligned the 3d placement so it projects from the position of the light onto the object.
Now if I move the light the noisy spec appears to move too where the blinn specular is.
Its not foolproof - if theres more than 1 light obviously the specular effect doesn't take the 2nd one into account but it looks kinda interesing
anthonymcgrath
07-23-2008, 11:49 AM
hey guys
heres a still of what I have and the basic network. its not exactly clever and certainly not accurate but you can see what I'm trying to achieve. Basically if I move the light I get concentric rings around the hotspot on the blinn but its not really what I'm after.
dunno - maybe I'm overcomplicating it - i'll try persisting with the books tutorial now and see if I get better results :/
http://www.anthonymcgrath.co.uk/album/cgtalk_etc/blinn_spec01.jpg
jeremybirn
07-23-2008, 02:19 PM
I think the sample scene from the book is closer to what you want. You could even create a PhongE shader if you like regular Maya shaders, assign the PhongE to your object, and then just connect that Ward shader he's got to the Incandescence, use the ramp that had colored the Cook-Torrance as the color, and maybe add a bump2D to use the original brushedmetal texture as a bit of a bump, and then you'd be back to mostly regular Maya shaders to work with...
-jeremy
anthonymcgrath
07-23-2008, 02:41 PM
I think the sample scene from the book is closer to what you want. You could even create a PhongE shader if you like regular Maya shaders, assign the PhongE to your object, and then just connect that Ward shader he's got to the Incandescence, use the ramp that had colored the Cook-Torrance as the color, and maybe add a bump2D to use the original brushedmetal texture as a bit of a bump, and then you'd be back to mostly regular Maya shaders to work with...
-jeremy
hi Jeremy
thanks for your reply - I've had a good go through that tutorial now - from what I can gather the key component is the mib_texture_rotate which gets its ability to distort the specular of the ward shader from the texture is that right? I did a very quick render of a polyplane with a camera move over it and I could see that the specular effect seemed to 'rotate' and distort giving 'swirls' of specular light movement on the surface. I'll try piping that back into the phongE and see what I can get then post up some quick animation tests to show what I have.
jeremybirn
07-23-2008, 03:36 PM
Yeah, and if you need the same thing to distort real reflections, not just specular highlights, then the same inputs that go into the Ward can also go into a mib_glossy_reflection shader.
-jeremy
anthonymcgrath
07-23-2008, 04:27 PM
okies heres my texture - I want to create a tiling swirly brush effect on a ball (the ball will later be a helmet but no worries if I can get it working on this then I should be laughing). The ball is basically a smoothed cube with 3 subdivisions.
heres the texture I want to tile:
http://www.anthonymcgrath.co.uk/album/cgtalk_etc/swirly_brush_metal_half.jpg
and after setting up the shading network according to the book and applying your changes Jeremy I get the following:
http://www.anthonymcgrath.co.uk/album/cgtalk_etc/blinn_spec02.jpg
ten minutes of playing with the colour gain on the texture, the bump value on the 2d bump node, and the Ward shaderes shiny_u and shiny_v values and I get this:
http://www.anthonymcgrath.co.uk/album/cgtalk_etc/blinn_spec03.jpg
which overall I''m quite pleased with. The highlights are quite nicely controlled now. I'm sure if I play about I can get a really nice brush effect on just the hdri reflection.
thoughts n comments anyone?
anthonymcgrath
07-23-2008, 04:43 PM
okay I plugged the same network into a mib_glossy_reflection shader and applied that to my ball but no luck - the hdri reflections dont appear to be perturbed or distorted - it just looks like a mirrored ball :/ I'm not concerned with its colour as yet but I am just wondering if I'm undestanding the mib_glossy_reflection shader correctly here?
http://www.anthonymcgrath.co.uk/album/cgtalk_etc/blinn_spec04.jpg
ps - thanks so much Jeremy for your input - its been a great help so far :)
anthonymcgrath
07-24-2008, 11:52 AM
okay I've done a quick quicktime test for anyone interested in this like I am lol!
its a render of two poly planes with an animated light scouring over the surface of them. The one on the left is mib_texture_rotate with the ward shader. the one on the right is simple blinn with spec map. you can see a big difference in the way the texture is working with the specular of the light. see what you think :)
http://www.anthonymcgrath.co.uk/album/cgtalk_etc/mib_texture_rotate_vs_blinn.mov
*edit* if anyone can suggest any thoughts on my previous post about the hdri reflections working with the mib_texture_rotate that'd be cool :)
jeremybirn
07-24-2008, 06:38 PM
Could you post the settings on the glossy shader? As long as the roughness in U is different from the roughness in V, you should be getting anisotropic reflections. You don't need an environment color, just a reflection color.
-jeremy
anthonymcgrath
07-25-2008, 08:47 AM
Could you post the settings on the glossy shader? As long as the roughness in U is different from the roughness in V, you should be getting anisotropic reflections. You don't need an environment color, just a reflection color.
-jeremy
hi Jeremy heres my settings for the shader - The U_spread and V_spread are quite different but I'm not seeing any change in my reflection. I've tried blowing out the values such as U_spread = 10 and V_spread = 0.1 or something massive but still no change.
http://www.anthonymcgrath.co.uk/album/cgtalk_etc/mib_glossy_ref01.jpg
anthonymcgrath
07-25-2008, 09:09 AM
hang on if I turn off that "single_env_sample" button just above the samples (which are set to 32) I get soft glossy reflections based on the texture hurray!!!
this is the mib_glossy_Reflection shader reflecting a hdri environment. You can see the texture now affecting the reflection clearly :)
http://www.anthonymcgrath.co.uk/album/cgtalk_etc/mib_glossy_ref02.jpg
and here is the same mib_glossy_reflection shader with the ward shader plugged into the base material slot of the mib_glossy_reflection
http://www.anthonymcgrath.co.uk/album/cgtalk_etc/mib_glossy_ref03.jpg
obviously its not the final material I'm after but the 'sworly' effect on the reflection and the highlight should work really well once I fine tune it all.
jeremybirn
07-25-2008, 02:32 PM
Looks great!
-jeremy
anthonymcgrath
07-25-2008, 02:56 PM
once again - thanks for all your help on it Jeremy.
Give everyone at Pixar a pat on the back for Wall-E ...I think I speak for everyone in the uk when I say its a work of pure brilliance and literally resets the benchmark for cg feature films.
DrEvils
07-25-2008, 11:08 PM
Any chance of posting up a dl link for that network? I've been scouring the internet for anything to achieve that kind of effect, I'm trying to re-create the same 'micro-buff' effect on a car paint shader (on the clear coat). I understand a bit of what's happening, but actually trying to recreate your network is difficult, most of the maya help files are either to vague or too technical. Any help is greatly appreciated.....
jeremybirn
07-27-2008, 04:12 AM
Any chance of posting up a dl link for that network? I've been scouring the internet for anything to achieve that kind of effect, I'm trying to re-create the same 'micro-buff' effect on a car paint shader (on the clear coat). I understand a bit of what's happening, but actually trying to recreate your network is difficult, most of the maya help files are either to vague or too technical. Any help is greatly appreciated.....
I did some work on making an implementation of circular brushed metal that looks good in different lighting and LODs, and works consistently in doing the same thing to both the raytraced reflections and the specular highlights. I haven't documented what's going on yet, but please try adjusting the Dishing node's Blender variable, it's very useful! :)
http://www.3drender.com/light/brushedmetal/CircularBrushedMetal.jpg
http://www.3drender.com/light/brushedmetal/Hypershade.png
You can download the maya scene and my texture map from here:
http://www.3drender.com/light/brushedmetal/
Hope this helps.
-jeremy
PS - I know what you mean about the Maya docs. Have you got Boaz Livny's Mental Ray book yet? It gives better explainations of a lot of these nodes than you'll find in the manuals.
avinashlobo
07-28-2008, 09:01 AM
This has been a very informative thread. Thanks guys.
A couple of questions:
- Have you chosen this shading network over the mia_material node for specific reasons? The mia_material node produces very similar results, so I was just wondering...
- How do you create that tiled radial gradient noise texture?
anthonymcgrath
07-28-2008, 10:05 AM
I'm not entirely sure how the mia_material shader works and tbh I dont think it creates the same 'radial' distortion on the specular or reflections based on a texture but I could be wrong there.
I'm working on maya v8.5 and just ran through the tutorial Jeremy pointed me to in Boaz's book (and believe me that is worth EVERY penny!). The cool thing is because I've ran through the network from the book I can see step by step what each node is doing so I feel like I've a greater understanding of the effect now. You can certainly see the difference in my quicktime (the blinn vs mib_glossy example) and I've since had a play with different textures and gradients to see whats happening on the surface.
the tiled radial gradient texture was most likely done in pshop - all mine were anyhow. I think you could create something similar with shading networks in maya but I prefer an image... old skool lol ;)
jeremybirn
07-28-2008, 03:24 PM
- How do you create that tiled radial gradient noise texture?
For mine (which you can download at the link in my last post) I made a bunch of horizontal stripes in Photoshop (created a pattern, filled the canvas with the pattern), made horizontally streaked noise in Photoshop (created noise in a narrow canvas and then scaled it longer horizontally), and also made a left-to-right gradient to get that sense that each circle had a slope running along it overall instead of just grooves. Then I did a convert polar coordinates to wrap the horizontal lines and such into a circle instead. Then I cut out the circle and pasted copies of it into the repeating overlapping pattern, and cropped it into a tiling scale.
If you've downloaded mine, look at the red, green, and blue channels separately. I wasn't sure how prominant I'd want the overall gradient compared to the stripes and noise, so I put one each into the red, green, and blue channels, so they could be mixed within the shader network to tune the appearance with a blendcolors node.
-jeremy
anthonymcgrath
07-28-2008, 03:32 PM
ah never thought to use the polar co-ordinates filter in pshop - thanks jeremy lol!
my texture was just noise with a radial blur but it seems to look "denser" as it gets closer to the centre of the texture. The polar co-ordinates should do a much better job :)
jeremybirn
07-28-2008, 03:51 PM
- Have you chosen this shading network over the mia_material node for specific reasons? The mia_material node produces very similar results, so I was just wondering...
I was just comparing, and you're right. If we were looking for advantages to mib_glossy_reflection, it includes that neat dispersion option, so you could use that for spectral effects which I don't think are built-in to mia_material yet (or are they?), but otherwise I agree you could do same basic look that way.
-jeremy
DrEvils
07-28-2008, 04:09 PM
Thanks so much for the dl-link, I'm going to order the book right away!
avinashlobo
07-29-2008, 08:56 AM
I'm not entirely sure how the mia_material shader works and tbh I dont think it creates the same 'radial' distortion on the specular or reflections based on a texture but I could be wrong there. It does when you fiddle with the Anisotropy attribute and plug the texture into the Rotation channel.
Once again though, thanks to both of you for this thread. I've finally managed to create a convincing brushed metal shader without much effort and I feel like I owe you two BIG time!
Will check out the book as well.
Cheers.
anthonymcgrath
07-30-2008, 09:12 AM
The hard bit is getting brush metal to look convincing in motion and the mib_glossy shader network works a treat for me personally, especially as I can use the UV setup on my character and create different metal uv mapping & textures to get different results of brush metal :)
the book is amazing - really in depth and has a full explanation of what each node is doing, some of the math really lost me tbh but I'm sure if I sit down and swot up I'll get my head round it lol!
glad the thread is of some help :) Its darn clever what MentalRay can do with rendering!
anthonymcgrath
08-04-2008, 09:48 AM
I've got a spot of bother - my nice reflecting ball doesn't appear to be rendering with an alpha channel when the mib_glossy_reflection is applied :(
is there any way for me to get one for it? I'm pretty sure I have to plug another node in but dont know what?
anthonymcgrath
08-04-2008, 09:53 AM
oop - never mind ...I just plugged the outValue of the mib_glossy_reflection into the outColour of a surfaceshader - now I have alpha :)
CGTalk Moderation
08-04-2008, 09:53 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.
vBulletin v3.0.5, Copyright ©2000-2009, Jelsoft Enterprises Ltd.