summaryrefslogtreecommitdiff
path: root/src/vk/device.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/vk/device.cpp')
-rw-r--r--src/vk/device.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/vk/device.cpp b/src/vk/device.cpp
index 74727f9..957ae6d 100644
--- a/src/vk/device.cpp
+++ b/src/vk/device.cpp
@@ -126,6 +126,7 @@ Device::Device(VkPhysicalDevice vk_physical_device, bool with_swapchain)
VkPhysicalDeviceFeatures required_features = {};
required_features.multiDrawIndirect = supported_features.multiDrawIndirect;
+ required_features.fillModeNonSolid = VK_TRUE;
required_features.geometryShader = VK_TRUE;
required_features.tessellationShader = VK_TRUE;
required_features.samplerAnisotropy = VK_TRUE;
@@ -165,6 +166,10 @@ Device::Device(VkPhysicalDevice vk_physical_device, bool with_swapchain)
this->device, DATA_DIR "/glsl/shader_2d.vert.spv");
this->frag2d_shader_module = create_shader_module(
this->device, DATA_DIR "/glsl/shader_2d.frag.spv");
+ this->vert2d_wired_shader_module = create_shader_module(
+ this->device, DATA_DIR "/glsl/shader_2d_wired.vert.spv");
+ this->frag2d_wired_shader_module = create_shader_module(
+ this->device, DATA_DIR "/glsl/shader_2d_wired.frag.spv");
}
this->queue_families = static_cast<QueueFamily*>(
@@ -202,6 +207,8 @@ Device::~Device()
vkDestroyShaderModule(this->device, this->frag3d_shader_module, nullptr);
vkDestroyShaderModule(this->device, this->vert2d_shader_module, nullptr);
vkDestroyShaderModule(this->device, this->frag2d_shader_module, nullptr);
+ vkDestroyShaderModule(this->device, this->vert2d_wired_shader_module, nullptr);
+ vkDestroyShaderModule(this->device, this->frag2d_wired_shader_module, nullptr);
vkDeviceWaitIdle(this->device);
vkDestroyDevice(this->device, nullptr);