Explorar o código

vulkan: Fix for border colors

rdb hai 1 ano
pai
achega
fc21fdf291

+ 3 - 3
panda/src/vulkandisplay/config_vulkandisplay.cxx

@@ -65,9 +65,9 @@ ConfigVariableBool vulkan_support_custom_border_color
 ("vulkan-support-custom-border-color", true,
  PRC_DESC("If this is set to true, and this is supported by the video card, "
           "any value for the texture border color is supported.  If false, "
-          "only opaque white, transparent white, opaque black and transparent "
-          "black are supported.  If you do not need to use a different border "
-          "color than these, it is strongly recommended to set this to false."));
+          "only opaque white or black, and transparent black are supported.  "
+          "If you do not need to use a different border color than these, it "
+          "is strongly recommended to set this to false."));
 
 #define VK_ERROR_INVALID_SHADER_NV -1000012000
 

+ 3 - 3
panda/src/vulkandisplay/vulkanGraphicsStateGuardian.cxx

@@ -1862,13 +1862,13 @@ prepare_sampler(const SamplerState &sampler) {
 
   LColor border_color = sampler.get_border_color();
   VkSamplerCustomBorderColorCreateInfoEXT custom_border_color;
-  if (border_color == LColor(0.0, 0.0, 0.0, 0.0)) {
+  if (border_color.almost_equal(LColor(0.0, 0.0, 0.0, 0.0))) {
     sampler_info.borderColor = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK;
   }
-  else if (border_color == LColor(0.0, 0.0, 0.0, 1.0)) {
+  else if (border_color.almost_equal(LColor(0.0, 0.0, 0.0, 1.0))) {
     sampler_info.borderColor = VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK;
   }
-  else if (border_color == LColor(1.0, 1.0, 1.0, 1.0)) {
+  else if (border_color.almost_equal(LColor(1.0, 1.0, 1.0, 1.0))) {
     sampler_info.borderColor = VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE;
   }
   else if (_supports_custom_border_colors) {