summaryrefslogtreecommitdiffstats
path: root/brdf.cginc
diff options
context:
space:
mode:
authoryum <yum.food.vr@gmail.com>2026-02-23 17:23:07 -0800
committeryum <yum.food.vr@gmail.com>2026-02-23 17:28:17 -0800
commitca92a8c6affe7184b9cd6b253e53a8542429accb (patch)
tree0dd7466bfdd5bdc83cd2c2df44bf82c48240126d /brdf.cginc
parenta4d1ade709ee0f16383698809004763bdc798002 (diff)
Fix DFG LUT; needed more samples by default
Diffstat (limited to 'brdf.cginc')
-rwxr-xr-xbrdf.cginc8
1 files changed, 5 insertions, 3 deletions
diff --git a/brdf.cginc b/brdf.cginc
index bd44b3f..8a3b2ff 100755
--- a/brdf.cginc
+++ b/brdf.cginc
@@ -166,11 +166,13 @@ float4 brdf(Pbr pbr, LightData data) {
remainder = saturate(remainder - indirect_specular_cc);
#endif
- // Standard split-sum IBL
- float3 f0_spec = lerp(f0, pbr.albedo.xyz, pbr.metallic);
- float3 ibl_specular_reflectance = lerp(dfg.xxx, dfg.yyy, f0_spec);
+ float3 base_color = lerp(1, pbr.albedo.xyz, pbr.metallic);
+ float3 specular_dfg = lerp(dfg.xxx, dfg.yyy, f0);
+ float3 ibl_specular_reflectance = specular_dfg * base_color;
float3 indirect_specular = data.indirect.specular * ibl_specular_reflectance;
+ return float4(specular_dfg, 1);
+
specular += indirect_specular;
remainder = saturate(remainder - indirect_specular);