You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and dots ('.'), can be up to 35 characters long. Letters must be lowercase.
65 lines
1.6 KiB
65 lines
1.6 KiB
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
// OpenGL Image Copyright (c) 2008 - 2011 G-Truc Creation (www.g-truc.net) |
|
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
// Created : 2011-04-06 |
|
// Updated : 2011-04-06 |
|
// Licence : This source is under MIT License |
|
// File : gli/core/texture_cube.hpp |
|
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
|
|
#ifndef GLI_CORE_TEXTURE_CUBE_INCLUDED |
|
#define GLI_CORE_TEXTURE_CUBE_INCLUDED |
|
|
|
#include "texture2d.hpp" |
|
|
|
namespace gli |
|
{ |
|
enum face |
|
{ |
|
POSITIVE_X, |
|
NEGATIVE_X, |
|
POSITIVE_Y, |
|
NEGATIVE_Y, |
|
POSITIVE_Z, |
|
NEGATIVE_Z, |
|
FACE_MAX |
|
}; |
|
|
|
class textureCube |
|
{ |
|
public: |
|
typedef texture2D::dimensions_type dimensions_type; |
|
typedef texture2D::texcoord_type texcoord_type; |
|
typedef texture2D::size_type size_type; |
|
typedef texture2D::value_type value_type; |
|
typedef texture2D::format_type format_type; |
|
typedef texture2D::data_type data_type; |
|
typedef texture2D::level_type level_type; |
|
typedef face face_type; |
|
|
|
public: |
|
textureCube(); |
|
|
|
explicit textureCube(level_type const & Levels); |
|
|
|
~textureCube(); |
|
|
|
texture2D & operator[] ( |
|
face_type const & Face); |
|
texture2D const & operator[] ( |
|
face_type const & Face) const; |
|
|
|
bool empty() const; |
|
format_type format() const; |
|
level_type levels() const; |
|
void resize(level_type const & Levels); |
|
|
|
private: |
|
std::vector<texture2D> Faces; |
|
}; |
|
|
|
}//namespace gli |
|
|
|
#include "texture_cube.inl" |
|
|
|
#endif//GLI_CORE_TEXTURE_CUBE_INCLUDED
|
|
|