Commit Graph

225 Commits

Author SHA1 Message Date
SirLynix
ab8bac2575 Use fmt store instead of ToString fallback
Thanks to @jonathanpoelen for the idea
2023-08-15 01:10:01 +02:00
SirLynix
a741672a51 Allow error message to be formatted 2023-08-15 01:10:01 +02:00
SirLynix
e8620894f7 Renderer: Expose present mode and allow to query/set it 2023-08-13 18:16:03 +02:00
SirLynix
e3da81dff4 ComputeTest: Fix Vulkan error 2023-07-21 12:12:10 +02:00
SirLynix
dee47c6f15 Renderer: Fix BuildMipmaps 2023-07-21 12:12:10 +02:00
SirLynix
4db5b59ec9 Renderer: Refactor transient resources (allow access at any time) 2023-07-21 12:12:10 +02:00
SirLynix
e34ba8c05d Add ComputeParticlesTest
Renderer: Add a way to execute commands on the device
2023-07-21 12:12:10 +02:00
SirLynix
fbf4da3c4f VulkanRenderer: Improve transient command buffer usage
Allocate and reuse them between frames, by resetting the command pool
2023-07-21 09:00:34 +02:00
SirLynix
5e4c175395 VulkanRenderer: Implement CommandBufferBuilder::BuildMipmaps 2023-07-14 14:25:08 +02:00
SirLynix
62663dc8e1 Vulkan 2023-07-14 14:18:04 +02:00
SirLynix
2886a2e0c0 Rename EnumMap to EnumArray after nazarautils update 2023-05-30 13:49:19 +02:00
SirLynix
68b3e31eec Utility/PixelFormat: use std::string_view to store name 2023-05-30 12:33:40 +02:00
SirLynix
dfe6b2ddcf Make use of the new EnumMap class 2023-05-30 12:32:37 +02:00
SirLynix
1d32af53c5 Renderer: Add mipmaps generation support 2023-05-14 18:55:41 +02:00
SirLynix
d717335bca VulkanRenderer: Fix unitybuild causing #define issue because of Windows.h 2023-04-12 14:13:34 +02:00
SirLynix
9b4d297c04 Update includes for new NazaraUtils version 2023-03-19 13:01:56 +01:00
SirLynix
d46299ff38 VulkanRenderer/VulkanSwapchain: Fix creation when surface size doesn't match expected swapchain size 2023-02-26 13:49:54 +01:00
SirLynix
c560e552dc VulkanRenderer/VulkanSwapchain: Don't assume VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR is supported 2023-02-26 13:49:04 +01:00
SirLynix
20ad93f1c9 VulkanRenderer: Add support for VK_EXT_debug_report
Some older drivers (Android) don't support VK_EXT_debug_utils
2023-02-26 13:48:25 +01:00
SirLynix
5833ce573d Graphics: Switch glyph atlases to R8 instead of A8
A8 can't be supported efficiently on API lacking texture swizzle support (DX, WebGL, WebGPU), so we swizzle in the shader instead
2023-02-22 19:11:41 +01:00
SirLynix
f98cbcd00a Copyright year update 2023-01-22 17:41:18 +01:00
SirLynix
18851c9185 Replace RenderWindow with swapchains 2023-01-22 12:37:58 +01:00
Lynix
cc1246dcac VulkanRenderer: Fix 32bits compilation 2023-01-02 22:11:00 +01:00
SirLynix
a8b6d9cb42 Renderer/RenderFrame: Use FunctionRef instead of std::function to avoid allocations 2023-01-01 19:48:51 +01:00
Jérôme Leclercq
dd421a6385 Replace float/UInt64 durations by a more precise Time class (#388)
Improve Clock class with atomic RestartIfOver method and allows to choose required precision
2022-12-29 21:31:46 +01:00
SirLynix
1de5f65536 xmake check-files -f 2022-12-29 12:21:39 +01:00
SirLynix
fe8715f1fb Renderer: Working compute implementation 2022-12-25 19:19:16 +01:00
SirLynix
4605eed0da Add compute demo (WIP) + fixes creation of compute pipelines 2022-12-25 19:19:16 +01:00
SirLynix
9578ba3ef5 Add initial support for compute pipelines 2022-12-25 19:19:16 +01:00
SirLynix
e4064997d8 Renderer: Split OpenGL and OpenGL ES in two RenderAPI enums 2022-12-25 16:11:28 +01:00
SirLynix
6731e07b54 VulkanRenderer: Fix 2DArray texture type 2022-12-08 18:17:13 +01:00
SirLynix
4ae3f51174 VulkanRenderer: Fix views and arrays support 2022-12-08 18:17:13 +01:00
SirLynix
08ea4c87a7 Improve texture view support 2022-12-08 18:17:13 +01:00
SirLynix
42f8cdb151 Add initial support for texture views 2022-12-08 18:17:13 +01:00
SirLynix
902dee6121 Renderer/TextureInfo: Separate layerCount from size 2022-12-08 18:17:13 +01:00
SirLynix
11e098f8b2 Fix warning 2022-12-08 18:17:13 +01:00
SirLynix
e990a320cc WIP 2022-12-08 18:17:13 +01:00
SirLynix
77642cf431 Renderer: Implement and use debug names 2022-12-02 22:46:43 +01:00
SirLynix
842e797cc4 Fix a bunch of warnings 2022-11-13 16:12:49 +01:00
Jérôme Leclercq
dc6ce8427c Refactor material system (#382) 2022-10-31 19:53:41 +01:00
SirLynix
9cd7976a91 Remove "MemoryManager" and very old code 2022-09-24 14:25:52 +02:00
SirLynix
6bf4ccaae1 Core/ParameterList: Rework Parameter getter using Result 2022-09-09 13:47:06 +02:00
SirLynix
c669c68533 Minor fixes 2022-08-17 20:13:00 +02:00
SirLynix
a108e6ce65 VulkanRenderer: Update headers and VMA 2022-08-10 00:24:13 +02:00
SirLynix
117f7c2a4b Renderer: Allow to enable or disable API validation layers using config 2022-08-10 00:04:46 +02:00
SirLynix
38e32025e9 Add a way to embed renderer backends code into NazaraRenderer 2022-08-07 20:19:04 +02:00
SirLynix
6882163693 Update for latest NZSL version 2022-07-16 14:17:04 +02:00
SirLynix
2e894336e5 VulkanRenderer: Fix minUniformBufferOffsetAlignment limit 2022-06-28 20:21:33 +02:00
SirLynix
093d9d344e Renderer: Add support for storage buffers 2022-06-17 20:15:16 +02:00
SirLynix
c7b6d83bbc Last nzsl version update 2022-06-07 20:18:16 +02:00