diff --git a/src/vkcv/GraphicsPipelineManager.cpp b/src/vkcv/GraphicsPipelineManager.cpp
index 870220f45b52c022f7c2d445a40e99ab4a6a4a2f..a461051f9784e7d95de7c15c965caa633d3bb35c 100644
--- a/src/vkcv/GraphicsPipelineManager.cpp
+++ b/src/vkcv/GraphicsPipelineManager.cpp
@@ -274,10 +274,13 @@ namespace vkcv
 		static vk::PipelineRasterizationConservativeStateCreateInfoEXT conservativeRasterization;
 		
 		if (config.m_UseConservativeRasterization) {
+            const float overestimationSize = 1.0f - conservativeRasterProperties.primitiveOverestimationSize;
+            const float maxOverestimationSize = conservativeRasterProperties.maxExtraPrimitiveOverestimationSize;
+
 			conservativeRasterization = vk::PipelineRasterizationConservativeStateCreateInfoEXT(
 					{},
 					vk::ConservativeRasterizationModeEXT::eOverestimate,
-					std::max(1 - conservativeRasterProperties.primitiveOverestimationSize, 0.f)
+					std::min(std::max(overestimationSize, 0.f), maxOverestimationSize)
 			);
 			
 			pipelineRasterizationStateCreateInfo.pNext = &conservativeRasterization;