![]() |
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 |
Public Member Functions inherited from mage::Resource< VertexShader > | |
| 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.