0.8.2 API documentation
texture_cube_array.hpp
Go to the documentation of this file.
1 
4 #pragma once
5 
6 #include "texture_cube.hpp"
7 
8 namespace gli
9 {
11  class texture_cube_array : public texture
12  {
13  public:
14  typedef extent2d extent_type;
15 
16  public:
19 
22  format_type Format,
23  extent_type const& Extent,
24  size_type Layers,
25  size_type Levels,
26  swizzles_type const& Swizzles = swizzles_type(SWIZZLE_RED, SWIZZLE_GREEN, SWIZZLE_BLUE, SWIZZLE_ALPHA));
27 
30  format_type Format,
31  extent_type const& Extent,
32  size_type Layers,
33  swizzles_type const& Swizzles = swizzles_type(SWIZZLE_RED, SWIZZLE_GREEN, SWIZZLE_BLUE, SWIZZLE_ALPHA));
34 
36  explicit texture_cube_array(
37  texture const& Texture);
38 
41  texture const& Texture,
42  format_type Format,
43  size_type BaseLayer, size_type MaxLayer,
44  size_type BaseFace, size_type MaxFace,
45  size_type BaseLevel, size_type MaxLevel,
46  swizzles_type const& Swizzles = swizzles_type(SWIZZLE_RED, SWIZZLE_GREEN, SWIZZLE_BLUE, SWIZZLE_ALPHA));
47 
50  texture_cube_array const& Texture,
51  size_type BaseLayer, size_type MaxLayer,
52  size_type BaseFace, size_type MaxFace,
53  size_type BaseLevel, size_type MaxLevel);
54 
56  texture_cube operator[](size_type Layer) const;
57 
59  extent_type extent(size_type Level = 0) const;
60 
62  template <typename gen_type>
63  gen_type load(extent_type const & TexelCoord, size_type Layer, size_type Face, size_type Level) const;
64 
66  template <typename gen_type>
67  void store(extent_type const& TexelCoord, size_type Layer, size_type Face, size_type Level, gen_type const& Texel);
68  };
69 }//namespace gli
70 
71 #include "./core/texture_cube_array.inl"
72 
Include to use cube map textures.
format
Texture data format.
Definition: format.hpp:12
texture_cube operator[](size_type Layer) const
Create a view of the texture identified by Layer in the texture array.
Cube map texture.
Genetic texture class. It can support any target.
Definition: texture.hpp:14
gen_type load(extent_type const &TexelCoord, size_type Layer, size_type Face, size_type Level) const
Fetch a texel from a texture. The texture format must be uncompressed.
void store(extent_type const &TexelCoord, size_type Layer, size_type Face, size_type Level, gen_type const &Texel)
Write a texel to a texture. The texture format must be uncompressed.
extent_type extent(size_type Level=0) const
Return the dimensions of a texture instance: width and height where both should be equal...
Namespace where all the classes and functions provided by GLI are exposed.
Definition: clear.hpp:6
texture_cube_array()
Create an empty texture cube array.
Cube map array texture.