Files
Seele/res/shaders/lib/Material.slang
T

23 lines
612 B
Plaintext
Raw Normal View History

2020-06-02 11:46:18 +02:00
import Common;
import BRDF;
import MaterialParameter;
2020-06-02 11:46:18 +02:00
interface IMaterial
{
associatedtype BRDF : IBRDF;
BRDF prepare(MaterialFragmentParameter input);
2020-09-19 14:36:50 +02:00
float3 getWorldOffset();
float3 getBaseColor(MaterialFragmentParameter input);
float getMetallic(MaterialFragmentParameter input);
float3 getNormal(MaterialFragmentParameter input);
float getSpecular(MaterialFragmentParameter input);
float getRoughness(MaterialFragmentParameter input);
float getSheen(MaterialFragmentParameter input);
2020-06-02 11:46:18 +02:00
};
2020-10-03 11:00:10 +02:00
type_param TMaterial : IMaterial;
layout(set = 2, binding = 0, std430)
ParameterBlock<TMaterial> gMaterial;