Lugdunum
0.1.0
include
lug
Graphics
Builder
SkyBox.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <array>
4
#include <cstdint>
5
#include <string>
6
7
#include <
lug/Graphics/Builder/Texture.hpp
>
8
#include <
lug/Graphics/Resource.hpp
>
9
#include <
lug/Graphics/Render/SkyBox.hpp
>
10
#include <
lug/Graphics/Vulkan/Builder/SkyBox.hpp
>
11
12
namespace
lug
{
13
namespace
Graphics {
14
15
class
Renderer;
16
17
namespace
Builder {
18
19
class
LUG_GRAPHICS_API
SkyBox
{
20
friend
Resource::SharedPtr<lug::Graphics::Render::SkyBox>
lug::Graphics::Vulkan::Builder::SkyBox::build
(const ::lug::Graphics::Builder::SkyBox&);
21
22
public
:
23
explicit
SkyBox
(
Renderer
& renderer);
24
25
SkyBox
(
const
SkyBox
&) =
delete
;
26
SkyBox
(
SkyBox
&&) =
delete
;
27
28
SkyBox
& operator=(
const
SkyBox
&) =
delete
;
29
SkyBox
& operator=(
SkyBox
&&) =
delete
;
30
31
~
SkyBox
() =
default
;
32
37
void
setName(
const
std::string& name);
38
39
void
setMagFilter(
Render::Texture::Filter
magFilter);
40
void
setMinFilter(
Render::Texture::Filter
minFilter);
41
void
setMipMapFilter(
Render::Texture::Filter
mipMapFilter);
42
void
setWrapS(
Render::Texture::WrappingMode
wrapS);
43
void
setWrapT(
Render::Texture::WrappingMode
wrapT);
44
void
setWrapW(
Render::Texture::WrappingMode
wrapW);
45
void
setBackgroundFilename(
const
std::string& filename);
46
void
setEnvironnementFilename(
const
std::string& filename);
47
48
Resource::SharedPtr<Render::SkyBox>
build
();
49
50
protected
:
51
Renderer
&
_renderer
;
52
53
std::string
_name
;
54
55
Render::Texture::Filter
_magFilter{
Render::Texture::Filter::Nearest
};
56
Render::Texture::Filter
_minFilter{
Render::Texture::Filter::Nearest
};
57
Render::Texture::Filter
_mipMapFilter{
Render::Texture::Filter::Nearest
};
58
59
Render::Texture::WrappingMode
_wrapS{
Render::Texture::WrappingMode::ClampToEdge
};
60
Render::Texture::WrappingMode
_wrapT{
Render::Texture::WrappingMode::ClampToEdge
};
61
Render::Texture::WrappingMode
_wrapW{
Render::Texture::WrappingMode::ClampToEdge
};
62
63
std::string
_backgroundFilename
;
64
std::string
_environnementFilename
;
65
};
66
67
#include <
lug/Graphics/Builder/SkyBox.inl
>
68
69
}
// Builder
70
}
// Graphics
71
}
// lug
lug::Graphics::Builder::SkyBox
Definition:
SkyBox.hpp:19
lug::Graphics::Render::Texture::Filter::Nearest
lug::Graphics::Builder::SkyBox::_environnementFilename
std::string _environnementFilename
Definition:
SkyBox.hpp:64
LUG_GRAPHICS_API
#define LUG_GRAPHICS_API
Definition:
Export.hpp:11
Texture.hpp
lug::Graphics::Builder::SkyBox::_backgroundFilename
std::string _backgroundFilename
Definition:
SkyBox.hpp:63
lug::Graphics::Resource::SharedPtr< lug::Graphics::Render::SkyBox >
SkyBox.inl
Resource.hpp
lug::Graphics::Render::Texture::Filter
Filter
Definition:
Texture.hpp:20
lug::Graphics::Render::Texture::WrappingMode
WrappingMode
Definition:
Texture.hpp:25
lug::Graphics::Builder::SkyBox::_renderer
Renderer & _renderer
Definition:
SkyBox.hpp:51
SkyBox.hpp
lug::Graphics::Vulkan::Builder::SkyBox::build
Resource::SharedPtr< lug::Graphics::Render::SkyBox > build(const ::lug::Graphics::Builder::SkyBox &builder)
Definition:
SkyBox.cpp:979
lug::Graphics::Renderer
Definition:
Renderer.hpp:18
lug
Definition:
Application.hpp:11
lug::Graphics::Render::Texture::WrappingMode::ClampToEdge
lug::Graphics::Builder::SkyBox::_name
std::string _name
Definition:
SkyBox.hpp:53
SkyBox.hpp
Generated by
1.8.13