From 44ab0952f0321e2a3b988cc9b3f502c7ab440e5a Mon Sep 17 00:00:00 2001 From: winmad Date: Wed, 22 Mar 2023 22:04:28 -0700 Subject: Create a simplified Falcor material system in slang test (#2721) * Duplicate an example of differentiating Falcor's material system * Add a second BSDF * WIP: update test; grad didn't pass through * Finalize test --------- Co-authored-by: Lifan Wu --- .../material/DiffuseMaterialInstance.slang | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 tests/autodiff/material/DiffuseMaterialInstance.slang (limited to 'tests/autodiff/material/DiffuseMaterialInstance.slang') diff --git a/tests/autodiff/material/DiffuseMaterialInstance.slang b/tests/autodiff/material/DiffuseMaterialInstance.slang new file mode 100644 index 000000000..ca6bfc69a --- /dev/null +++ b/tests/autodiff/material/DiffuseMaterialInstance.slang @@ -0,0 +1,26 @@ +//TEST_IGNORE_FILE: + +__exported import IMaterialInstance; +__exported import IBSDF; + +struct DiffuseBSDF : IBSDF +{ + float3 albedo; + + [TreatAsDifferentiable] + float3 eval(const float3 wiLocal, const float3 woLocal) + { + return albedo; + } +}; + +struct DiffuseMaterialInstance : IMaterialInstance +{ + DiffuseBSDF bsdf; + + [TreatAsDifferentiable] + float3 eval(const float3 wi, const float3 wo) + { + return bsdf.eval(wi, wo); + } +}; -- cgit v1.2.3