Oxygen Engine
Modern C++ 3D Engine using OpenGL
Loading...
Searching...
No Matches
oe::render::Cubemap Class Reference
Inheritance diagram for oe::render::Cubemap:
[legend]
Collaboration diagram for oe::render::Cubemap:
[legend]

Public Member Functions

 Cubemap (const unsigned int &size, const int &internal_format=0, const int &format=0, const int &type=0, const int &max_mip=1)
 
 Cubemap (const std::string &equirectangular_filename, const float &brightness_multiplier=1.0f, const int &max_mips=1)
 
 Cubemap (const std::string &folder, const std::string &extension, const bool is_hdr=false, const std::vector< std::string > &faces={"posx", "negx", "posy", "negy", "posz", "negz"})
 
 Cubemap (const std::vector< std::string > &filenames, const bool is_hdr=false)
 
 Cubemap (const uint32_t size, const std::function< glm::vec4(const uint8_t face, const uint32_t i, const uint32_t j)> generator, const int &max_mips=5)
 
std::vector< uint8_t > fetchTextureData (const unsigned int &face, const unsigned int &mip_level)
 
void fillTextureData (const std::vector< uint8_t > &data, const unsigned int &face, const unsigned int &mip_level)
 
unsigned int getSize () const
 
virtual void enableBilinearFiltering (bool enabled=true) override
 
void generateMipMaps () override
 
void useMipMaps ()
 
virtual void use (const uint8_t &layer) override
 
- Public Member Functions inherited from oe::render::Texture
 Texture (const int32_t width, const int32_t height, const uint8_t *data, const int32_t nb_channels=0, const int32_t internal_format=0, const int32_t format=0, const int32_t type=0, const uint8_t max_mips=1)
 
 Texture (const std::string &filename, const bool &is_srgb=false, const uint8_t max_mips=1)
 
 Texture (const uint32_t width, const uint32_t height, const std::function< glm::vec4(const uint32_t i, const uint32_t j)> generator, const uint8_t max_mips=1)
 
 Texture (const uint32_t width, const uint32_t height, const oe::scene::Material &generator, const int32_t nb_channels=0, const int32_t internal_format=0, const int32_t format=0, const int32_t type=0, const uint8_t max_mips=1)
 
void clampToEdge ()
 
void wrapRepeat ()
 
void fillTextureData (const std::vector< uint8_t > &data, const unsigned int &face, const unsigned int &mip_level)
 
std::vector< uint8_t > fetchTextureData (const unsigned int &face, const unsigned int &mip_level)
 
unsigned int getWidth () const
 
unsigned int getHeight () const
 
unsigned int getHandle () const
 
int getImageInternalFormat () const
 
int getImageFormat () const
 
int getImageType () const
 

Protected Member Functions

bool _load_from_file (const std::vector< std::string > &filenames, const int &internal_format=0, const int &format=0, const int &type=0)
 
void _construct_cubemap (const std::vector< std::string > &filenames, const int &internal_format=0, const int &format=0, const int &type=0, const int &max_mips=5)
 
template<typename T >
void _generate_cubemap (const unsigned int &size, oe::render::Shader *shader, T *texture, const int &max_mips)
 
- Protected Member Functions inherited from oe::render::Texture
 Texture (const Texture &)=delete
 
Textureoperator= (const Texture &)=delete
 
void _generate_texture (const int32_t width, const int32_t height, const uint8_t *data, const int32_t nb_channels=0, const int32_t internal_format=0, const int32_t format=0, const int32_t type=0, const uint8_t max_mips=1)
 

Protected Attributes

unsigned int _size
 
- Protected Attributes inherited from oe::render::Texture
uint32_t _internal_id = 0
 
int32_t _width
 
int32_t _height
 
int _internal_format = 0
 
int _format = 0
 
int _type = 0
 

Additional Inherited Members

- Static Public Member Functions inherited from oe::render::Texture
static TexturegenerateFromCompressed (const int32_t compression, const int32_t width, const int32_t height, const int32_t data_size, const uint8_t *data)
 

Constructor & Destructor Documentation

◆ Cubemap()

oe::render::Cubemap::Cubemap ( const uint32_t  size,
const std::function< glm::vec4(const uint8_t face, const uint32_t i, const uint32_t j)>  generator,
const int &  max_mips = 5 
)

Generate a RGBA cubemap from a function returning a vec4

Member Function Documentation

◆ enableBilinearFiltering()

virtual void oe::render::Cubemap::enableBilinearFiltering ( bool  enabled = true)
overridevirtual

Reimplemented from oe::render::Texture.

◆ generateMipMaps()

void oe::render::Cubemap::generateMipMaps ( )
overridevirtual

Reimplemented from oe::render::Texture.

◆ use()

virtual void oe::render::Cubemap::use ( const uint8_t &  layer)
overridevirtual

Reimplemented from oe::render::Texture.


The documentation for this class was generated from the following file: