Implements a DirectX 12 ShaderProgram.
More...
#include <dx12.hpp>
Inherits LiteFX::Rendering::ShaderProgram< DirectX12ShaderModule >.
Implements a DirectX 12 ShaderProgram.
- See also
- DirectX12ShaderProgramBuilder
◆ DirectX12ShaderProgram() [1/3]
Initializes a new DirectX 12 shader program.
- Parameters
-
device | The parent device of the shader program. |
modules | The shader modules used by the shader program. |
◆ DirectX12ShaderProgram() [2/3]
◆ DirectX12ShaderProgram() [3/3]
LiteFX::Rendering::Backends::DirectX12ShaderProgram::DirectX12ShaderProgram |
( |
const DirectX12ShaderProgram & |
| ) |
|
|
deletenoexcept |
◆ ~DirectX12ShaderProgram()
DirectX12ShaderProgram::~DirectX12ShaderProgram |
( |
| ) |
|
|
virtualdefaultnoexcept |
◆ modules()
◆ reflectPipelineLayout()
◆ suppressMissingRootSignatureWarning()
void DirectX12ShaderProgram::suppressMissingRootSignatureWarning |
( |
bool |
disableWarning = true | ) |
|
|
staticnoexcept |
Suppresses the warning that is issued, if no root signature is found on a shader module when calling reflectPipelineLayout.
When a shader program is asked to build a pipeline layout, it first checks if a root signature is provided within the shader bytecode. If no root signature could be found, it falls back to using plain reflection to extract the descriptor sets. This has the drawback, that some features are not or only partially supported. Most notably, it is not possible to reflect a pipeline layout that uses push constants this way. To ensure that you are not missing the root signature by accident, the engine warns you when it encounters this situation. However, if you are only using plain descriptor sets, this can result in noise warnings that clutter the log. You can call this function to disable the warnings explicitly.
- Parameters
-
disableWarning | true to stop issuing the warning or false to continue. |
- See also
- reflectPipelineLayout