yum-mirror/slang

Making it easier to work with shaders

git clone https://git.yummers.dev/yum-mirror/slang

Yong HeSupport visibility control and default to `internal`. (#3380)11111e573

master
505 B26 linesraw
1//TEST_IGNORE_FILE:
2
3__exported import IMaterialInstance;
4__exported import IBSDF;
5
6public struct DiffuseBSDF : IBSDF
7{
8    public float3 albedo;
9
10    [TreatAsDifferentiable]
11    public float3 eval(const float3 wiLocal, const float3 woLocal)
12    {
13        return albedo;
14    }
15};
16
17public struct DiffuseMaterialInstance : IMaterialInstance
18{
19    public DiffuseBSDF bsdf;
20
21    [TreatAsDifferentiable]
22    public float3 eval(const float3 wi, const float3 wo)
23    {
24        return bsdf.eval(wi, wo);
25    }
26};