5#ifndef S_OVERRIDE_MATERIAL_HPP_INCLUDED
6#define S_OVERRIDE_MATERIAL_HPP_INCLUDED
8#include <nirtcpp/core/engine/SMaterial.hpp>
99 for (
u32 f=0; f<32; ++f)
101 const u32 num=(1<<f);
Axis aligned bounding box in 3d dimensional space.
Definition aabbox3d.hpp:22
bool TrilinearFilter
Is trilinear filtering enabled? Default: false.
Definition SMaterialLayer.hpp:199
ITexture * Texture
Texture.
Definition SMaterialLayer.hpp:185
u8 TextureWrapU
Texture Clamp Mode.
Definition SMaterialLayer.hpp:189
u8 AnisotropicFilter
Is anisotropic filtering enabled? Default: 0, disabled.
Definition SMaterialLayer.hpp:208
bool BilinearFilter
Is bilinear filtering enabled? Default: true.
Definition SMaterialLayer.hpp:194
Class for holding parameters for a material renderer.
Definition SMaterial.hpp:304
bool UseMipMaps
Shall mipmaps be used if available.
Definition SMaterial.hpp:495
f32 PolygonOffsetDepthBias
A constant z-buffer offset for a polygon/line/point.
Definition SMaterial.hpp:437
bool PointCloud
Draw as point cloud or filled triangles? Default: false.
Definition SMaterial.hpp:467
bool Wireframe
Draw as wireframe or filled triangles? Default: false.
Definition SMaterial.hpp:464
bool NormalizeNormals
Should normals be normalized?
Definition SMaterial.hpp:491
E_BLEND_OPERATION BlendOperation
Store the blend operation of choice.
Definition SMaterial.hpp:416
u8 AntiAliasing
Sets the antialiasing mode.
Definition SMaterial.hpp:397
bool GouraudShading
Flat or Gouraud shading? Default: true.
Definition SMaterial.hpp:470
bool BackfaceCulling
Is backface culling enabled? Default: true.
Definition SMaterial.hpp:481
u8 ColorMaterial
Defines the interpretation of vertex color in the lighting equation.
Definition SMaterial.hpp:412
E_ZWRITE ZWriteEnable
Is the zbuffer writable or is it read-only. Default: EZW_AUTO.
Definition SMaterial.hpp:478
SMaterialLayer TextureLayer[MATERIAL_MAX_TEXTURES]
Texture layer array.
Definition SMaterial.hpp:321
f32 BlendFactor
Store the blend factors.
Definition SMaterial.hpp:428
E_POLYGON_OFFSET PolygonOffsetDirection
DEPRECATED. Will be removed after Nirtcpp 1.9.
Definition SMaterial.hpp:458
u8 ZBuffer
Is the ZBuffer enabled? Default: ECFN_LESSEQUAL.
Definition SMaterial.hpp:392
bool FrontfaceCulling
Is frontface culling enabled? Default: false.
Definition SMaterial.hpp:484
bool Lighting
Will this material be lighted? Default: true.
Definition SMaterial.hpp:473
E_MATERIAL_TYPE MaterialType
Type of the material. Specifies how everything is blended together.
Definition SMaterial.hpp:324
u8 PolygonOffsetFactor
DEPRECATED. Will be removed after Nirtcpp 1.9. Please use PolygonOffsetDepthBias instead.
Definition SMaterial.hpp:453
f32 PolygonOffsetSlopeScale
Variable Z-Buffer offset based on the slope of the polygon.
Definition SMaterial.hpp:446
u8 ColorMask
Defines the enabled color planes.
Definition SMaterial.hpp:404
bool FogEnable
Is fog enabled? Default: false.
Definition SMaterial.hpp:487
Definition SOverrideMaterial.hpp:48
s32 Original
Definition SOverrideMaterial.hpp:56
u32 Replacement
MaterialType to used to override Original (either one of E_MATERIAL_TYPE or a shader material id)
Definition SOverrideMaterial.hpp:59
Definition SOverrideMaterial.hpp:16
SOverrideMaterial()
Default constructor.
Definition SOverrideMaterial.hpp:68
bool EnableLayers[MATERIAL_MAX_TEXTURES]
Overwrite complete layers (settings of EnableLayerFlags and EnableTextures don't matter then for laye...
Definition SOverrideMaterial.hpp:32
SMaterial Material
The Material values.
Definition SOverrideMaterial.hpp:19
bool EnableLayerFlags[MATERIAL_MAX_TEXTURES]
For those flags in EnableFlags which affect layers, set which of the layers are affected.
Definition SOverrideMaterial.hpp:26
u16 EnablePasses
Set in which render passes the material override is active.
Definition SOverrideMaterial.hpp:36
bool Enabled
Global enable flag, overwritten by the SceneManager in each pass.
Definition SOverrideMaterial.hpp:44
u32 EnableFlags
Which values are overridden.
Definition SOverrideMaterial.hpp:23
core::array< SMaterialTypeReplacement > MaterialTypes
To overwrite SMaterial::MaterialType.
Definition SOverrideMaterial.hpp:64
bool EnableTextures[MATERIAL_MAX_TEXTURES]
Which textures are overridden.
Definition SOverrideMaterial.hpp:29
void apply(SMaterial &material)
Apply the enabled overrides.
Definition SOverrideMaterial.hpp:89
void reset()
disable overrides and reset all flags
Definition SOverrideMaterial.hpp:74
@ EMF_GOURAUD_SHADING
Flat or Gouraud shading? Default: true.
Definition EMaterialFlags.hpp:23
@ EMF_FOG_ENABLE
Is fog enabled? Default: false.
Definition EMaterialFlags.hpp:58
@ EMF_TEXTURE_WRAP
Access to all layers texture wrap settings. Overwrites separate layer settings.
Definition EMaterialFlags.hpp:72
@ EMF_POINTCLOUD
Draw as point cloud or filled triangles? Default: false.
Definition EMaterialFlags.hpp:20
@ EMF_ZWRITE_ENABLE
May be written to the zbuffer or is it readonly. Default: true.
Definition EMaterialFlags.hpp:33
@ EMF_POLYGON_OFFSET
Flag for polygon offset.
Definition EMaterialFlags.hpp:90
@ EMF_COLOR_MASK
ColorMask bits, for enabling the color planes.
Definition EMaterialFlags.hpp:78
@ EMF_USE_MIP_MAPS
Flag for enabling/disabling mipmap usage.
Definition EMaterialFlags.hpp:84
@ EMF_TRILINEAR_FILTER
Is trilinear filtering enabled? Default: false.
Definition EMaterialFlags.hpp:48
@ EMF_BLEND_FACTOR
Flag for blend factor.
Definition EMaterialFlags.hpp:93
@ EMF_BACK_FACE_CULLING
Is backface culling enabled? Default: true.
Definition EMaterialFlags.hpp:36
@ EMF_BILINEAR_FILTER
Is bilinear filtering enabled? Default: true.
Definition EMaterialFlags.hpp:43
@ EMF_BLEND_OPERATION
Flag for blend operation.
Definition EMaterialFlags.hpp:87
@ EMF_WIREFRAME
Draw as wireframe or filled triangles? Default: false.
Definition EMaterialFlags.hpp:17
@ EMF_NORMALIZE_NORMALS
Normalizes normals. Default: false.
Definition EMaterialFlags.hpp:66
@ EMF_LIGHTING
Will this material be lighted? Default: true.
Definition EMaterialFlags.hpp:26
@ EMF_ZBUFFER
Is the ZBuffer enabled? Default: true.
Definition EMaterialFlags.hpp:29
@ EMF_FRONT_FACE_CULLING
Is frontface culling enabled? Default: false.
Definition EMaterialFlags.hpp:40
@ EMF_COLOR_MATERIAL
ColorMaterial enum for vertex color interpretation.
Definition EMaterialFlags.hpp:81
@ EMF_ANISOTROPIC_FILTER
Is anisotropic filtering? Default: false.
Definition EMaterialFlags.hpp:55
@ EMF_ANTI_ALIASING
AntiAliasing mode.
Definition EMaterialFlags.hpp:75
const u32 MATERIAL_MAX_TEXTURES
Maximum number of texture an SMaterial can have.
Definition SMaterial.hpp:283
E_MATERIAL_TYPE
Abstracted and easy to use fixed function/programmable pipeline material modes.
Definition EMaterialTypes.hpp:15
As of Nirtcpp 1.6, position2d is a synonym for vector2d.
Definition vector3d.hpp:11
unsigned short u16
16 bit unsigned variable.
Definition irrTypes.hpp:46
signed int s32
32 bit signed variable.
Definition irrTypes.hpp:72
unsigned int u32
32 bit unsigned variable.
Definition irrTypes.hpp:64