Lugdunum  0.1.0
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Attributes | Friends | List of all members
lug::Graphics::Vulkan::Render::SkyBox Class Referencefinal

Class for SkyBox. More...

#include <SkyBox.hpp>

Inheritance diagram for lug::Graphics::Vulkan::Render::SkyBox:
[legend]
Collaboration diagram for lug::Graphics::Vulkan::Render::SkyBox:
[legend]

Public Member Functions

 SkyBox (const SkyBox &)=delete
 
 SkyBox (SkyBox &&)=delete
 
SkyBoxoperator= (const SkyBox &)=delete
 
SkyBoxoperator= (SkyBox &&)=delete
 
 ~SkyBox ()
 
void destroy ()
 
Resource::SharedPtr< lug::Graphics::Render::SkyBoxcreateIrradianceMap (lug::Graphics::Renderer &renderer) const override final
 
Resource::SharedPtr< lug::Graphics::Render::SkyBoxcreatePrefilteredMap (lug::Graphics::Renderer &renderer) const override final
 
- Public Member Functions inherited from lug::Graphics::Render::SkyBox
 SkyBox (const std::string &name)
 
 SkyBox (const SkyBox &)=delete
 
 SkyBox (SkyBox &&)=delete
 
SkyBoxoperator= (const SkyBox &)=delete
 
SkyBoxoperator= (SkyBox &&)=delete
 
const Resource::SharedPtr< lug::Graphics::Render::TexturegetBackgroundTexture () const
 
const Resource::SharedPtr< lug::Graphics::Render::TexturegetEnvironnementTexture () const
 
- Public Member Functions inherited from lug::Graphics::Resource
 Resource (Type type, const std::string &name)
 
 Resource (const Resource &)=delete
 
 Resource (Resource &&)=delete
 
Resourceoperator= (const Resource &)=delete
 
Resourceoperator= (Resource &&)=delete
 
virtual ~Resource ()=default
 
Type getType () const
 Returns the type of the Resource. More...
 
Handle getHandle () const
 Returns the handle of the Resource. More...
 
const std::string & getName () const
 Gets the name of the Resource. More...
 
void setName (const std::string &name)
 Sets the name of the Resource. More...
 

Static Public Member Functions

static const API::GraphicsPipelinegetPipeline ()
 
static const lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::MeshgetMesh ()
 
static const lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::TexturegetBrdfLut ()
 

Private Member Functions

 SkyBox (const std::string &name)
 Constructs a SkyBox. More...
 

Static Private Attributes

static API::GraphicsPipeline _pipeline
 
static API::GraphicsPipeline _irradianceMapPipeline
 
static API::GraphicsPipeline _prefilteredMapPipeline
 
static API::GraphicsPipeline _brdfLutPipeline
 
static lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::Mesh_mesh
 
static lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::Texture_brdfLut
 
static uint32_t _skyBoxCount {0}
 Store the number of skybox created to know when to create/destroy the pipeline and mesh. More...
 

Friends

Resource::SharedPtr< lug::Graphics::Render::SkyBoxBuilder::SkyBox::build (const ::lug::Graphics::Builder::SkyBox &)
 

Additional Inherited Members

- Public Types inherited from lug::Graphics::Resource
enum  Type : uint8_t {
  Type::Scene, Type::SceneNode, Type::Material, Type::Mesh,
  Type::Light, Type::Texture, Type::Pipeline, Type::Camera,
  Type::SkyBox
}
 Type of the resource. More...
 
- Protected Attributes inherited from lug::Graphics::Render::SkyBox
lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::Texture_backgroundTexture
 
lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::Texture_environnementTexture
 
- Protected Attributes inherited from lug::Graphics::Resource
std::string _name
 

Detailed Description

Class for SkyBox.

Definition at line 23 of file SkyBox.hpp.

Constructor & Destructor Documentation

◆ SkyBox() [1/3]

lug::Graphics::Vulkan::Render::SkyBox::SkyBox ( const SkyBox )
delete

◆ SkyBox() [2/3]

lug::Graphics::Vulkan::Render::SkyBox::SkyBox ( SkyBox &&  )
delete

◆ ~SkyBox()

lug::Graphics::Vulkan::Render::SkyBox::~SkyBox ( )
virtual

Reimplemented from lug::Graphics::Render::SkyBox.

Definition at line 33 of file SkyBox.cpp.

◆ SkyBox() [3/3]

lug::Graphics::Vulkan::Render::SkyBox::SkyBox ( const std::string &  name)
private

Constructs a SkyBox.

Parameters
[in]nameThe name of the SkyBox
[in]typeThe type of the SkyBox

Definition at line 31 of file SkyBox.cpp.

Member Function Documentation

◆ operator=() [1/2]

SkyBox& lug::Graphics::Vulkan::Render::SkyBox::operator= ( const SkyBox )
delete

◆ operator=() [2/2]

SkyBox& lug::Graphics::Vulkan::Render::SkyBox::operator= ( SkyBox &&  )
delete

◆ destroy()

void lug::Graphics::Vulkan::Render::SkyBox::destroy ( )

Definition at line 37 of file SkyBox.cpp.

◆ createIrradianceMap()

Resource::SharedPtr< lug::Graphics::Render::SkyBox > lug::Graphics::Vulkan::Render::SkyBox::createIrradianceMap ( lug::Graphics::Renderer renderer) const
finaloverridevirtual

Implements lug::Graphics::Render::SkyBox.

Definition at line 47 of file SkyBox.cpp.

◆ createPrefilteredMap()

Resource::SharedPtr< lug::Graphics::Render::SkyBox > lug::Graphics::Vulkan::Render::SkyBox::createPrefilteredMap ( lug::Graphics::Renderer renderer) const
finaloverridevirtual

Implements lug::Graphics::Render::SkyBox.

Definition at line 489 of file SkyBox.cpp.

◆ getPipeline()

const API::GraphicsPipeline & SkyBox::getPipeline ( )
inlinestatic

Definition at line 1 of file SkyBox.inl.

◆ getMesh()

const lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::Mesh > SkyBox::getMesh ( )
inlinestatic

Definition at line 5 of file SkyBox.inl.

◆ getBrdfLut()

const lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::Texture > SkyBox::getBrdfLut ( )
inlinestatic

Definition at line 9 of file SkyBox.inl.

Friends And Related Function Documentation

◆ Builder::SkyBox::build

Member Data Documentation

◆ _pipeline

API::GraphicsPipeline lug::Graphics::Vulkan::Render::SkyBox::_pipeline
staticprivate

Definition at line 54 of file SkyBox.hpp.

◆ _irradianceMapPipeline

API::GraphicsPipeline lug::Graphics::Vulkan::Render::SkyBox::_irradianceMapPipeline
staticprivate

Definition at line 55 of file SkyBox.hpp.

◆ _prefilteredMapPipeline

API::GraphicsPipeline lug::Graphics::Vulkan::Render::SkyBox::_prefilteredMapPipeline
staticprivate

Definition at line 56 of file SkyBox.hpp.

◆ _brdfLutPipeline

API::GraphicsPipeline lug::Graphics::Vulkan::Render::SkyBox::_brdfLutPipeline
staticprivate

Definition at line 57 of file SkyBox.hpp.

◆ _mesh

lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::Mesh > lug::Graphics::Vulkan::Render::SkyBox::_mesh
staticprivate

Definition at line 58 of file SkyBox.hpp.

◆ _brdfLut

lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::Texture > lug::Graphics::Vulkan::Render::SkyBox::_brdfLut
staticprivate

Definition at line 59 of file SkyBox.hpp.

◆ _skyBoxCount

uint32_t lug::Graphics::Vulkan::Render::SkyBox::_skyBoxCount {0}
staticprivate

Store the number of skybox created to know when to create/destroy the pipeline and mesh.

Definition at line 66 of file SkyBox.hpp.


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