Commit Graph

67 Commits

Author SHA1 Message Date
SirLynix 9578ba3ef5 Add initial support for compute pipelines 2022-12-25 19:19:16 +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 75bbc5df09 Minor fixes 2022-12-06 09:07:18 +01:00
SirLynix f2c83df8ff OpenGLRenderer: Print GL call and parameters on failure 2022-12-06 07:53:32 +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 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 2b4075dc9b OpenGLRenderer: Fix incorrect warning on max storage buffer supported 2022-07-02 19:27:39 +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 b0ecb64f19 OpenGLRenderer: Fix loading of glSpecializeShader 2022-05-09 13:19:31 +02:00
Jérôme Leclercq 6bd9f1a9e4 Add unity build support 2022-03-15 12:44:21 +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 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 ed7ab31933 Apply copyright fix to all files 2021-10-26 14:31:35 +02:00
Jérôme Leclercq cb716e5da5 Fix OpenGL version check 2021-10-24 15:25:17 +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 7aafcfaae9 Minor stuff 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 1ee2122b3d OpenGLRenderer: Fix initial depth mode 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 9854ebe950 OpenGLRenderer: Disable push/pop group notifications 2021-07-09 13:59:06 +02:00
Jérôme Leclercq 9f410302d2 OpenGLRenderer/Context: Cleanup code 2021-07-09 12:36:24 +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 343b0a6fd7 OpenGLRenderer/Context: Remove GL_AMD_debug_output support
It turns out callbacks are not compatibles between GL_AMD_debug_output and GL_ARB_debug_output (and GL_KHR_debug)
2021-07-03 13:01:41 +02:00
Jérôme Leclercq 9f76c84309 OpenGLRenderer/Context: Improve source readability 2021-07-03 12:59:06 +02:00
Jérôme Leclercq b13c5c950a OpenGLRenderer: Implement face filling 2021-06-20 14:06:28 +02:00
Jérôme Leclercq 5bc3cd8d8c OpenGLRenderer: Add GL_EXT_texture_compression_s3tc check for DXT pixel formats 2021-06-03 17:15:12 +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 7fe60026be OpenGLRenderer: Minor fixes 2021-05-26 22:20:10 +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 990193ebb4 Minor fixes 2021-05-02 13:58:56 +02:00
Jérôme Leclercq f7442982a4 OpenGLRenderer: Implement debug region data 2021-02-20 19:10:32 +01:00
Jérôme Leclercq d243e7bcd2 OpenGLRenderer: Move error to string to Utils 2020-09-26 20:43:55 +02:00
Jérôme Leclercq 9291ef6299 Disable OpenGL overriding with MSVC / x86
Seems like a bug with MSVC when targetting 32bits targets
2020-09-26 11:50:37 +02:00
Jérôme Leclercq d98cddcfe0 Remove no longer used code 2020-09-04 14:19:11 +02:00
Jérôme Leclercq a8b9a8c56d Workaround MSVC bug 2020-09-04 14:18:57 +02:00
Jérôme Leclercq addcd52552 Try to get around MSVC bug 2020-09-03 15:47:43 +02:00
Jérôme Leclercq 58efffc51f Improve code a bit
Prevent converting back and forth the same function pointer
2020-09-03 13:58:45 +02:00
Jérôme Leclercq 0609a10c25 OpenGLRenderer: Get rid of std::function by using function indexes 2020-09-03 13:54:44 +02:00
Jérôme Leclercq 6848ff8b34 OpenGLRenderer: Add debug wrapper (which handle OpenGL errors) 2020-09-03 13:39:34 +02:00
Jérôme Leclercq df33262ab4 OpenGLRenderer: Fix context activation 2020-09-03 13:18:09 +02:00
Jérôme Leclercq 0313f2d0a6 Enable GL_DEBUG_OUTPUT 2020-08-09 18:43:44 +02:00