X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Ftexturecube.h;h=ea1c8296190ade9703121238771c9277baba3d04;hp=7510a716a6be13dc6f884e4af41fe4d6b13ad143;hb=4b4d2a48048268d2ad48bafbce8647af8088573f;hpb=93fa68debcd6e416a1b20f43077f7a79525aaecb diff --git a/source/texturecube.h b/source/texturecube.h index 7510a716..ea1c8296 100644 --- a/source/texturecube.h +++ b/source/texturecube.h @@ -1,10 +1,10 @@ #ifndef MSP_GL_TEXTURECUBE_H_ #define MSP_GL_TEXTURECUBE_H_ +#include #include #include "texture.h" #include "vector.h" -#include namespace Msp { namespace GL { @@ -49,11 +49,12 @@ public: }; private: - PixelFormat ifmt; unsigned size; unsigned allocated; + static TextureCubeFace face_order[6]; static Vector3 directions[6]; + static unsigned orientations[12]; public: TextureCube(); @@ -85,13 +86,16 @@ public: unsigned get_size() const { return size; } private: - unsigned get_level_size(unsigned); + unsigned get_n_levels() const; + unsigned get_level_size(unsigned) const; public: /** Translates indices into face constants. Valid indices are between 0 and 5, inclusive. */ static TextureCubeFace enumerate_faces(unsigned); + static unsigned get_face_index(TextureCubeFace); + /** Returns a vector pointing out of the face. */ static const Vector3 &get_face_direction(TextureCubeFace);