diff options
Diffstat (limited to 'src/vk/device.cpp')
-rw-r--r-- | src/vk/device.cpp | 7 |
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); |