Commit Graph

161 Commits

Author SHA1 Message Date
Lynix 3b24d020e8 Minor stuff 2020-04-19 01:24:37 +02:00
Lynix e905c3a004 Move Vulkan debug callback to module 2020-04-13 15:12:58 +02:00
Lynix 75241ed8f0 VkRenderWindow: Default to RGBA8 if supported 2020-04-13 15:11:35 +02:00
Lynix d9a08640d6 Vulkan: Add renderpass and framebuffers 2020-04-10 17:36:05 +02:00
Lynix 9507c56fc9 PixelFormat rename
PixelFormatInfo => PixelFormatDescription
PixelFormat => PixelFormatInfo
PixelFormatType => PixelFormat
2020-04-10 14:19:36 +02:00
Lynix 87f1209327 Vulkan: Refactor command buffer and introduce command pool 2020-04-07 21:10:16 +02:00
Lynix f6d21d066e Vulkan: Improve RenderWindow subpass dependencies 2020-04-06 21:14:18 +02:00
Lynix ac8b908079 Vulkan: Replace ShaderBinding& by ShaderBindingPtr 2020-04-06 21:13:59 +02:00
Lynix f443bec6bc Add command buffers (WIP) 2020-04-02 21:07:01 +02:00
Lynix cf396b0792 Add support for VK_EXT_debug_utils 2020-03-26 23:34:58 +01:00
Lynix 15b95ca4a1 Minor and forgotten stuff 2020-03-26 21:20:00 +01:00
Lynix 1dc0ed8e94 Add ShaderBinding 2020-03-26 21:19:46 +01:00
Lynix 874130efd4 Implement Texture and TextureSampler 2020-03-26 21:18:35 +01:00
Lynix b73d3e8f04 Add and make use of Vulkan Memory Allocator 2020-03-26 21:15:49 +01:00
Lynix 509c392e05 Implement UploadPool to efficiently update UBOs 2020-03-26 21:13:06 +01:00
Lynix d892e8eaff Add support for Vulkan 1.1 & 1.2 2020-03-26 20:42:57 +01:00
Lynix 42d58bd77c Vulkan: Add physical device extension listing 2020-03-18 13:58:30 +01:00
Lynix 07fa581525 Cleanup device creation/selection 2020-03-18 13:48:53 +01:00
Lynix 4ede9f1cfe Add texture in demo 2020-03-18 13:48:05 +01:00
Lynix 9cc206b33e Minor C++ fixes 2020-03-17 17:13:27 +01:00
Lynix 5fde1e335b VulkanBuffer: Use WaitIdle instead of a fence (same effect) 2020-03-15 13:26:36 +01:00
Lynix 74adef0aec OCD fix 2020-03-14 17:34:21 +01:00
Lynix cee47f366f Rename Vk::Queue to Vk::QueueHandle 2020-03-14 17:33:50 +01:00
Lynix b774a879b6 Rework buffers synchronization 2020-03-13 18:44:49 +01:00
Lynix 63547fcd4e Replace DeviceHandle by references
and keep device alive until Vulkan is freed
2020-03-13 18:38:26 +01:00
Lynix 28cf4ed6e3 Make Vk::Device store a reference to Vk::PhysicalDevice info 2020-03-08 18:10:12 +01:00
Lynix 0e27c2315f Move Vulkan functions list to external files 2020-03-08 18:09:45 +01:00
Lynix 2b3241f354 Add RenderPipelineLayout 2020-03-05 20:35:31 +01:00
Lynix 4941de61da Spaaaace 2020-03-05 17:28:16 +01:00
Lynix c23b6dfa01 Copyright year update
I can't wait to see the conflicts this will cause
2020-03-05 17:27:26 +01:00
Lynix 74275292bf Some cleanup 2020-03-05 17:24:55 +01:00
Lynix 9515f1c807 Improve synchronization based on vulkan-tutorial
https://vulkan-tutorial.com/Drawing_a_triangle/Drawing/Rendering_and_presentation
2020-03-04 20:13:37 +01:00
Lynix 9f4037e461 Reverse front face 2020-03-04 18:55:37 +01:00
Lynix 7ba9a33d35 Add Fence objects (+ use them for sync) 2020-03-04 18:50:41 +01:00
Lynix 7bf734cdd4 Improve pipeline building 2020-03-03 22:26:57 +01:00
Lynix d5c75926c6 WIP (VertexDeclaration) 2020-03-03 01:04:24 +01:00
Lynix 287be5d9b6 WIP 2020-03-01 20:31:48 +01:00
Lynix 286461c482 Make use of Nazara uniform buffer 2020-03-01 12:49:49 +01:00
Lynix af28ea02a8 Vulkan usage fixes 2020-02-29 23:28:59 +01:00
Lynix 5d449095bf Renderer: Add ShaderStage class 2020-02-29 23:28:21 +01:00
Lynix 798425ce10 Some work on render pipelines 2020-02-27 23:12:29 +01:00
Lynix 2944d73586 Fix instance extensions/layers query 2020-02-27 23:12:05 +01:00
Lynix c05ea4095a Begin work on RenderPipeline 2020-02-25 22:56:08 +01:00
Lynix 7bbba14ba0 Fix merge 2020-02-25 20:22:46 +01:00
Lynix 79f732ee8a VulkanRenderer: Replace ObjectHandle by std::shared_ptr/raw pointers 2020-02-23 12:02:15 +01:00
Lynix 0c008236ba Minor fixes + update vulkan include 2020-02-23 01:28:16 +01:00
Jérôme Leclercq cd31e6c397 Add buffer support 2018-03-09 16:49:01 +01:00
Jérôme Leclercq 9b8e8042e4 Merge fix 2018-03-09 16:47:31 +01:00
Lynix 8a55888ada VulkanRenderer: Fix transfer queue choice 2017-09-16 10:35:30 +02:00
Lynix cd661144a0 Vulkan: Fix some errors 2017-08-06 12:14:22 +02:00
Lynix 4a156ab3d7 Vulkan: Add better handling for errors 2017-08-06 12:14:11 +02:00
Lynix 5b922cf52f Vulkan: Add buffer placeholder 2017-08-06 12:13:08 +02:00
Lynix 29cad19253 Fix some compilation errors 2017-07-04 23:57:43 +02:00
Lynix 8cdd922177 VulkanRenderer: Handle new errors cases 2017-07-04 23:41:08 +02:00
Lynix c136f8eddc Commit WIP about RenderSurface 2016-11-10 12:54:10 +01:00
Lynix e61c6d0a8e VulkanRenderer: Move vulkan wrappers to a separate directory 2016-10-29 01:59:06 +02:00
Lynix b317c10f23 VulkanRenderer/Vulkan: Fix IsInitialized() missing implementation 2016-10-28 23:25:27 +02:00
Lynix a1352b8823 VulkanRenderer: Move all the initialization back to the Vulkan static class 2016-10-28 22:30:22 +02:00
Lynix 01a812a5de Vulkan: Improve error handling 2016-10-12 15:08:02 +02:00
Lynix f709ca4997 VulkanRenderer: Add RenderWindow wrapper
Former-commit-id: 8046b7ecb5a71ba64bb5d51faaa2d2946318e6f1 [formerly adbc30c0ed533b63c445125f013384412f9272bd] [formerly eaa0c2a91e13440ee9b869d5fd2faad08d682879 [formerly 67381c6dbe3b960b1ab23bbe18c0a6193286f330]]
Former-commit-id: f4716a44444383d107f44265b5720490e141e4d0 [formerly 49d667d30dda623e6192853573efe05aa589035c]
Former-commit-id: fd3718fac5bb6d896d7cfd350807bbc1c0af309f
2016-09-15 00:44:22 +02:00
Lynix bdedd05032 Add new Renderer architecture (far from complete)
Former-commit-id: 52226793d7a087dfe0523315d3303934daffee49 [formerly 9de1c04df6b371f861a2eee8bba38902ee5041cd] [formerly ecd3099df5498722f6390447f40bd3907b8e40c4 [formerly 3076df585565fc9759ab3e718270f2e5ef620840]]
Former-commit-id: 92d52f967d0b088d1271afef26069e08cacd6b0f [formerly 5fe27e2ead104278951c772c2121a7b677f88d4d]
Former-commit-id: fb6c2456d8edd3ec022d5d953f79fecdd4f2b8f4
2016-08-23 12:52:34 +02:00