5#ifndef __I_MATERIAL_RENDERER_SERVICES_H_INCLUDED__
6#define __I_MATERIAL_RENDERER_SERVICES_H_INCLUDED__
39 bool resetAllRenderstates) = 0;
Interface providing some methods for changing advanced, internal states of a IVideoDriver.
virtual void setVertexShaderConstant(const f32 *data, s32 startRegister, s32 constantAmount=1)=0
Sets a vertex shader constant.
virtual bool setPixelShaderConstant(const c8 *name, const bool *bools, int count)=0
Bool interface for the above.
virtual bool setVertexShaderConstant(const c8 *name, const f32 *floats, int count)=0
Sets a constant for the vertex shader based on a name.
virtual bool setVertexShaderConstant(const c8 *name, const s32 *ints, int count)=0
Int interface for the above.
virtual bool setPixelShaderConstant(const c8 *name, const f32 *floats, int count)=0
Sets a constant for the pixel shader based on a name.
virtual void setBasicRenderStates(const SMaterial &material, const SMaterial &lastMaterial, bool resetAllRenderstates)=0
Can be called by an IMaterialRenderer to make its work easier.
virtual ~IMaterialRendererServices()
Destructor.
virtual bool setPixelShaderConstant(const c8 *name, const s32 *ints, int count)=0
Int interface for the above.
virtual IVideoDriver * getVideoDriver()=0
Get pointer to the IVideoDriver interface.
virtual bool setVertexShaderConstant(const c8 *name, const bool *bools, int count)=0
Bool interface for the above.
virtual void setPixelShaderConstant(const f32 *data, s32 startRegister, s32 constantAmount=1)=0
Sets a pixel shader constant.
Interface to driver which is able to perform 2d and 3d graphics functions.
Struct for holding parameters for a material renderer.
Everything in the Irrlicht Engine can be found in this namespace.
float f32
32 bit floating point variable.
char c8
8 bit character variable.
signed int s32
32 bit signed variable.