00001 // Funclib Graphics3d v1.0.0 00002 // 00003 // This module contains functions for dealing with simple 3d primatives. 00004 // Use it to draw simple 3d shapes and for particles/effects. 00005 // This module requires GRAPHICS to be compiled in, some functions only work 00006 // when TEXTURES is also compiled in. 00007 // 00008 // Contributor(s): Flatmush 00009 00010 00011 00012 #ifndef FLGRAPHICS3D_H 00013 #define FLGRAPHICS3D_H 00014 00015 #include "flGlobal.h" 00016 00017 #if FL_GRAPHICS_3D != 0 00018 00019 #define SPHERE_MAP_CYLINDER_EQUAL 0 00020 #define SPHERE_MAP_CYLINDER 1 00021 00022 #if FL_TEXTURE != 0 00023 #include "flTexture.h" 00024 #endif 00025 00026 #ifdef __cplusplus 00027 extern "C" { 00028 #endif 00029 00030 extern void graphics3dDrawOrigin(); 00031 extern void graphics3dDrawCubeWireframe(); 00032 extern void graphics3dDrawCube(); 00033 extern void graphics3dDrawSphere(u32 inDetail); 00034 00035 extern void graphics3dDrawCubeWireframea(vect3f inLocation, vect3f inDimensions, vect3f inRotation, u32 inColor); 00036 extern void graphics3dDrawCubea(vect3f inLocation, vect3f inDimensions, vect3f inRotation, u32 inColor); 00037 00038 #if FL_TEXTURE != 0 00039 extern void graphics3dDrawCubeTextured(Texture* inTex); 00040 extern void graphics3dDrawSphereTextured(u32 inDetail, u8 inMapType, Texture* inTex); 00041 #endif 00042 00043 #ifdef __cplusplus 00044 } 00045 #endif 00046 00047 #endif 00048 00049 #endif