SleakEngine 1.0.0
C++23 multi-backend game engine
Loading...
Searching...
No Matches
Sleak::RenderEngine::DirectX11CubemapTexture Class Reference

D3D11 cubemap texture, loadable from six face images or a single equirectangular panorama. More...

#include <DirectX11CubemapTexture.hpp>

Inheritance diagram for Sleak::RenderEngine::DirectX11CubemapTexture:

Public Member Functions

 DirectX11CubemapTexture (ID3D11Device *device)
 ~DirectX11CubemapTexture () override
void Bind (uint32_t slot=0) const override
TextureFormat GetFormat () const override
uint32_t GetHeight () const override
TextureType GetType () const override
uint32_t GetWidth () const override
bool LoadCubemap (const std::array< std::string, 6 > &facePaths)
 Loads and uploads 6 face images: +X, -X, +Y, -Y, +Z, -Z.
bool LoadEquirectangular (const std::string &path, uint32_t faceSize=512)
 Loads a single equirectangular panorama and resamples it into 6 cube faces.
bool LoadFromFile (const std::string &filePath) override
 Unused for cubemaps; load via LoadCubemap/LoadEquirectangular instead.
bool LoadFromMemory (const void *data, uint32_t width, uint32_t height, TextureFormat format) override
 Unused for cubemaps; load via LoadCubemap/LoadEquirectangular instead.
void SetFilter (TextureFilter filter) override
void SetWrapMode (TextureWrapMode wrapMode) override
void Unbind () const override
Public Member Functions inherited from Sleak::Texture
virtual ~Texture ()=default
virtual uint64_t GetImGuiTextureID () const
virtual float GetLodBias () const
virtual void SetLodBias (float bias)

Detailed Description

D3D11 cubemap texture, loadable from six face images or a single equirectangular panorama.

Definition at line 17 of file DirectX11CubemapTexture.hpp.

Constructor & Destructor Documentation

◆ DirectX11CubemapTexture()

Sleak::RenderEngine::DirectX11CubemapTexture::DirectX11CubemapTexture ( ID3D11Device * device)

◆ ~DirectX11CubemapTexture()

Sleak::RenderEngine::DirectX11CubemapTexture::~DirectX11CubemapTexture ( )
override

Member Function Documentation

◆ Bind()

void Sleak::RenderEngine::DirectX11CubemapTexture::Bind ( uint32_t slot = 0) const
overridevirtual

Implements Sleak::Texture.

◆ GetFormat()

TextureFormat Sleak::RenderEngine::DirectX11CubemapTexture::GetFormat ( ) const
inlineoverridevirtual

Implements Sleak::Texture.

Definition at line 42 of file DirectX11CubemapTexture.hpp.

◆ GetHeight()

uint32_t Sleak::RenderEngine::DirectX11CubemapTexture::GetHeight ( ) const
inlineoverridevirtual

Implements Sleak::Texture.

Definition at line 41 of file DirectX11CubemapTexture.hpp.

◆ GetType()

TextureType Sleak::RenderEngine::DirectX11CubemapTexture::GetType ( ) const
inlineoverridevirtual

Implements Sleak::Texture.

Definition at line 43 of file DirectX11CubemapTexture.hpp.

◆ GetWidth()

uint32_t Sleak::RenderEngine::DirectX11CubemapTexture::GetWidth ( ) const
inlineoverridevirtual

Implements Sleak::Texture.

Definition at line 40 of file DirectX11CubemapTexture.hpp.

◆ LoadCubemap()

bool Sleak::RenderEngine::DirectX11CubemapTexture::LoadCubemap ( const std::array< std::string, 6 > & facePaths)

Loads and uploads 6 face images: +X, -X, +Y, -Y, +Z, -Z.

◆ LoadEquirectangular()

bool Sleak::RenderEngine::DirectX11CubemapTexture::LoadEquirectangular ( const std::string & path,
uint32_t faceSize = 512 )

Loads a single equirectangular panorama and resamples it into 6 cube faces.

◆ LoadFromFile()

bool Sleak::RenderEngine::DirectX11CubemapTexture::LoadFromFile ( const std::string & filePath)
overridevirtual

Unused for cubemaps; load via LoadCubemap/LoadEquirectangular instead.

Implements Sleak::Texture.

◆ LoadFromMemory()

bool Sleak::RenderEngine::DirectX11CubemapTexture::LoadFromMemory ( const void * data,
uint32_t width,
uint32_t height,
TextureFormat format )
overridevirtual

Unused for cubemaps; load via LoadCubemap/LoadEquirectangular instead.

Implements Sleak::Texture.

◆ SetFilter()

void Sleak::RenderEngine::DirectX11CubemapTexture::SetFilter ( TextureFilter filter)
overridevirtual

Implements Sleak::Texture.

◆ SetWrapMode()

void Sleak::RenderEngine::DirectX11CubemapTexture::SetWrapMode ( TextureWrapMode wrapMode)
overridevirtual

Implements Sleak::Texture.

◆ Unbind()

void Sleak::RenderEngine::DirectX11CubemapTexture::Unbind ( ) const
overridevirtual

Implements Sleak::Texture.