turnip: Add support for alphaToOne.
Comparing a blob trace using the feature to one not, the difference was pretty obvious and in the spot you'd expect compared to alphaToCoverage. The SP_ reg didn't have a corresponding bit set, though it also has an alphaToCoverage. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5343>
This commit is contained in:
parent
79f3003445
commit
ac1ab9294a
|
@ -2294,6 +2294,7 @@ to upconvert to 32b float internally?
|
|||
<bitfield name="INDEPENDENT_BLEND" pos="8" type="boolean"/>
|
||||
<bitfield name="DUAL_COLOR_IN_ENABLE" pos="9" type="boolean"/>
|
||||
<bitfield name="ALPHA_TO_COVERAGE" pos="10" type="boolean"/>
|
||||
<bitfield name="ALPHA_TO_ONE" pos="11" type="boolean"/>
|
||||
<bitfield name="SAMPLE_MASK" low="16" high="31"/>
|
||||
</reg32>
|
||||
<reg32 offset="0x8870" name="RB_DEPTH_PLANE_CNTL">
|
||||
|
|
|
@ -598,7 +598,7 @@ tu_GetPhysicalDeviceFeatures(VkPhysicalDevice physicalDevice,
|
|||
.depthBounds = false,
|
||||
.wideLines = false,
|
||||
.largePoints = false,
|
||||
.alphaToOne = false,
|
||||
.alphaToOne = true,
|
||||
.multiViewport = false,
|
||||
.samplerAnisotropy = true,
|
||||
.textureCompressionETC2 = true,
|
||||
|
|
|
@ -2058,8 +2058,6 @@ tu6_emit_blend_control(struct tu_cs *cs,
|
|||
bool dual_src_blend,
|
||||
const VkPipelineMultisampleStateCreateInfo *msaa_info)
|
||||
{
|
||||
assert(!msaa_info->alphaToOneEnable);
|
||||
|
||||
const uint32_t sample_mask =
|
||||
msaa_info->pSampleMask ? (*msaa_info->pSampleMask & 0xffff)
|
||||
: ((1 << msaa_info->rasterizationSamples) - 1);
|
||||
|
@ -2076,7 +2074,8 @@ tu6_emit_blend_control(struct tu_cs *cs,
|
|||
.independent_blend = true,
|
||||
.sample_mask = sample_mask,
|
||||
.dual_color_in_enable = dual_src_blend,
|
||||
.alpha_to_coverage = msaa_info->alphaToCoverageEnable));
|
||||
.alpha_to_coverage = msaa_info->alphaToCoverageEnable,
|
||||
.alpha_to_one = msaa_info->alphaToOneEnable));
|
||||
}
|
||||
|
||||
void
|
||||
|
|
Loading…
Reference in New Issue