RDPipelineMultisampleState
Pipeline multisample state (used by RenderingDevice).
Pipeline multisample state (used by RenderingDevice).
RDPipelineMultisampleState is used to control how multisample or supersample antialiasing is being performed when rendering using RenderingDevice.
Declarations checked against C# SDK 1.0.0. Expand a name to see declarations and documentation.
Constructors1
RDPipelineMultisampleStateConstructor
public RDPipelineMultisampleState();Properties6
EnableAlphaToCoverageProperty
public bool EnableAlphaToCoverage { get; set; }If true, alpha to coverage is enabled. This generates a temporary coverage value based on the alpha component of the fragment's first color output. This allows alpha transparency to make use of multisample antialiasing.
EnableAlphaToOneProperty
public bool EnableAlphaToOne { get; set; }If true, alpha is forced to either 0.0 or 1.0. This allows hardening the edges of antialiased alpha transparencies. Only relevant if RDPipelineMultisampleState.EnableAlphaToCoverage is true.
EnableSampleShadingProperty
public bool EnableSampleShading { get; set; }If true, enables per-sample shading which replaces MSAA by SSAA. This provides higher quality antialiasing that works with transparent (alpha scissor) edges. This has a very high performance cost. See also RDPipelineMultisampleState.MinSampleShading. See the per-sample shading Vulkan documentation for more details.
MinSampleShadingProperty
public float MinSampleShading { get; set; }The multiplier of RDPipelineMultisampleState.SampleCount that determines how many samples are performed for each fragment. Must be between 0.0 and 1.0 (inclusive). Only effective if RDPipelineMultisampleState.EnableSampleShading is true. If RDPipelineMultisampleState.MinSampleShading is 1.0, fragment invocation must only read from the coverage index sample. Tile image access must not be used if RDPipelineMultisampleState.EnableSampleShading is not 1.0.
SampleCountProperty
public RenderingDevice.TextureSamples SampleCount { get; set; }The number of MSAA samples (or SSAA samples if RDPipelineMultisampleState.EnableSampleShading is true) to perform. Higher values result in better antialiasing, at the cost of performance.
SampleMasksProperty
public Reckfell.Collections.Array<int> SampleMasks { get; set; }The sample mask array. See the sample mask Vulkan documentation for more details.
Methods12
GetEnableAlphaToCoveragebool
public bool GetEnableAlphaToCoverage();boolGetEnableAlphaToOnebool
public bool GetEnableAlphaToOne();boolGetEnableSampleShadingbool
public bool GetEnableSampleShading();boolGetMinSampleShadingfloat
public float GetMinSampleShading();floatGetSampleCountRenderingDevice.TextureSamples
public RenderingDevice.TextureSamples GetSampleCount();RenderingDevice.TextureSamplesGetSampleMasksReckfell.Collections.Array<int>
public Reckfell.Collections.Array<int> GetSampleMasks();Reckfell.Collections.Array<int>SetEnableAlphaToCoveragevoid
public void SetEnableAlphaToCoverage(bool pMember);| Name | Type | Default |
|---|---|---|
pMember | bool | — |
SetEnableAlphaToOnevoid
public void SetEnableAlphaToOne(bool pMember);| Name | Type | Default |
|---|---|---|
pMember | bool | — |
SetEnableSampleShadingvoid
public void SetEnableSampleShading(bool pMember);| Name | Type | Default |
|---|---|---|
pMember | bool | — |
SetMinSampleShadingvoid
public void SetMinSampleShading(float pMember);| Name | Type | Default |
|---|---|---|
pMember | float | — |
SetSampleCountvoid
public void SetSampleCount(RenderingDevice.TextureSamples pMember);| Name | Type | Default |
|---|---|---|
pMember | RenderingDevice.TextureSamples | — |
SetSampleMasksvoid
public void SetSampleMasks(Reckfell.Collections.Array<int> masks);| Name | Type | Default |
|---|---|---|
masks | Reckfell.Collections.Array<int> | — |