Jump to content
  • Advertisement
Sign in to follow this  
KaaAndrey

Help me create of lifelike metal surface with shaders

This topic is 3053 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Circumstances: I have a program product wich simulates CNC machine in process. This is three-dimensional program that imports models of rough parts, billets etc. All of the surfaces of our objects are presented with simple Fong model shader. So it is http://img29.imageshack.us/img29/8378/modeld.jpg My problem: How can I achieve lifelike metal surface.(It should be performed with shaders rather than with other approaches). I've found an example of what I looking for. http://www.machineworks.com/video.htm http://img23.imageshack.us/img23/3383/pic1de.png I've been trying to use: brdf for highlight + space texture for world reflection on object's surface + bump mapping to make things look more important =) But this method doesn't issue such results as on the pictures above. I would like to produce universal method which allows me to work with any surface material(without changing approach with different metal surface material) even though this method would be a little bit less realistic(than on the pictures above)!! My thanks in advance!

Share this post


Link to post
Share on other sites
Advertisement
http://features.cgsociety.org/story_custom.php?story_id=4735&page=4
Focus on the specular-gradients. May want to put something like that on the diffuse channel, too. Some of the gradients have more than 2-4 keypoints.

The videos you linked to use spherical-map reflections or cubemap versions of the same.

Also, add several layers of mipmapping for normals and diffuse like this:


uniform sampler2D texNoise1;

vec3 NoisyDiffuse(vec2 uv0){
vec3 color;
color = texture2D(texNoise1,uv0).xyz;
color+= texture2D(texNoise1,uv0*3.2+0.41).xyz;
color+= texture2D(texNoise1,uv0*7.1+0.15).xyz;
color/=3.0;
return color;
}


Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!