Commit Graph

134 Commits

Author SHA1 Message Date
Jérôme Leclercq
8eb1eb71ba Merge branch 'nazara-next' of https://github.com/DigitalPulseSoftware/NazaraEngine into nazara-next 2021-06-20 14:13:21 +02:00
Jérôme Leclercq
233df1f0d4 VulkanRenderer: Fix fillModeNonSolid feature handling 2021-06-20 14:09:15 +02:00
Jérôme Leclercq
b13c5c950a OpenGLRenderer: Implement face filling 2021-06-20 14:06:28 +02:00
Jérôme Leclercq
f22b501e25 Add initial support for shader binding sets (WIP) 2021-06-16 16:50:00 +02:00
Jérôme Leclercq
815a7b0c62 Replace const ShaderAst::StatementPtr& by ShaderAst::Statement& in input 2021-06-16 16:50:00 +02:00
Jérôme Leclercq
86097b331b Renderer: Add support for device-enabled features (anisotropic filtering) 2021-06-05 19:51:48 +02:00
Jérôme Leclercq
52490e0cf5 VulkanRenderer: Wait for device idle before recreating the swapchain 2021-06-04 19:35:59 +02:00
Jérôme Leclercq
4b3b595a99 Minor fixes 2021-06-04 18:02:28 +02:00
Jérôme Leclercq
6161bbec76 Renderer: Handle more depthstencil formats (as Depth24Stencil8 may not be supported everywhere) 2021-06-02 20:16:43 +02:00
Jérôme Leclercq
465837ff12 Renderer: Add support for cubemaps 2021-06-01 12:30:37 +02:00
Jérôme Leclercq
c2b61b6732 A lot of fixes 2021-05-28 22:58:40 +02:00
Jérôme Leclercq
ff505e9019 Renderer: Implement and fix front face (winding order) between Vulkan / OpenGL 2021-05-28 22:58:14 +02:00
Jérôme Leclercq
299585a7de Renderer: Implement renderpass attachments clear for OpenGL 2021-05-28 22:55:56 +02:00
Jérôme Leclercq
874fb3542e Convert all remaining enums to enum classes (!) 2021-05-25 10:40:07 +02:00
Jérôme Leclercq
cce32a64d4 Upgrade Utility 2021-05-25 10:40:07 +02:00
Jérôme Leclercq
f6fd996bf1 Shader: Add support for custom functions calls (and better handle intrinsics) 2021-05-22 13:37:54 +02:00
Jérôme Leclercq
49a2cda0a1 VulkanRenderer: Fix descriptor pool release 2021-05-19 20:32:02 +02:00
Lynix
7bf380ad48 VulkanRenderer: Fix VkValidationFeatureEnableEXT usage 2021-05-16 23:13:40 +02:00
Lynix
13feaf4aab Renderer: RenderWindow now requires a RenderDevice 2021-05-16 23:13:00 +02:00
Jérôme Leclercq
51c099b3ce Renderer: Allow UploadPool to handle very big (>= 2MB) blocks 2021-05-15 15:27:17 +02:00
Jérôme Leclercq
f280cff0a2 Renderer: Add release queue to fix deletion while use 2021-05-14 02:04:47 +02:00
Jérôme Leclercq
24f7b75654 Renderer: Add support for PixelFormat_RGBA32F 2021-05-14 01:57:32 +02:00
Jérôme Leclercq
bbfe06c443 Renderer: Fix UploadPool allocations references 2021-05-14 01:56:32 +02:00
Jérôme Leclercq
aeac3282e4 Renderer: Add RenderDevice::GetDeviceInfo() 2021-05-14 01:55:16 +02:00
Jérôme Leclercq
adbf1e1da0 Renderer: Add proper support for blending 2021-05-14 01:50:46 +02:00
Jérôme Leclercq
61dbd91346 Lot of small fixes/improvements 2021-05-14 01:48:47 +02:00
Jérôme Leclercq
ee690072f8 VulkanRenderer: Enable synchronization validation in debug 2021-05-05 12:06:30 +02:00
Jérôme Leclercq
bfb93bc925 VulkanRenderer: Fix VkRenderWindow subpass dependencies 2021-05-05 12:02:00 +02:00
Jérôme Leclercq
10aa7231b6 Renderer: Fix MRT support 2021-05-05 12:01:20 +02:00
Jérôme Leclercq
990193ebb4 Minor fixes 2021-05-02 13:58:56 +02:00
Jérôme Leclercq
55c2dd8485 Add FrameGraph (WIP) 2021-05-02 13:58:35 +02:00
Jérôme Leclercq
377129586b Renderer: Rename some TextureLayout entry 2021-05-02 13:57:24 +02:00
Jérôme Leclercq
87ce2edc6e Shader: Add initial support for options (WIP) 2021-04-20 18:18:27 +02:00
Jérôme Leclercq
d335d44d6a Shader: Cleanup and rename AST files 2021-04-20 18:18:27 +02:00
Jérôme Leclercq
854bb16320 VulkanRenderer: Fix OpEntryPoint parsing 2021-04-20 18:18:27 +02:00
Jérôme Leclercq
feffcfa6e5 VulkanRenderer: Fix handling of shader modules 2021-04-20 18:18:27 +02:00
Jérôme Leclercq
e4aabf309e Renderer: Replace ShaderStage by ShaderModule (a module can handle multiple stages) 2021-04-20 18:18:27 +02:00
Jérôme Leclercq
57adfa09de VulkanRenderer: Fix Depth24Stencil8 format 2021-02-20 19:25:38 +01:00
Jérôme Leclercq
b291f8a21c Renderer: Implement TextureUsage 2021-02-20 19:25:25 +01:00
Jérôme Leclercq
fb3468854f Renderer: Implement Framebuffers 2021-02-20 19:22:08 +01:00
Jérôme Leclercq
ac3db8a8bf Utility/PixelFormat: Add preliminary support for SRGB formats (WIP) 2021-02-20 18:01:03 +01:00
Jérôme Leclercq
080fd9c7eb Minor fixes 2021-02-15 18:17:30 +01:00
Jérôme Leclercq
d058a127e1 Renderer/RenderPass: Implement RenderPass correctly 2021-02-15 18:14:47 +01:00
Jérôme Leclercq
5eedd3c0bc Renderers: Fix UploadPool 2021-01-28 15:59:18 +01:00
Jérôme Leclercq
b9151d8a7a Graphics: Improve TextureSampler handling 2021-01-27 18:50:49 +01:00
Jérôme Leclercq
a6ff64106e Minor stuff 2021-01-22 23:23:28 +01:00
Jérôme Leclercq
c76d6505b0 Renderer/ShaderBinder: Make Update take a pointer and size 2021-01-22 23:15:31 +01:00
Jérôme Leclercq
96d7b9424b Renderer: Handle null textures in shader binding 2021-01-14 22:03:01 +01:00
Jérôme Leclercq
f327932738 Commit current work
Reworked conditions, added uber-shaders, comparison nodes, fixed Discard
2021-01-02 21:15:59 +01:00
Jérôme Leclercq
b62130dab9 VulkanRenderer: Fix physical device bullshit
Keep a single list instead of many
2020-10-30 23:06:56 +01:00