mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-12-08 20:58:41 +00:00
renderer_vulkan: Remove primitive restart disable support check. (#3827)
This commit is contained in:
@@ -94,10 +94,6 @@ GraphicsPipeline::GraphicsPipeline(
|
|||||||
const auto topology = LiverpoolToVK::PrimitiveType(key.prim_type);
|
const auto topology = LiverpoolToVK::PrimitiveType(key.prim_type);
|
||||||
const vk::PipelineInputAssemblyStateCreateInfo input_assembly = {
|
const vk::PipelineInputAssemblyStateCreateInfo input_assembly = {
|
||||||
.topology = topology,
|
.topology = topology,
|
||||||
// Avoid warning spam on all pipelines about unsupported restart disable, if not supported.
|
|
||||||
// However, must be false for list topologies to avoid validation errors.
|
|
||||||
.primitiveRestartEnable =
|
|
||||||
!instance.IsPrimitiveRestartDisableSupported() && !IsPrimitiveTopologyList(topology),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const bool is_rect_list = key.prim_type == AmdGpu::PrimitiveType::RectList;
|
const bool is_rect_list = key.prim_type == AmdGpu::PrimitiveType::RectList;
|
||||||
@@ -156,12 +152,9 @@ GraphicsPipeline::GraphicsPipeline(
|
|||||||
vk::DynamicState::eStencilCompareMask, vk::DynamicState::eStencilWriteMask,
|
vk::DynamicState::eStencilCompareMask, vk::DynamicState::eStencilWriteMask,
|
||||||
vk::DynamicState::eStencilOp, vk::DynamicState::eCullMode,
|
vk::DynamicState::eStencilOp, vk::DynamicState::eCullMode,
|
||||||
vk::DynamicState::eFrontFace, vk::DynamicState::eRasterizerDiscardEnable,
|
vk::DynamicState::eFrontFace, vk::DynamicState::eRasterizerDiscardEnable,
|
||||||
vk::DynamicState::eLineWidth,
|
vk::DynamicState::eLineWidth, vk::DynamicState::ePrimitiveRestartEnable,
|
||||||
};
|
};
|
||||||
|
|
||||||
if (instance.IsPrimitiveRestartDisableSupported()) {
|
|
||||||
dynamic_states.push_back(vk::DynamicState::ePrimitiveRestartEnable);
|
|
||||||
}
|
|
||||||
if (instance.IsDepthBoundsSupported()) {
|
if (instance.IsDepthBoundsSupported()) {
|
||||||
dynamic_states.push_back(vk::DynamicState::eDepthBoundsTestEnable);
|
dynamic_states.push_back(vk::DynamicState::eDepthBoundsTestEnable);
|
||||||
dynamic_states.push_back(vk::DynamicState::eDepthBounds);
|
dynamic_states.push_back(vk::DynamicState::eDepthBounds);
|
||||||
|
|||||||
@@ -411,11 +411,6 @@ public:
|
|||||||
properties.limits.framebufferStencilSampleCounts;
|
properties.limits.framebufferStencilSampleCounts;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Returns whether disabling primitive restart is supported.
|
|
||||||
bool IsPrimitiveRestartDisableSupported() const {
|
|
||||||
return driver_id != vk::DriverId::eMoltenvk;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Returns true if logic ops are supported by the device.
|
/// Returns true if logic ops are supported by the device.
|
||||||
bool IsLogicOpSupported() const {
|
bool IsLogicOpSupported() const {
|
||||||
return features.logicOp;
|
return features.logicOp;
|
||||||
|
|||||||
@@ -290,9 +290,7 @@ void DynamicState::Commit(const Instance& instance, const vk::CommandBuffer& cmd
|
|||||||
}
|
}
|
||||||
if (dirty_state.primitive_restart_enable) {
|
if (dirty_state.primitive_restart_enable) {
|
||||||
dirty_state.primitive_restart_enable = false;
|
dirty_state.primitive_restart_enable = false;
|
||||||
if (instance.IsPrimitiveRestartDisableSupported()) {
|
cmdbuf.setPrimitiveRestartEnable(primitive_restart_enable);
|
||||||
cmdbuf.setPrimitiveRestartEnable(primitive_restart_enable);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (dirty_state.rasterizer_discard_enable) {
|
if (dirty_state.rasterizer_discard_enable) {
|
||||||
dirty_state.rasterizer_discard_enable = false;
|
dirty_state.rasterizer_discard_enable = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user