32 glm::vec4
mColor = { 1.0f, 1.0f, 1.0f, 1.0f };
63 virtual void Create()
override;
64 virtual void Destroy()
override;
71 virtual bool IsLite()
const override;
73 void SaveLiteParams(
Stream& stream);
74 void LoadLiteParams(
Stream& stream, uint32_t version);
77 virtual bool HasNodeGraph()
const override {
return mUseNodeGraph; }
83 void SetUseNodeGraph(
bool use);
84 void ApplyGraphToParams();
89 void SetTexture(uint32_t slot,
Texture* texture);
90 Texture* GetTexture(uint32_t slot);
101 glm::vec2 GetUvOffset(int32_t uvIndex = 0)
const;
102 void SetUvOffset(glm::vec2 offset, int32_t uvIndex = 0);
104 glm::vec2 GetUvScale(int32_t uvIndex = 0)
const;
105 void SetUvScale(glm::vec2 scale, int32_t uvIndex = 0);
110 glm::vec4 GetColor()
const;
111 void SetColor(
const glm::vec4& color);
113 glm::vec4 GetFresnelColor()
const;
114 void SetFresnelColor(
const glm::vec4& color);
116 float GetEmission()
const;
117 void SetEmission(
float emission);
119 float GetWrapLighting()
const;
120 void SetWrapLighting(
float wrapLighting);
122 float GetFresnelPower()
const;
123 void SetFresnelPower(
float power);
125 float GetSpecular()
const;
126 void SetSpecular(
float specular);
128 uint32_t GetToonSteps()
const;
129 void SetToonSteps(uint32_t steps);
131 float GetOpacity()
const;
132 void SetOpacity(
float opacity);
135 void SetMaskCutoff(
float cutoff);
137 float GetShininess()
const;
138 void SetShininess(
float shininess);
141 void SetSortPriority(int32_t priority);
144 void SetDepthTestDisabled(
bool depthTest);
146 bool IsFresnelEnabled()
const;
147 void SetFresnelEnabled(
bool enable);
150 void SetApplyFog(
bool applyFog);
153 void SetCullMode(
CullMode cullMode);
155 uint32_t GetUvMap(uint32_t textureSlot);
156 void SetUvMap(uint32_t textureSlot, uint32_t uvMapIndex);
158 TevMode GetTevMode(uint32_t textureSlot);
159 void SetTevMode(uint32_t textureSlot,
TevMode mode);
161 static bool HandlePropChange(
Datum* datum, uint32_t index,
const void* newValue);
168 bool mUseNodeGraph =
false;
#define MAX_UV_MAPS
Definition Constants.h:27
#define MATERIAL_LITE_MAX_TEXTURES
Definition Constants.h:22
CullMode
Definition EngineTypes.h:146
Platform
Definition EngineTypes.h:31
ShadingModel
Definition EngineTypes.h:104
VertexColorMode
Definition EngineTypes.h:123
TevMode
Definition EngineTypes.h:132
BlendMode
Definition EngineTypes.h:113
MaterialLiteUvSource
Definition MaterialLite.h:11
const char * gVertexColorModeStrings[]
const char * gShadingModelStrings[]
const char * gMaterialLiteUvSourceStrings[]
#define POLYPHASE_API
Definition PolyphaseAPI.h:31
Definition MaterialLite.h:51
virtual bool HasNodeGraph() const override
Definition MaterialLite.h:77
virtual NodeGraph * GetNodeGraph() override
Definition MaterialLite.h:78
DECLARE_ASSET(MaterialLite, Material)
NodeGraph & GetGraph()
Definition MaterialLite.h:81
NodeGraph mGraph
Definition MaterialLite.h:167
MaterialLiteParams mLiteParams
Definition MaterialLite.h:166
const NodeGraph & GetGraph() const
Definition MaterialLite.h:82
virtual glm::vec4 GetTypeColor() override
Definition Material.cpp:94
virtual bool Import(const std::string &path, ImportOptions *options) override
Definition Material.cpp:84
virtual void SaveStream(Stream &stream, Platform platform) override
Definition Material.cpp:42
virtual bool IsDepthTestDisabled() const
Definition Material.cpp:283
virtual void LoadStream(Stream &stream, Platform platform) override
Definition Material.cpp:10
virtual void ApplyGraphValues(NodeGraph *graph)
Definition Material.h:94
virtual const char * GetTypeName() override
Definition Material.cpp:99
virtual bool ShouldApplyFog() const
Definition Material.cpp:284
virtual BlendMode GetBlendMode() const
Definition Material.cpp:280
virtual CullMode GetCullMode() const
Definition Material.cpp:285
virtual void GatherProperties(std::vector< Property > &outProps) override
Definition Material.cpp:89
virtual int32_t GetSortPriority() const
Definition Material.cpp:282
virtual void Destroy() override
Definition Material.cpp:79
virtual float GetMaskCutoff() const
Definition Material.cpp:281
virtual void Create() override
Definition Material.cpp:74
virtual bool IsLite() const
Definition Material.cpp:119
Definition NodeGraph.h:17
virtual bool DrawCustomProperty(Property &prop)
Definition Object.h:46
Definition MaterialLite.h:22
uint8_t mUvSources[MAX_UV_MAPS]
Definition MaterialLite.h:31
float mWrapLighting
Definition MaterialLite.h:35
uint32_t mToonSteps
Definition MaterialLite.h:38
int32_t mSortPriority
Definition MaterialLite.h:42
BlendMode mBlendMode
Definition MaterialLite.h:24
TextureRef mTextures[MATERIAL_LITE_MAX_TEXTURES]
Definition MaterialLite.h:26
VertexColorMode mVertexColorMode
Definition MaterialLite.h:25
glm::vec2 mUvOffsets[MAX_UV_MAPS]
Definition MaterialLite.h:29
float mOpacity
Definition MaterialLite.h:39
float mFresnelPower
Definition MaterialLite.h:36
bool mDisableDepthTest
Definition MaterialLite.h:44
float mShininess
Definition MaterialLite.h:41
TevMode mTevModes[MATERIAL_LITE_MAX_TEXTURES]
Definition MaterialLite.h:28
glm::vec4 mFresnelColor
Definition MaterialLite.h:33
glm::vec2 mUvScales[MAX_UV_MAPS]
Definition MaterialLite.h:30
float mEmission
Definition MaterialLite.h:34
CullMode mCullMode
Definition MaterialLite.h:47
uint32_t mNumTextures
Definition MaterialLite.h:43
ShadingModel mShadingModel
Definition MaterialLite.h:23
bool mApplyFog
Definition MaterialLite.h:46
bool mFresnelEnabled
Definition MaterialLite.h:45
float mMaskCutoff
Definition MaterialLite.h:40
float mSpecular
Definition MaterialLite.h:37
uint8_t mUvMaps[MATERIAL_LITE_MAX_TEXTURES]
Definition MaterialLite.h:27
glm::vec4 mColor
Definition MaterialLite.h:32