00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __RE_TextureCubeMap__
00020 #define __RE_TextureCubeMap__
00021
00022 #include "RE_API.h"
00023
00024 #include "RE_Texture2DMap.h"
00025
00026 class re_TexCubeMap;
00027 class TIL_Raster;
00028 class TIL_TextureMap;
00029
00030 class RE_API RE_TextureCubeMap
00031 {
00032 public:
00033 RE_TextureCubeMap();
00034 virtual ~RE_TextureCubeMap();
00035
00036
00037 void setMap(TIL_TextureMap *texture);
00038 void setMap(const char *map_name, const char *relative_to);
00039
00040
00041 int getIndex() const { return myIndex; }
00042
00043
00044 int getClamped() const { return myIsClamped; }
00045 void setClamped(int is_clamped);
00046
00047
00048
00049 int getMipMapped() const { return myIsMipMapped; }
00050 void setMipMapped(int is_mip_mapped);
00051
00052
00053 int getBorders() const { return myIsBordered; }
00054 void setBorders(int is_bordered);
00055
00056
00057 const float *getBorderColor() const { return myBorderColor; }
00058 void setBorderColor(float r, float g, float b, float a);
00059
00060
00061 int getMaxSize() const { return myMaxSize; }
00062 void setMaxSize(int max_size);
00063
00064
00065
00066 RE_TexFiltType getMagFilter() const { return myMagFilter; }
00067 RE_TexFiltType getMinFilter() const { return myMinFilter; }
00068 void setMagFilter(RE_TexFiltType filter);
00069 void setMinFilter(RE_TexFiltType filter);
00070
00071 private:
00072 re_TexCubeMap *myTex;
00073
00074 float myBorderColor[4];
00075 int myIndex;
00076 int myMaxSize;
00077 int mySize;
00078
00079 RE_TexFiltType myMinFilter;
00080 RE_TexFiltType myMagFilter;
00081
00082 unsigned int myIsClamped : 1,
00083 myIsMipMapped : 1,
00084 myIsBordered : 1;
00085 };
00086
00087 #endif
00088