X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbackends%2Fvulkan%2Fstenciltest_backend.cpp;fp=source%2Fbackends%2Fvulkan%2Fstenciltest_backend.cpp;h=70dcbeee05e9b3929e0d834677de89c8cd8d37d9;hb=99ca354f18119f82f1adeca100cd665a8f640317;hp=0000000000000000000000000000000000000000;hpb=4cd245dafe6a7ee5c93edca5aee2d146f1155309;p=libs%2Fgl.git diff --git a/source/backends/vulkan/stenciltest_backend.cpp b/source/backends/vulkan/stenciltest_backend.cpp new file mode 100644 index 00000000..70dcbeee --- /dev/null +++ b/source/backends/vulkan/stenciltest_backend.cpp @@ -0,0 +1,27 @@ +#include "stenciltest.h" +#include "stenciltest_backend.h" +#include "vulkan.h" + +using namespace std; + +namespace Msp { +namespace GL { + +unsigned get_vulkan_stencil_op(StencilOp op) +{ + switch(op) + { + case KEEP: return VK_STENCIL_OP_KEEP; + case SET_ZERO: return VK_STENCIL_OP_ZERO; + case REPLACE: return VK_STENCIL_OP_REPLACE; + case INCR_CLAMP: return VK_STENCIL_OP_INCREMENT_AND_CLAMP; + case DECR_CLAMP: return VK_STENCIL_OP_DECREMENT_AND_CLAMP; + case INVERT: return VK_STENCIL_OP_INVERT; + case INCR_WRAP: return VK_STENCIL_OP_INCREMENT_AND_WRAP; + case DECR_WRAP: return VK_STENCIL_OP_DECREMENT_AND_WRAP; + default: throw invalid_argument("get_vulkan_stencil_op"); + } +} + +} // namespace GL +} // namespace Msp