Nameless Engine
Loading...
Searching...
No Matches
ne::ColorPipelineConfiguration Class Reference

#include <PipelineConfiguration.h>

Inheritance diagram for ne::ColorPipelineConfiguration:
ne::PipelineConfiguration

Public Member Functions

 ColorPipelineConfiguration (const std::string &sVertexShaderName, const std::set< ShaderMacro > &additionalVertexShaderMacros, const std::string &sPixelShaderName, std::set< ShaderMacro > additionalPixelShaderMacros, bool bUsePixelBlending)
 
virtual std::optional< GraphicsPipelineType > getGraphicsType () const override
 
virtual std::set< ShaderMacro > getAdditionalPixelShaderMacros () const override
 
virtual std::string_view getPixelShaderName () const override
 
virtual bool isPixelBlendingEnabled () const override
 
- Public Member Functions inherited from ne::PipelineConfiguration
std::set< ShaderMacro > getAdditionalVertexShaderMacros () const
 
std::string_view getVertexShaderName () const
 
virtual std::optional< GraphicsPipelineType > getGraphicsType () const =0
 
virtual std::set< ShaderMacro > getAdditionalPixelShaderMacros () const
 
virtual std::string_view getPixelShaderName () const
 
virtual std::string_view getComputeShaderName () const
 
virtual bool isPixelBlendingEnabled () const
 
virtual bool isDepthBiasEnabled () const
 
virtual std::optional< PipelineShadowMappingUsage > getShadowMappingUsage () const
 

Protected Attributes

std::set< ShaderMacro > additionalPixelShaderMacros
 
const std::string sPixelShaderName
 
const bool bUsePixelBlending
 
- Protected Attributes inherited from ne::PipelineConfiguration
std::set< ShaderMacro > additionalVertexShaderMacros
 
const std::string sVertexShaderName
 

Additional Inherited Members

- Protected Member Functions inherited from ne::PipelineConfiguration
 PipelineConfiguration (const std::string &sVertexShaderName, const std::set< ShaderMacro > &additionalVertexShaderMacros)
 

Detailed Description

Pipeline that uses pixel/fragment shaders to draw color.

Constructor & Destructor Documentation

◆ ColorPipelineConfiguration()

ne::ColorPipelineConfiguration::ColorPipelineConfiguration ( const std::string &  sVertexShaderName,
const std::set< ShaderMacro > &  additionalVertexShaderMacros,
const std::string &  sPixelShaderName,
std::set< ShaderMacro >  additionalPixelShaderMacros,
bool  bUsePixelBlending 
)

Initializes options.

Parameters
sVertexShaderNameName of the compiled vertex shader to use.
additionalVertexShaderMacrosAdditional macros to enable for vertex shader configuration.
sPixelShaderNameName of the compiled pixel shader to use.
additionalPixelShaderMacrosAdditional macros to enable for pixel shader configuration.
bUsePixelBlendingtrue to enable transparency, false to disable.

Member Function Documentation

◆ getAdditionalPixelShaderMacros()

std::set< ShaderMacro > ne::ColorPipelineConfiguration::getAdditionalPixelShaderMacros ( ) const
overridevirtual

Returns additional macros to enable for pixel/fragment shader configuration (if pixel/fragment shader is used).

Returns
Macros.

Reimplemented from ne::PipelineConfiguration.

◆ getGraphicsType()

std::optional< GraphicsPipelineType > ne::ColorPipelineConfiguration::getGraphicsType ( ) const
overridevirtual

Returns type of the pipeline that the object describes.

Returns
Pipeline type.

Implements ne::PipelineConfiguration.

◆ getPixelShaderName()

std::string_view ne::ColorPipelineConfiguration::getPixelShaderName ( ) const
overridevirtual

Returns name of the pixel/fragment shader that should be used.

Returns
Empty string if pixel/fragment shader is not used, otherwise name of the compiled shader.

Reimplemented from ne::PipelineConfiguration.

◆ isPixelBlendingEnabled()

bool ne::ColorPipelineConfiguration::isPixelBlendingEnabled ( ) const
overridevirtual

Tells whether pixel blending should be enabled or not.

Returns
true to enable, false to disable.

Reimplemented from ne::PipelineConfiguration.

Member Data Documentation

◆ additionalPixelShaderMacros

std::set<ShaderMacro> ne::ColorPipelineConfiguration::additionalPixelShaderMacros
protected

Additional macros to enable for pixel shader configuration.

◆ bUsePixelBlending

const bool ne::ColorPipelineConfiguration::bUsePixelBlending
protected

true to enable transparency, false to disable.

◆ sPixelShaderName

const std::string ne::ColorPipelineConfiguration::sPixelShaderName
protected

Name of the compiled pixel shader to use.


The documentation for this class was generated from the following files: