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.
The video namespace contains classes for accessing the video driver. All 2d and 3d rendering is done ...
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.