|
CeresEngine 0.2.0
A game development framework
|
Blending state descriptor structure. More...
#include <CeresEngine/RenderAPI/GPUGraphicsPipeline.hpp>
Static Public Member Functions | |
| template<typename Processor > | |
| static constexpr void | reflect (Processor &&RTTI) |
| Executes the given processor for every field of the struct. | |
Public Attributes | |
| bool | alphaToCoverageEnabled = false |
| Specifies whether to use alpha-to-coverage as a multi-sampling technique when setting a pixel to a render target. | |
| bool | independentBlendEnabled = false |
| Specifies whether to enable independent blending in simultaneous color attachments. | |
| GPULogicOp | logicOp = GPULogicOp::Disabled |
| Specifies the logic fragment operation. | |
| Vector4f | blendFactor = {0.0f, 0.0f, 0.0f, 0.0f} |
| Specifies the blending color factor. | |
| Array< GPUBlendTargetDescriptor, 8 > | targets |
| Render-target blend states for the respective color attachments. | |
Blending state descriptor structure.
|
inlinestaticconstexpr |
Executes the given processor for every field of the struct.
| RTTI | The processor to be ran for every field. |
Specifies whether to use alpha-to-coverage as a multi-sampling technique when setting a pixel to a render target.
By default disabled. This is useful when multi-sampling is enabled and alpha tests are implemented in a fragment shader (e.g. to render fences, plants, or other transparent geometries).
| Vector4f CeresEngine::GPUBlendDescriptor::blendFactor = {0.0f, 0.0f, 0.0f, 0.0f} |
Specifies the blending color factor.
By default (0, 0, 0, 0).
BlendOp::BlendFactor or BlendOp::InverseBlendFactor. Specifies whether to enable independent blending in simultaneous color attachments.
By default false.
targets array. Otherwise, each color attachment uses the blending configuration described only by the first entry of the targets array, i.e. targets[0] and all remaining entries targets[1..7] are ignored. | GPULogicOp CeresEngine::GPUBlendDescriptor::logicOp = GPULogicOp::Disabled |
Specifies the logic fragment operation.
By default LogicOp::Disabled.
LogicOp::Disabled, independentBlendEnabled must be false and blendEnabled of the first target must be false as well. If logic fragment operations are not supported by the renderer, this must be LogicOp::Disabled. | Array<GPUBlendTargetDescriptor, 8> CeresEngine::GPUBlendDescriptor::targets |
Render-target blend states for the respective color attachments.
A maximum of 8 targets is supported.
independentBlendEnabled is set to false, only the first entry is used, i.e. targets[0] and all remaining entries targets[1..7] are ignored.