 |
Irrlicht 3D Engine
|
|
Go to the documentation of this file.
5 #ifndef __S_MATERIAL_LAYER_H_INCLUDED__
6 #define __S_MATERIAL_LAYER_H_INCLUDED__
37 static const char*
const aTextureClampNames[] = {
38 "texture_clamp_repeat",
39 "texture_clamp_clamp",
40 "texture_clamp_clamp_to_edge",
41 "texture_clamp_clamp_to_border",
42 "texture_clamp_mirror",
43 "texture_clamp_mirror_clamp",
44 "texture_clamp_mirror_clamp_to_edge",
45 "texture_clamp_mirror_clamp_to_border", 0};
75 MatrixAllocator.destruct(TextureMatrix);
76 MatrixAllocator.deallocate(TextureMatrix);
91 if (other.TextureMatrix)
92 *TextureMatrix = *other.TextureMatrix;
95 MatrixAllocator.destruct(TextureMatrix);
96 MatrixAllocator.deallocate(TextureMatrix);
102 if (other.TextureMatrix)
104 TextureMatrix = MatrixAllocator.allocate(1);
105 MatrixAllocator.construct(TextureMatrix,*other.TextureMatrix);
126 TextureMatrix = MatrixAllocator.allocate(1);
129 return *TextureMatrix;
137 return *TextureMatrix;
148 TextureMatrix = MatrixAllocator.allocate(1);
149 MatrixAllocator.construct(TextureMatrix,mat);
152 *TextureMatrix = mat;
171 different |= (TextureMatrix != b.TextureMatrix) &&
172 TextureMatrix && b.TextureMatrix &&
173 (*TextureMatrix != *(b.TextureMatrix));
181 {
return !(b!=*
this); }
228 #endif // __S_MATERIAL_LAYER_H_INCLUDED__
core::matrix4 & getTextureMatrix()
Gets the texture transformation matrix.
bool TrilinearFilter
Is trilinear filtering enabled? Default: false.
~SMaterialLayer()
Destructor.
bool operator==(const SMaterialLayer &b) const
Equality operator.
bool operator!=(const SMaterialLayer &b) const
Inequality operator.
@ ETC_REPEAT
Texture repeats.
@ ETC_CLAMP_TO_EDGE
Texture is clamped to the edge pixel.
@ ETC_MIRROR
Texture is alternatingly mirrored (0..1..0..1..0..)
@ ETC_MIRROR_CLAMP
Texture is mirrored once and then clamped (0..1..0)
Interface of a Video Driver dependent Texture.
E_TEXTURE_CLAMP
Texture coord clamp mode outside [0.0, 1.0].
4x4 matrix. Mostly used as transformation matrix for 3d calculations.
Struct for holding material parameters which exist per texture layer.
signed char s8
8 bit signed variable.
@ ETC_CLAMP_TO_BORDER
Texture is clamped to the border pixel (if exists)
@ ETC_MIRROR_CLAMP_TO_EDGE
Texture is mirrored once and then clamped to edge.
SMaterialLayer & operator=(const SMaterialLayer &other)
Assignment operator.
SMaterialLayer(const SMaterialLayer &other)
Copy constructor.
bool BilinearFilter
Is bilinear filtering enabled? Default: true.
@ ETC_CLAMP
Texture is clamped to the last pixel.
const core::matrix4 & getTextureMatrix() const
Gets the immutable texture transformation matrix.
ITexture * Texture
Texture.
const IRRLICHT_API matrix4 IdentityMatrix
global const identity matrix
s8 LODBias
Bias for the mipmap choosing decision.
u8 TextureWrapU
Texture Clamp Mode.
Everything in the Irrlicht Engine can be found in this namespace.
Struct for holding parameters for a material renderer.
SMaterialLayer()
Default constructor.
@ ETC_MIRROR_CLAMP_TO_BORDER
Texture is mirrored once and then clamped to border.
void setTextureMatrix(const core::matrix4 &mat)
Sets the texture transformation matrix to mat.
unsigned char u8
8 bit unsigned variable.
Very simple allocator implementation, containers using it can be used across dll boundaries.
u8 AnisotropicFilter
Is anisotropic filtering enabled? Default: 0, disabled.