Commit Graph

684 Commits

Author SHA1 Message Date
SirLynix
a741672a51 Allow error message to be formatted 2023-08-15 01:10:01 +02:00
SirLynix
816d9d1174 Allow to setup/override module configuration from commandline 2023-07-30 12:44:43 +02:00
SirLynix
e3da81dff4 ComputeTest: Fix Vulkan error 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
2886a2e0c0 Rename EnumMap to EnumArray after nazarautils update 2023-05-30 13:49:19 +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
44aec8d5a5 Allow to load image and textures cubemap/arrays from file using the AppFilesystemComponent
Renames LoadCubemap and LoadArray to Load with additional parameters and allows AppFilesystemComponent to pass additional parameters to them
2023-04-04 08:24:52 +02:00
SirLynix
9b4d297c04 Update includes for new NazaraUtils version 2023-03-19 13:01:56 +01:00
SirLynix
6df919eb70 Renderer/WindowSwapchain: Don't create swapchain on minimized window
This is mainly to prepare for Android "windows" where the window is considered minimized when app is in the background (and thus has no ANativeWindow to render to)
2023-02-26 13:45:18 +01:00
SirLynix
3e41400a63 Renderer/Renderer: Cleanup a bit 2023-02-26 13:43:55 +01:00
Jérôme Leclercq
20f70533c0 Fix wasm ci (#391)
* Update wasm-build.yml

* Set embed_rendererbackends with wasm

* wasm fixes

* Fix CI

* Update wasm-build.yml

* More wasm fixes

* Final fixes
2023-02-05 15:03:48 +01:00
REMqb
f172330aaf ~ WIP port emscripen (WebGL) 2023-02-02 20:34:25 +01:00
SirLynix
511a45cf6a Renderer: Fix backend loading on Linux 2023-01-29 15:00:14 +01:00
SirLynix
4a91f3d470 Renderer: Make WindowSwapchain a RenderTarget
To make it easier to handle window re-creation
2023-01-29 10:38:35 +01:00
SirLynix
d27ca55943 Core/AppFilesystemComponent: Add support for default resource parameters 2023-01-28 11:27:49 +01:00
SirLynix
f98cbcd00a Copyright year update 2023-01-22 17:41:18 +01:00
SirLynix
d3c05c9ade Update globalheaders and fix includes/header guards 2023-01-22 12:37:58 +01:00
SirLynix
18851c9185 Replace RenderWindow with swapchains 2023-01-22 12:37:58 +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
9a553e5e9d Core: Make Color constexpr 2022-12-29 12:13:00 +01:00
SirLynix
fe8715f1fb Renderer: Working compute implementation 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
56acbb2694 Renderer: Improve texture view support (and support emulation for OGL) 2022-12-08 18:17:13 +01:00
SirLynix
08ea4c87a7 Improve texture view support 2022-12-08 18:17:13 +01:00
SirLynix
6ef4c14772 Renderer: Change binding members order 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
4e631da7dc Renderer/Texture: Preserve filepath when loading image 2022-11-05 00:12:01 +01:00
SirLynix
9cd7976a91 Remove "MemoryManager" and very old code 2022-09-24 14:25:52 +02:00
SirLynix
133caac5b5 Minor fixes 2022-08-25 12:59:01 +02:00
SirLynix
4a5f866754 Renderer: Add DebugDrawer 2022-08-17 20:11:06 +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
093d9d344e Renderer: Add support for storage buffers 2022-06-17 20:15:16 +02:00
Jérôme Leclercq
03e2801dbe Split engine to packages NazaraUtils and NZSL (#375)
* Move code to NazaraUtils and NZSL packages

* Reorder includes

* Tests: Remove glslang and spirv-tools deps

* Tests: Remove glslang init

* Remove NazaraUtils tests and fix Vector4Test

* Fix Linux compilation

* Update msys2-build.yml

* Fix assimp package

* Update xmake.lua

* Update xmake.lua

* Fix shader compilation on MinGW

* Final fixes

* The final fix 2: the fix strikes back!

* Disable cache on CI

* The return of the fix™️
2022-05-25 19:36:10 +02:00
SirLynix
e6c49a4ee4 Renderer: Don't ignore non-existent library files
as they could be in PATH
2022-03-28 09:01:25 +02:00
Jérôme Leclercq
29786765c6 Big buffer refactor
Replaced RenderBuffer class, replaced AbstractBuffer by Buffer
2022-01-23 00:05:08 +01:00
Lynix
1406c714ac Renderer/Texture: Handle image loading error 2022-01-20 16:46:50 +01:00
SirLynix
89c7bbf197 Update copyright date 2022-01-01 15:30:09 +01:00
Jérôme Leclercq
b2aedd394c Minor fixes 2021-10-29 16:50:50 +02:00
Jérôme Leclercq
ed7ab31933 Apply copyright fix to all files 2021-10-26 14:31:35 +02:00
Lynix
9740db8fe2 Improve MinGW support 2021-10-16 17:45:43 +02:00
Jérôme Leclercq
120d8f5427 Renderer/RenderWindow: Remove Display and GetImpl methods 2021-08-27 15:39:23 +02:00
Jérôme Leclercq
7e4f624ca7 Renderer: Add RenderPassCache 2021-08-19 18:47:11 +02:00
Jérôme Leclercq
488ccf9648 Renderer/RenderTarget: Add OnRenderTargetRelease signal 2021-07-10 14:25:49 +02:00
Jérôme Leclercq
552dfbc01e Renderer: Add pipeline and texture sampler info validation 2021-07-09 12:34:38 +02:00
Jérôme Leclercq
f14db3f5e9 Renderer: Expose RenderTarget and framebuffers indices 2021-07-03 13:52:29 +02:00