blender/intern/cycles/kernel/shaders
Lukas Stockner d6e769d32e Cycles: Add reflection fix to Bump and Normal Map nodes
While changing the shading normal is a great way to add additional detail to a model, there are some problems with it.
One of them is that at grazing angles and/or strong changes to the normal, the reflected ray can end up pointing into the actual geometry, which results in a black spot.

This patch helps avoid this by automatically reducing the strength of the bump/normal map if the reflected direction would end up too shallow or inside the geometry.

Differential Revision: https://developer.blender.org/D2574
2018-07-26 17:00:31 +02:00
..
CMakeLists.txt Cycles: add Principled Hair BSDF. 2018-07-18 13:59:06 +02:00
node_absorption_volume.osl
node_add_closure.osl
node_ambient_occlusion.osl Cycles: change AO node default to 16 samples and only local off. 2018-06-29 15:43:55 +02:00
node_anisotropic_bsdf.osl Cycles: switch to squared roughness convention for all nodes. 2018-03-10 18:05:01 +01:00
node_attribute.osl
node_background.osl
node_bevel.osl Fix T54107: bevel shader + normal map gives wrong result. 2018-02-21 17:56:26 +01:00
node_blackbody.osl
node_brick_texture.osl Cycles: Fix OSL brick node after recent fix 2017-11-21 04:30:12 -05:00
node_brightness.osl
node_bump.osl Cycles: Add reflection fix to Bump and Normal Map nodes 2018-07-26 17:00:31 +02:00
node_camera.osl
node_checker_texture.osl
node_color.h Cleanup: strip trailing space for cycles 2018-07-06 10:17:58 +02:00
node_combine_hsv.osl
node_combine_rgb.osl
node_combine_xyz.osl
node_convert_from_color.osl Code refactor: add separate RGB to BW node and rename some sockets. 2016-05-29 20:30:16 +02:00
node_convert_from_float.osl Code refactor: add separate RGB to BW node and rename some sockets. 2016-05-29 20:30:16 +02:00
node_convert_from_int.osl Code refactor: add separate RGB to BW node and rename some sockets. 2016-05-29 20:30:16 +02:00
node_convert_from_normal.osl Code refactor: add separate RGB to BW node and rename some sockets. 2016-05-29 20:30:16 +02:00
node_convert_from_point.osl Code refactor: add separate RGB to BW node and rename some sockets. 2016-05-29 20:30:16 +02:00
node_convert_from_string.osl Code refactor: add separate RGB to BW node and rename some sockets. 2016-05-29 20:30:16 +02:00
node_convert_from_vector.osl Code refactor: add separate RGB to BW node and rename some sockets. 2016-05-29 20:30:16 +02:00
node_diffuse_bsdf.osl
node_displacement.osl Cycles: add Vector Displacement node and extend Displacement node. 2018-02-03 12:20:26 +01:00
node_emission.osl
node_environment_texture.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_fresnel.h Cleanup: strip trailing space for cycles 2018-07-06 10:17:58 +02:00
node_fresnel.osl
node_gamma.osl
node_geometry.osl
node_glass_bsdf.osl Cycles: switch to squared roughness convention for all nodes. 2018-03-10 18:05:01 +01:00
node_glossy_bsdf.osl Cycles: switch to squared roughness convention for all nodes. 2018-03-10 18:05:01 +01:00
node_gradient_texture.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_hair_bsdf.osl Fix Cycles OSL hair BSDF inconsistencies with SVM. 2016-07-29 03:29:05 +02:00
node_hair_info.osl Cycles: change Index output of Hair and Particle Info to Random, in 0..1 range. 2018-02-14 14:55:46 +01:00
node_holdout.osl
node_hsv.osl
node_ies_light.osl Cycles: Add Support for IES files as textures for light strength 2018-05-27 01:24:57 +02:00
node_image_texture.osl Fix T48783: OSL render errors after recent refactoring. 2016-07-03 13:08:21 +02:00
node_invert.osl
node_layer_weight.osl
node_light_falloff.osl
node_light_path.osl Cycles: Expose diffuse and glossy depth to Light Path node 2017-01-19 15:09:58 +01:00
node_magic_texture.osl Code refactor: add separate RGB to BW node and rename some sockets. 2016-05-29 20:30:16 +02:00
node_mapping.osl
node_math.osl Nodes: add sqrt, ceil, floor and fract to math nodes. 2018-07-13 11:00:10 +02:00
node_mix_closure.osl
node_mix.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_musgrave_texture.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_noise_texture.osl
node_normal_map.osl Cycles: Add reflection fix to Bump and Normal Map nodes 2018-07-26 17:00:31 +02:00
node_normal.osl Code refactor: add separate RGB to BW node and rename some sockets. 2016-05-29 20:30:16 +02:00
node_object_info.osl
node_output_displacement.osl Cycles: change material output displacement to vector. 2018-01-23 12:49:35 +01:00
node_output_surface.osl
node_output_volume.osl
node_particle_info.osl Cycles: restore Particle Info Index for now, keep it next to Random. 2018-02-14 21:45:57 +01:00
node_principled_bsdf.osl Fix random walk SSS issues with different base and subsurface color. 2018-02-12 21:08:59 +01:00
node_principled_hair_bsdf.osl Cycles: add Principled Hair BSDF. 2018-07-18 13:59:06 +02:00
node_principled_volume.osl Cycles: principled absorption color now has more effect at lower values. 2018-02-28 20:11:53 +01:00
node_ramp_util.h Cleanup: strip trailing space for cycles 2018-07-06 10:17:58 +02:00
node_refraction_bsdf.osl Cycles: switch to squared roughness convention for all nodes. 2018-03-10 18:05:01 +01:00
node_rgb_curves.osl Fix T49327: Cycles OSL Mode: RGB Curves node only outputs gray scale images 2016-09-12 16:14:40 +02:00
node_rgb_ramp.osl Fix T49071: Cycles OSL build problem with oslc compilers that can't find their own stdosl.h. 2016-08-12 01:01:09 +02:00
node_rgb_to_bw.osl Fix T48783: OSL render errors after recent refactoring. 2016-07-03 13:08:21 +02:00
node_scatter_volume.osl
node_separate_hsv.osl
node_separate_rgb.osl
node_separate_xyz.osl
node_set_normal.osl
node_sky_texture.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_subsurface_scattering.osl Cycles: random walk subsurface scattering. 2018-02-09 19:58:33 +01:00
node_tangent.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_texture_coordinate.osl
node_texture.h Cleanup: strip trailing space for cycles 2018-07-06 10:17:58 +02:00
node_toon_bsdf.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_translucent_bsdf.osl
node_transparent_bsdf.osl
node_uv_map.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_value.osl
node_vector_curves.osl Fix T49071: Cycles OSL build problem with oslc compilers that can't find their own stdosl.h. 2016-08-12 01:01:09 +02:00
node_vector_displacement.osl Cycles: add Vector Displacement node and extend Displacement node. 2018-02-03 12:20:26 +01:00
node_vector_math.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_vector_transform.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_velvet_bsdf.osl
node_voronoi_texture.osl Cycles: add voronoi features and distance settings from Blender. 2018-07-15 00:45:42 +02:00
node_voxel_texture.osl Cleanup: OSL style 2016-02-17 21:39:23 +11:00
node_wave_texture.osl Cycles: make shader node enums consistently lower case, update OSL shaders accordingly. 2016-06-11 23:50:11 +02:00
node_wavelength.osl
node_wireframe.osl
oslutil.h Code refactor: use dynamic shader node array lengths now that OSL supports them. 2016-05-17 21:39:16 +02:00
stdosl.h Cycles: Add reflection fix to Bump and Normal Map nodes 2018-07-26 17:00:31 +02:00