Yamero GIDOLY!!!!!!

This commit is contained in:
CamilleLaVey 2026-02-02 00:12:25 -04:00
parent 13903d6e8c
commit 7badde58b2
4 changed files with 12 additions and 2 deletions

View File

@ -916,7 +916,7 @@ void GraphicsPipeline::MakePipeline(VkRenderPass render_pass) {
}
}
if (device.IsExtProvokingVertexSupported()) {
if (device.IsExtProvokingVertexDynamicStateSupported()) {
dynamic_states.push_back(VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT);
}

View File

@ -1042,7 +1042,7 @@ void RasterizerVulkan::UpdateDynamicStates() {
UpdateLogicOp(regs);
}
if (device.IsExtProvokingVertexSupported()) {
if (device.IsExtProvokingVertexDynamicStateSupported()) {
UpdateProvokingVertex(regs);
}

View File

@ -1270,6 +1270,9 @@ void Device::RemoveUnsuitableExtensions() {
const bool supports_alpha_to_one =
features.extended_dynamic_state3.extendedDynamicState3AlphaToOneEnable &&
features.features.alphaToOne;
const bool supports_provoking_vertex_mode =
features.extended_dynamic_state3.extendedDynamicState3ProvokingVertexMode &&
extensions.provoking_vertex;
dynamic_state3_depth_clamp_enable = supports_depth_clamp_enable;
dynamic_state3_logic_op_enable = supports_logic_op_enable;
@ -1278,6 +1281,7 @@ void Device::RemoveUnsuitableExtensions() {
dynamic_state3_line_stipple_enable = supports_line_stipple_enable;
dynamic_state3_alpha_to_coverage = supports_alpha_to_coverage;
dynamic_state3_alpha_to_one = supports_alpha_to_one;
dynamic_state3_provoking_vertex_mode = supports_provoking_vertex_mode;
dynamic_state3_enables = dynamic_state3_depth_clamp_enable || dynamic_state3_logic_op_enable ||
dynamic_state3_line_raster_mode ||

View File

@ -715,6 +715,11 @@ public:
return extensions.provoking_vertex;
}
/// Returns true if provoking vertex can be used as a dynamic state.
bool IsExtProvokingVertexDynamicStateSupported() const {
return dynamic_state3_provoking_vertex_mode;
}
/// Returns true if the device supports VK_KHR_shader_atomic_int64.
bool IsExtShaderAtomicInt64Supported() const {
return extensions.shader_atomic_int64;
@ -1059,6 +1064,7 @@ private:
bool dynamic_state3_line_stipple_enable{};
bool dynamic_state3_alpha_to_coverage{};
bool dynamic_state3_alpha_to_one{};
bool dynamic_state3_provoking_vertex_mode{};
bool supports_conditional_barriers{}; ///< Allows barriers in conditional control flow.
bool supports_dynamic_state{true}; ///< Core Vulkan 1.0 dynamic states
size_t sampler_heap_budget{}; ///< Sampler budget for buggy drivers (0 = unlimited).