2020-06-02 11:46:18 +02:00
|
|
|
import Common;
|
|
|
|
|
import BRDF;
|
2020-08-06 00:54:43 +02:00
|
|
|
import MaterialParameter;
|
2020-06-02 11:46:18 +02:00
|
|
|
|
|
|
|
|
interface IMaterial
|
|
|
|
|
{
|
|
|
|
|
associatedtype BRDF : IBRDF;
|
2020-08-06 00:54:43 +02:00
|
|
|
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
|
|
|
};
|