Skip to content

Commit a1d9577

Browse files
committed
fix passing wrong cache to child bxdf in tangent facet case for quotient
1 parent d9d9603 commit a1d9577

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

include/nbl/builtin/hlsl/bxdf/reflection/microfacet_normals.hlsl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ struct SMicrofacetNormals<Config, BRDF, ndf::PNS_SCHUSSLER, 2 NBL_PARTIAL_REQ_BO
324324
iso_negreflected.luminosityContributionHint = interaction.getLuminosityContributionHint();
325325
typename bxdf_type::anisotropic_interaction_type interaction_negreflected = bxdf_type::anisotropic_interaction_type::create(iso_negreflected);
326326

327-
quotient_weight_type qw = nested_brdf.quotientAndWeight(_sample, interaction_negreflected, _cache.aniso_cache);
327+
quotient_weight_type qw = nested_brdf.quotientAndWeight(_sample, interaction_negreflected, __createChildCache(_sample, interaction_negreflected));
328328
quo *= qw.quotient();
329329
}
330330
else
@@ -588,7 +588,7 @@ struct SMicrofacetNormals<Config, BRDF, P, 1 NBL_PARTIAL_REQ_BOT(config_concepts
588588
iso_t.luminosityContributionHint = interaction.getLuminosityContributionHint();
589589
typename bxdf_type::anisotropic_interaction_type interaction_t = bxdf_type::anisotropic_interaction_type::create(iso_t);
590590

591-
quotient_weight_type qw = nested_brdf.quotientAndWeight(_sample, interaction_t, _cache.aniso_cache);
591+
quotient_weight_type qw = nested_brdf.quotientAndWeight(_sample, interaction_t, __createChildCache(_sample, interaction_t));
592592
quo *= qw.quotient();
593593
}
594594
else

include/nbl/builtin/hlsl/bxdf/transmission/microfacet_normals.hlsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,7 @@ struct SMicrofacetNormals<Config, BRDF, P, 1 NBL_PARTIAL_REQ_BOT(config_concepts
266266
iso_t.luminosityContributionHint = interaction.getLuminosityContributionHint();
267267
typename bxdf_type::anisotropic_interaction_type interaction_t = bxdf_type::anisotropic_interaction_type::create(iso_t);
268268

269-
quotient_weight_type qw = nested_bsdf.quotientAndWeight(_sample, interaction_t, _cache.aniso_cache);
269+
quotient_weight_type qw = nested_bsdf.quotientAndWeight(_sample, interaction_t, __createChildCache(_sample, interaction_t));
270270
quo *= qw.quotient();
271271
}
272272
else

0 commit comments

Comments
 (0)