X-Git-Url: https://git.jsancho.org/?p=c-irrlicht.git;a=blobdiff_plain;f=include%2FIVideoDriver.h;fp=include%2FIVideoDriver.h;h=5c89181d13b89390dc957e8f00cb83e7f075360f;hp=5da2d39f0ca5f6d045ca0dff03370e6d523d8281;hb=8d84fb35562071d38c50f6d78880aa3cb626c0fc;hpb=0f5922af37242ffe33f1b83f5bdfff79639b5d5a diff --git a/include/IVideoDriver.h b/include/IVideoDriver.h index 5da2d39..5c89181 100644 --- a/include/IVideoDriver.h +++ b/include/IVideoDriver.h @@ -23,10 +23,50 @@ #define __C_I_VIDEO_DRIVER_H_INCLUDED__ #include "ITexture.h" +#include "matrix4.h" #include "SColor.h" #include "SExposedVideoData.h" +#include "SMaterial.h" #include "rect.h" +//! enumeration for geometry transformation states +typedef enum + { + //! View transformation + irr_video_ETS_VIEW = 0, + //! World transformation + irr_video_ETS_WORLD, + //! Projection transformation + irr_video_ETS_PROJECTION, + //! Texture transformation + irr_video_ETS_TEXTURE_0, + //! Texture transformation + irr_video_ETS_TEXTURE_1, + //! Texture transformation + irr_video_ETS_TEXTURE_2, + //! Texture transformation + irr_video_ETS_TEXTURE_3, +#if _C_IRR_MATERIAL_MAX_TEXTURES_>4 + //! Texture transformation + irr_video_ETS_TEXTURE_4, +#if _C_IRR_MATERIAL_MAX_TEXTURES_>5 + //! Texture transformation + irr_video_ETS_TEXTURE_5, +#if _C_IRR_MATERIAL_MAX_TEXTURES_>6 + //! Texture transformation + irr_video_ETS_TEXTURE_6, +#if _C_IRR_MATERIAL_MAX_TEXTURES_>7 + //! Texture transformation + irr_video_ETS_TEXTURE_7, +#endif +#endif +#endif +#endif + //! Not used + irr_video_ETS_COUNT + } irr_video_E_TRANSFORMATION_STATE; + +// types typedef void irr_video_IVideoDriver; #ifdef __cplusplus @@ -54,6 +94,15 @@ extern "C" { irr_video_getTexture(irr_video_IVideoDriver* driver, const char* filename); + void + irr_video_setMaterial(irr_video_IVideoDriver* driver, + const irr_video_SMaterial material); + + void + irr_video_setTransform(irr_video_IVideoDriver* driver, + irr_video_E_TRANSFORMATION_STATE state, + irr_core_matrix4* mat); + #ifdef __cplusplus } #endif