删除旧的材质系统

This commit is contained in:
hyzboy 2020-12-17 16:53:56 +08:00
parent 4b8ccbed17
commit 2a4445f6e8
3 changed files with 0 additions and 131 deletions

View File

@ -1,68 +0,0 @@
#ifndef HGL_GRAPH_MATERIAL_INCLUDE
#define HGL_GRAPH_MATERIAL_INCLUDE
#include<hgl/graph/material/Component.h>
#include<hgl/type/String.h>
MATERIAL_NAMESPACE_BEGIN
enum class BlendMode
{
Opaque=0,
Mask,
Alpha,
Additive,
Subtractive,
Modulate,
PreMultiAlpha, // 预计算好一半的Alpha
BEGIN_RANGE =Opaque,
END_RANGE =PreMultiAlpha,
RANGE_SIZE =END_RANGE-BEGIN_RANGE+1
};//enum class BlendMode
/**
*
*/
enum class DeferredRenderPass
{
Opaque, ///<不透明部分
Mask, ///<遮罩部分
Composition, ///<GBuffer合成阶段
Additive, ///<Subtractive混合阶段
Subtractive, ///<Additive混合阶段
Alpha, ///<Alpha透明区混合阶段
PostProcess, ///<后期
};//enum class DeferredRenderPass
class Material
{
UTF8String name;
ComponentBitsConfig comp_cfg;
BlendMode blend_mode;
bool two_sided=false;
bool wire_frame=false;
public:
Material(const UTF8String &n,
const ComponentBitsConfig &cbf,
const BlendMode &bm=BlendMode::Opaque,
const bool ts=false,
const bool wf=false)
{
name=n;
comp_cfg=cbf;
blend_mode=bm;
two_sided=false;
wire_frame=false;
}
virtual ~Material()=default;
};//class Material
MATERIAL_NAMESPACE_END
#endif//HGL_GRAPH_MATERIAL_INCLUDE

View File

@ -1,23 +0,0 @@
#ifndef HGL_GRAPH_MATERIAL_PBR_INCLUDE
#define HGL_GRAPH_MATERIAL_PBR_INCLUDE
#include<hgl/graph/material/Material.h>
MATERIAL_NAMESPACE_BEGIN
/**
* PBR材质<br>
* BaseColor/Normal/Metallic/Roughness四个属性必须都有使const方式提供一个数值
*/
class PBRMaterial:public Material
{
public:
PBRMaterial(const UTF8String & n,
const BlendMode & bm =BlendMode::Opaque,
const bool ts =false,
const bool wf =false):
Material(n,MCC_CNMR,bm,ts,wf){}
virtual ~PBRMaterial()=default;
};//class PBRMaterial:public Material
MATERIAL_NAMESPACE_END
#endif//HGL_GRAPH_MATERIAL_PBR_INCLUDE

View File

@ -1,40 +0,0 @@
#ifndef HGL_GRAPH_MATERIAL_STANDARD_INCLUDE
#define HGL_GRAPH_MATERIAL_STANDARD_INCLUDE
#include<hgl/graph/material/Material.h>
MATERIAL_NAMESPACE_BEGIN
/**
*
*/
class StandardMaterial:public Material
{
public:
enum class DataSource
{
Const,
Param,
Texture,
Position,
};//
struct
{
Component comp; ///<成份
DataSource source; ///<来源
DataFormat format; ///<数据格式
};
public:
StandardMaterial( const UTF8String & n,
const ComponentBitsConfig & cbf,
const BlendMode & bm =BlendMode::Opaque,
const bool ts =false,
const bool wf =false):
Material(n,cbf,bm,ts,wf){}
virtual ~StandardMaterial()=default;
};//class StandardMaterial:public Material
MATERIAL_NAMESPACE_END
#endif//HGL_GRAPH_MATERIAL_STANDARD_INCLUDE