![]() |
MAGE
v0.171.0
Matthias Advanced Game Engine
|
#include <shader.hpp>
Public Member Functions | |
VertexShader (ID3D11Device &device, std::wstring guid, const CompiledShader &compiled_shader, gsl::span< const D3D11_INPUT_ELEMENT_DESC > input_element_descs) | |
VertexShader (const VertexShader &vertex_shader)=delete | |
VertexShader (VertexShader &&vertex_shader) noexcept | |
virtual | ~VertexShader () |
VertexShader & | operator= (const VertexShader &vertex_shader)=delete |
VertexShader & | operator= (VertexShader &&vertex_shader) noexcept |
void | BindShader (ID3D11DeviceContext &device_context) const noexcept |
![]() | |
Resource (std::wstring guid) noexcept | |
Resource (const Resource &resource)=delete | |
Resource (Resource &&resource) noexcept | |
virtual | ~Resource () |
Resource & | operator= (const Resource &resource)=delete |
Resource & | operator= (Resource &&resource) noexcept |
const std::wstring_view | GetGuid () const noexcept |
bool | IsFileResource () const |
const std::filesystem::path | GetPath () const |
Private Member Functions | |
void | SetupShader (ID3D11Device &device, const CompiledShader &compiled_shader, gsl::span< const D3D11_INPUT_ELEMENT_DESC > input_element_descs) |
Private Attributes | |
ComPtr< ID3D11VertexShader > | m_vertex_shader |
ComPtr< ID3D11InputLayout > | m_vertex_layout |
A class of vertex shaders.
|
explicit |
Constructs a vertex shader.
[in,out] | device | A reference to the device. |
[in] | guid | The globally unique identifier. |
[in] | compiled_shader | A reference to the compiled vertex shader. |
[in] | input_element_descs | The input element descriptors. |
Exception | Failed to initialize this vertex shader. |
|
delete |
Constructs a vertex shader from the given vertex shader.
[in] | vertex_shader | A reference to the vertex shader to copy. |
|
defaultnoexcept |
Constructs a vertex shader by moving the given vertex shader.
[in] | vertex_shader | A reference to the vertex shader to move. |
|
virtualdefault |
Destructs this vertex shader.
|
noexcept |
Binds this vertex shader.
[in,out] | device_context | A reference to the device context. |
|
delete |
Copies the given vertex shader to this vertex shader.
[in] | vertex_shader | A reference to the vertex shader to copy. |
|
defaultnoexcept |
Moves the given vertex shader to this vertex shader.
[in] | vertex_shader | A reference to the vertex shader to copy. |
|
private |
Sets up this vertex shader.
[in] | device | A reference to the device. |
[in] | compiled_shader | A reference to the compiled vertex shader. |
[in] | input_element_descs | The input element descriptors. |
Exception | Failed to setup this vertex shader. |
|
private |
A pointer to the input layout of this vertex shader.
|
private |
A pointer to the vertex shader of this vertex shader.