User Tools

Site Tools


ibl_sample_shader_lys

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
ibl_sample_shader_lys [2017/05/15 00:44]
adavies
ibl_sample_shader_lys [2017/05/23 03:49] (current)
Line 1: Line 1:
 ====== Image Based Lighting Sample Shader ====== ====== Image Based Lighting Sample Shader ======
  
-Throughout the following page we are providing a free IBL sample shaderthe associated source files for the shader and a general user guide in that you may test the various aspects of IBL with a minimal setup and iteration time+Throughout the following page we are providing a free IBL sample shader ​and the associated source files.
  
-The shader specifically covers cube maps that have been generated within Lys, though ​may still be very useful ​general ​reference in other cases.+The shader specifically covers cube maps that have been generated within Lys using the Burley option for image based lighting but may also serve as a useful reference in general.
  
  
Line 124: Line 124:
 // form as cube maps convolved in Lys are based on RdotL and not NdotH. You can find // form as cube maps convolved in Lys are based on RdotL and not NdotH. You can find
 // a more detailed description in "​Pre-convolved Cube Maps vs Path Tracers"​ // a more detailed description in "​Pre-convolved Cube Maps vs Path Tracers"​
 +// Despite the difference in distribution of MIPs the lit specular response resulting from
 +// the “roughness texture” will be identical to existing PBR based game engines and tools.
 float BurleyToMip(float fPerceptualRoughness,​ int nMips, float NdotR) float BurleyToMip(float fPerceptualRoughness,​ int nMips, float NdotR)
 { {
Line 191: Line 193:
     ​     ​
     // material properties from texture     // material properties from texture
-    float smoothness = smoothness_tex.Sample(samLinear,​ st).x; ​ // not gamma corrected+    float smoothness = smoothness_tex.Sample(samLinear,​ st).x; ​ // inverted roughness texture map (1-x) and no gamma correction
     float perceptualRoughness = 1.0 - smoothness;     float perceptualRoughness = 1.0 - smoothness;
 +    //float perceptualRoughness = roughness_tex.Sample(samLinear,​ st).x; // For those using roughness texture maps use this line instead to initialize perceptualRoughness.
     float metalness = metalness_tex.Sample(samLinear,​ st).x; ​   // not gamma corrected     float metalness = metalness_tex.Sample(samLinear,​ st).x; ​   // not gamma corrected
     float3 texNormal = 2*normal_tex.Sample(samLinear,​ st).xyz - 1.0;    // not gamma corrected     float3 texNormal = 2*normal_tex.Sample(samLinear,​ st).xyz - 1.0;    // not gamma corrected
ibl_sample_shader_lys.1494809049.txt.gz · Last modified: 2017/05/23 03:49 (external edit)