Commit Graph

244 Commits

Author SHA1 Message Date
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
38e32025e9 Add a way to embed renderer backends code into NazaraRenderer 2022-08-07 20:19:04 +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
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
SirLynix
2389a2fe53 Platform/WindowManager: Rename to WindowBackend 2022-04-23 16:26:59 +02:00
SirLynix
e7274b24e9 Core/Color: Switch formal from RGBA8 to RGBA32F 2022-04-23 16:08:15 +02:00
SirLynix
6e47553b16 OpenGLRenderer: Fix integer vertex attribute handling 2022-04-19 18:32:16 +02:00
SirLynix
9d526741b9 Add proper support for IndexType and uint32 indices 2022-04-04 09:02:00 +02:00
SirLynix
66ff6cfa81 Minor fixes 2022-04-04 08:17:03 +02:00
Jérôme Leclercq
6bd9f1a9e4 Add unity build support 2022-03-15 12:44:21 +01:00
Jérôme Leclercq
db0c1e6e8c Shader: Add module resolver + use modules for engine shaders 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
53728200ac Shader: Add module ID (UUID) 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
43ac86e85c Shader/Modules: proof of concept 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
a2f4f3c802 Shader: Many fixes 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
99e07e6e1e Shader: Add module statement 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
ebd1318512 OpenGLRenderer: Add shader source on compilation error 2022-02-18 13:05:19 +01:00
Jérôme Leclercq
29786765c6 Big buffer refactor
Replaced RenderBuffer class, replaced AbstractBuffer by Buffer
2022-01-23 00:05:08 +01:00
SirLynix
89c7bbf197 Update copyright date 2022-01-01 15:30:09 +01:00
Jérôme Leclercq
a8fefeb833 Some fixes 2021-12-16 23:11:48 +01:00
Jérôme Leclercq
17df8fafa4 Renderer/CommandBuffer: Add support for texture blit/copy 2021-12-03 22:15:34 +01:00
Lynix
57d39f7eeb Shader/GlslWriter: Rename scaleZPosition to remapZPosition 2021-11-21 16:15:56 +01:00
Jérôme Leclercq
c85263c9e7 Shader/GlslWriter: Add depth fix (from [0;1] to [-1;1] 2021-11-14 13:00:15 +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
Lynix
90c738023a OpenGLRenderer: Try to load OpenGL on desktop instead of OpenGL ES 2021-10-30 00:51:17 +02:00
Jérôme Leclercq
078060cfc9 Fix some issues found with WSLg 2021-10-29 14:38:56 +02:00
Jérôme Leclercq
32c204e95f Minor fixes 2021-10-29 13:29:49 +02:00
Jérôme Leclercq
a3d9aaf1fb Merge branch 'master' into automatic-file-fix 2021-10-28 09:57:59 +02:00
Jérôme Leclercq
a02b1952c0 Apply header order fix 2021-10-28 09:53:56 +02:00
Jérôme Leclercq
6bab824e4f Graphics: Use default white texture if material has empty texture slot 2021-10-26 20:26:13 +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
cb716e5da5 Fix OpenGL version check 2021-10-24 15:25:17 +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
68708c54f7 Minor stuff 2021-10-04 09:24:42 +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
879b2f7aa6 Renderer/Texture: Implement Update of a region + inherit AbstractImage 2021-09-07 18:42:53 +02:00
Jérôme Leclercq
b6745b2906 Renderer: Fix A8, L8 and LA8 support for both OpenGL and Vulkan 2021-09-07 17:39:12 +02:00
Jérôme Leclercq
abdcd63058 Graphics: Add support for draw call data (texture overlay) 2021-09-05 18:26:12 +02:00
Jérôme Leclercq
d704743712 OpenGLRenderer/UploadPool: Fix Allocate with size > maxBlockSize 2021-09-05 15:47:26 +02:00
Jérôme Leclercq
732bb89a86 Graphics/UberShader: Add config callback 2021-09-05 15:46:59 +02:00
Jérôme Leclercq
b6c3988bbe Renderer: Implement firstIndex on DrawIndexed command for OpenGL 2021-09-05 15:46:00 +02:00