Nameless Engine
|
#include <PipelineConfiguration.h>
Public Member Functions | |
std::set< ShaderMacro > | getRequiredVertexShaderMacros () const |
virtual std::set< ShaderMacro > | getRequiredFragmentShaderMacros () const |
std::string_view | getVertexShaderName () const |
virtual std::optional< GraphicsPipelineType > | getGraphicsType () const =0 |
virtual std::string_view | getFragmentShaderName () const |
virtual std::string_view | getComputeShaderName () const |
virtual bool | isPixelBlendingEnabled () const |
virtual bool | isDepthBiasEnabled () const |
virtual std::optional< PipelineShadowMappingUsage > | getShadowMappingUsage () const |
Protected Member Functions | |
PipelineConfiguration (const std::string &sVertexShaderName, const std::set< ShaderMacro > &requiredVertexShaderMacros) | |
Protected Attributes | |
std::set< ShaderMacro > | requiredVertexShaderMacros |
const std::string | sVertexShaderName |
Base class for pipeline options.
|
protected |
Initializes options.
sVertexShaderName | Name of the compiled vertex shader to use (empty if not used). |
requiredVertexShaderMacros | Macros required to be defined for a vertex shader. These macros are used to request the required shader variant from a shader pack. |
|
inlinevirtual |
Returns name of the compute shader that should be used.
Reimplemented in ne::ComputePipelineConfiguration.
|
inlinevirtual |
Returns name of the pixel/fragment shader that should be used.
Reimplemented in ne::ColorPipelineConfiguration, and ne::DepthPipelineConfiguration.
|
pure virtual |
Returns type of the pipeline that the object describes.
Implemented in ne::ColorPipelineConfiguration, ne::DepthPipelineConfiguration, and ne::ComputePipelineConfiguration.
|
inlinevirtual |
Returns shader macros that required to be defined for a fragment/pixel shader.
Reimplemented in ne::ColorPipelineConfiguration.
|
inline |
Returns shader macros that required to be defined for a vertex shader.
|
inlinevirtual |
Tells if this pipeline is used in shadow mapping.
Reimplemented in ne::DepthPipelineConfiguration.
|
inline |
Returns name of the vertex shader that should be used.
|
inlinevirtual |
Tells whether depth bias (offset is enabled or not).
true
to enable, false
to disable. Reimplemented in ne::DepthPipelineConfiguration.
|
inlinevirtual |
Tells whether pixel blending should be enabled or not.
true
to enable, false
to disable. Reimplemented in ne::ColorPipelineConfiguration.
|
protected |
Macros required to be defined for a vertex shader.
|
protected |
Name of the compiled vertex shader to use.