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

23 lines
625 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;
2021-05-06 17:02:10 +02:00
layout(set = INDEX_MATERIAL, binding = 0, std430)
2020-10-03 11:00:10 +02:00
ParameterBlock<TMaterial> gMaterial;