2023-09-27 20:31:46 +08:00
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include<hgl/graph/mtl/MaterialConfig.h>
|
|
|
|
|
#include<hgl/graph/CoordinateSystem.h>
|
|
|
|
|
#include<hgl/graph/VertexAttrib.h>
|
|
|
|
|
|
|
|
|
|
STD_MTL_NAMESPACE_BEGIN
|
|
|
|
|
struct Material3DCreateConfig:public MaterialCreateConfig
|
|
|
|
|
{
|
2023-09-28 17:41:45 +08:00
|
|
|
|
bool camera; ///<包含摄像机矩阵信息
|
|
|
|
|
|
2023-09-27 20:31:46 +08:00
|
|
|
|
bool local_to_world; ///<包含LocalToWorld矩阵
|
|
|
|
|
|
|
|
|
|
VAT position_format; ///<position格式
|
|
|
|
|
|
2023-09-28 15:03:34 +08:00
|
|
|
|
// bool reverse_depth; ///<使用反向深度
|
|
|
|
|
|
2023-09-27 20:31:46 +08:00
|
|
|
|
public:
|
|
|
|
|
|
|
|
|
|
Material3DCreateConfig(const GPUDeviceAttribute *da,const AnsiString &name,const Prim &p):MaterialCreateConfig(da,name,p)
|
|
|
|
|
{
|
|
|
|
|
rt_output.color=1; //输出一个颜色
|
|
|
|
|
rt_output.depth=true; //不输出深度
|
|
|
|
|
rt_output.stencil=false; //不输出stencil
|
|
|
|
|
|
2023-09-28 17:41:45 +08:00
|
|
|
|
camera=true;
|
2023-09-27 20:31:46 +08:00
|
|
|
|
local_to_world=false;
|
|
|
|
|
|
|
|
|
|
position_format=VAT_VEC3;
|
2023-09-28 15:03:34 +08:00
|
|
|
|
|
|
|
|
|
// reverse_depth=false;
|
2023-09-27 20:31:46 +08:00
|
|
|
|
}
|
|
|
|
|
};//struct Material3DCreateConfig:public MaterialCreateConfig
|
|
|
|
|
|
2023-09-28 15:03:34 +08:00
|
|
|
|
MaterialCreateInfo *CreateVertexColor3D(const Material3DCreateConfig *);
|
2023-09-28 18:13:51 +08:00
|
|
|
|
MaterialCreateInfo *CreateVertexLuminance3D(const Material3DCreateConfig *);
|
2023-09-27 20:31:46 +08:00
|
|
|
|
//MaterialCreateInfo *CreatePureColor2D(const Material2DCreateConfig *);
|
|
|
|
|
//MaterialCreateInfo *CreatePureTexture2D(const Material2DCreateConfig *);
|
|
|
|
|
//MaterialCreateInfo *CreateRectTexture2D(Material2DCreateConfig *);
|
|
|
|
|
//MaterialCreateInfo *CreateRectTexture2DArray(Material2DCreateConfig *);
|
|
|
|
|
STD_MTL_NAMESPACE_END
|