Commit Graph

104 Commits

Author SHA1 Message Date
SirLynix 507cd27eaf Start working on documentation generator 2023-03-21 13:21:00 +01:00
SirLynix 9b4d297c04 Update includes for new NazaraUtils version 2023-03-19 13:01:56 +01:00
SirLynix 99c8027fd0 Remove .inl inclusion of their .hpp files
It has no real purpose and is breaking Clang parsing
2023-03-10 13:33:10 +01:00
SirLynix 2629d2052e xmake check-files -f 2023-03-03 13:16:13 +01:00
SirLynix 421e684344 OpenGLRenderer: Fix FboFramebuffer making context switches
When a window was created and rendered onto, FBO rendering was made on the device reference context which required a context switch.

This has been fixed with OpenGLFboFramebuffer managing a per-context framebuffer and creating one when needed
2023-02-26 13:43:21 +01:00
SirLynix 5a57aca66a Last changes 2023-02-02 20:34:25 +01:00
SirLynix 5b3703347f OpenGLRenderer: Use a single context with WebGL 2023-02-02 20:34:25 +01:00
SirLynix ea5c5240fc Improve emscripten support 2023-02-02 20:34:25 +01:00
REMqb 7cb90782de ~ fix post rebase & dirty fix avoid deleting shaders before linking them 2023-02-02 20:34:25 +01:00
REMqb f172330aaf ~ WIP port emscripen (WebGL) 2023-02-02 20:34:25 +01:00
SirLynix f98cbcd00a Copyright year update 2023-01-22 17:41:18 +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 f8238a6e6c Graphics: Implement point-light shadow-mapping 2022-12-08 18:17:13 +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 42f8cdb151 Add initial support for texture views 2022-12-08 18:17:13 +01:00
SirLynix e990a320cc WIP 2022-12-08 18:17:13 +01:00
SirLynix f2c83df8ff OpenGLRenderer: Print GL call and parameters on failure 2022-12-06 07:53:32 +01:00
SirLynix ccf77ac459 OpenGLRenderer: Setup draw buffers only once 2022-12-06 07:49:41 +01:00
Jérôme Leclercq dc6ce8427c
Refactor material system (#382) 2022-10-31 19:53:41 +01:00
SirLynix 131faa4fbd OpenGLRenderer: Take advantage of glClipControl if available 2022-09-06 13:01:44 +02:00
SirLynix 099528758c OpenGLRenderer: Fix explicit texture/block binding (fixes GLSL ES 3.0 support) 2022-08-12 23:01:58 +02:00
SirLynix 117f7c2a4b Renderer: Allow to enable or disable API validation layers using config 2022-08-10 00:04:46 +02:00
SirLynix a61ebb7806 OpenGLRenderer: enable GL_TEXTURE_CUBE_MAP_SEAMLESS on OpenGL
to match other API behavior
2022-07-02 19:28:20 +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
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 b0ecb64f19 OpenGLRenderer: Fix loading of glSpecializeShader 2022-05-09 13:19:31 +02:00
Jérôme Leclercq a6dce6861d macOS fixes 2022-03-20 10:02:31 +01:00
Jérôme Leclercq ebd1318512 OpenGLRenderer: Add shader source on compilation error 2022-02-18 13:05:19 +01:00
SirLynix 89c7bbf197 Update copyright date 2022-01-01 15:30:09 +01:00
Jérôme Leclercq 17df8fafa4 Renderer/CommandBuffer: Add support for texture blit/copy 2021-12-03 22:15:34 +01:00
Jérôme Leclercq a33a118ed3 Minor fixes 2021-11-24 22:29:09 +01:00
Jérôme Leclercq a643d0fc3a OpenGLRenderer: Improve error handling (fixes Windows/x86 compilation)
Template specialization was failing because OpenGL function type have __stdcall convention on Windows/32bits
2021-11-02 09:43:30 +01:00
Jérôme Leclercq 9946c17a23 OpenGLRenderer: Choose between OpenGL/OpenGL ES at loading 2021-11-02 09:13:12 +01:00
Jérôme Leclercq 078060cfc9 Fix some issues found with WSLg 2021-10-29 14:38:56 +02:00
Jérôme Leclercq a02b1952c0 Apply header order fix 2021-10-28 09:53:56 +02:00
Jérôme Leclercq 66206868cd XMake: Add automatic header order fix 2021-10-28 09:53:43 +02:00
Jérôme Leclercq 93ec196dc4 Apply header guard check 2021-10-26 15:52:46 +02:00
Jérôme Leclercq ed7ab31933 Apply copyright fix to all files 2021-10-26 14:31:35 +02:00
Jérôme Leclercq 6162a805e4 OpenGLRenderer: Fix buffer destruction not removing VAOs referencing it 2021-10-19 14:48:53 +02:00
Jérôme Leclercq 7ab4d91900 OpenGLRenderer: Implement texture blit/copy if glCopyImageSubData is not supported 2021-09-21 17:39:24 +02:00
Jérôme Leclercq 4933a389a2 OpenGLRenderer: Improve/fix Framebuffer handling 2021-09-21 17:37:03 +02:00
Jérôme Leclercq 78358337f3 OpenGLRenderer: Improve OpenGL wrapper 2021-09-21 16:34:34 +02:00
Jérôme Leclercq db85372778 Renderer/Texture: Add Copy method (wip) 2021-09-13 23:34:51 +02:00
Jérôme Leclercq 681cf31b66 OpenGLRenderer: Disable notification messages 2021-07-09 12:36:00 +02:00
Jérôme Leclercq 8458301a64 Add support for depth clamping 2021-07-09 00:22:08 +02:00
Jérôme Leclercq 3a3279246f OpenGLRenderer: Enable GL_ARB_gl_spirv and GL_ARB_texture_filter_anisotropic with OpenGL 4.6 2021-07-09 00:01:33 +02:00
Jérôme Leclercq 309fd547e1 Fix compilation errors and warnings 2021-07-07 22:38:24 +02:00