Commit Graph

442 Commits

Author SHA1 Message Date
SirLynix e5e3026005 Push current work 2022-08-25 12:59:01 +02:00
SirLynix 104f60f3e7 Add support for GPU skinning (WIP) 2022-08-25 12:59:01 +02:00
SirLynix f1549b934c Graphics: Add DebugDrawer support 2022-08-17 20:12:49 +02:00
SirLynix 4a5f866754 Renderer: Add DebugDrawer 2022-08-17 20:11:06 +02:00
SirLynix 38e32025e9 Add a way to embed renderer backends code into NazaraRenderer 2022-08-07 20:19:04 +02:00
SirLynix e51695274c Widgets: Fix ScrollAreaWidget 2022-08-02 08:13:17 +02:00
SirLynix 05c78da22a WIP 2022-08-02 08:13:17 +02:00
SirLynix d783418a63 Allow to disable example building 2022-07-27 23:02:24 +02:00
Lynix ad8b46db38 Rename Diffuse to BaseColor 2022-07-19 20:02:01 +02:00
Lynix 75015862dc Fix PBR example 2022-07-18 22:34:14 +02:00
SirLynix b2fad27618 Fix basic material and add demo 2022-07-18 22:04:44 +02:00
SirLynix 6882163693 Update for latest NZSL version 2022-07-16 14:17:04 +02:00
SirLynix a476e705f8 Fix WidgetDemo 2022-07-12 08:28:06 +02:00
SirLynix 31b39ce0e1 Restore original GraphicsTest demo
wrong test was commited in 1b678defae
2022-07-07 09:02:29 +02:00
SirLynix 1b678defae Add system graph (wip) 2022-07-02 19:45:50 +02:00
SirLynix f3c889c5d5 Examples: Fix crash/high CPU usage when minimized 2022-06-16 19:57:40 +02:00
SirLynix 6f18a02999 Add fullscreen vertex shader module 2022-06-16 19:26:57 +02:00
SirLynix 62ba4f172b Graphics/GraphicalMesh: Allow to update submeshes 2022-06-16 18:19:48 +02:00
SirLynix c7b6d83bbc Last nzsl version update 2022-06-07 20:18:16 +02:00
SirLynix ca23942d36 Update URL 2022-05-27 13:14:13 +02:00
SirLynix 5507b98f2f Remove assets from repository and download them using xmake 2022-05-27 08:34:36 +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 e7274b24e9 Core/Color: Switch formal from RGBA8 to RGBA32F 2022-04-23 16:08:15 +02:00
Lynix 3f53e4f86e Fix compilation 2022-04-19 18:32:17 +02:00
SirLynix c209552f81 Math/Matrix4: Rework "transform matrix" support 2022-04-19 18:32:16 +02:00
SirLynix 68d2dfcae6 Move FieldOffsets class to Shader module and remove Utility dependency 2022-04-04 19:22:18 +02:00
SirLynix 9d526741b9 Add proper support for IndexType and uint32 indices 2022-04-04 09:02:00 +02:00
Lynix 45f0825a6e Audio: Final fixes 2022-03-19 12:16:52 +01:00
Jérôme Leclercq 82641c6653 Audio: Add dummy device (in case OpenAL fails to load) and unifiate unit tests 2022-03-18 19:03:57 +01:00
Jérôme Leclercq 19f6bdf7e0 Add Physics2D components and systems (WIP) 2022-03-16 08:24:57 +01:00
Jérôme Leclercq 9b1583501b Cleanup PhysicsDemo example 2022-03-16 08:23:41 +01:00
Jérôme Leclercq e40e8eb204 Shader: Change module system (no longer based on path) 2022-03-14 18:30:55 +01:00
Jérôme Leclercq b595a5d4ec Examples/DeferredShading: Use modules 2022-03-14 18:30:55 +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 39a2992791 Shader: Minor module fixes 2022-03-14 18:30:55 +01:00
Jérôme Leclercq be9bdc4705 Modules are workings \o/ 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 99e07e6e1e Shader: Add module statement 2022-03-14 18:30:55 +01:00
Jérôme Leclercq 8a097afb1b Graphics/FramePass: Replace render rect parameter of CommandCallback by FramePassEnvironment 2022-02-27 18:37:05 +01:00
Jérôme Leclercq 28531f5118 Minor changes 2022-02-25 19:36:54 +01:00
Jérôme Leclercq 20a86312ff Graphics/FramePipeline: Replace maps with memory pools and indices 2022-02-21 20:47:11 +01:00
Jérôme Leclercq a1b6f51398 Minor fixes 2022-02-21 20:46:37 +01:00
Jérôme Leclercq e504c4a982 Minor fixes 2022-02-18 19:37:37 +01:00
Jérôme Leclercq 5ce8120a0c Graphics: Move FramePipeline passes to separate classes 2022-02-16 18:29:27 +01:00
Lynix ac89667b75 Restore Tut00, Tut01 and Tut02 2022-02-14 14:47:10 +01:00
Jérôme Leclercq f466a7494b Update for EnTT 3.9 2022-02-08 20:05:14 +01:00
Jérôme Leclercq de7fee348a Graphics/ForwardFramePipeline: Frustum cull lights 2022-02-02 19:39:46 +01:00
Jérôme Leclercq 25c446e10f GraphicsTest: Add light 2022-02-02 13:47:39 +01:00
Jérôme Leclercq 8a3a8547dc Add light support (WIP) 2022-02-02 12:55:39 +01:00
Jérôme Leclercq e6951d54a5 Shader: Switch type<subtype> to type[subtype] 2022-01-26 19:24:46 +01:00
Jérôme Leclercq 249aebac05 Merge branch 'master' into phong-lighting 2022-01-23 13:36:48 +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
Jérôme Leclercq 754a0016c7 Fix Vulkan performance warnings 2022-01-21 23:31:01 +01:00
Jérôme Leclercq b442af513c Fix compilation 2022-01-21 21:33:43 +01:00
Jérôme Leclercq 7976ea27b9 Add initial support for normal mapping and other light types 2022-01-18 06:01:15 +01:00
Jérôme Leclercq b0a3941f4e Add Phong lighting (WIP) 2022-01-11 19:47:29 +01:00
Jérôme Leclercq b43ed890d0 Fix scissor bugs (fixes Deferred Shading flare on Vulkan and widget scissor on OpenGL) 2021-12-25 20:25:39 +01:00
Jérôme Leclercq 0aff946665 Examples/DeferredShading: Add flare sprite 2021-12-23 17:40:03 +01:00
Jérôme Leclercq e2882f6595 Shader: Rename Parse function to ParseFromFile
to avoid ambiguous calls when passing const char*
2021-12-23 17:18:30 +01:00
Jérôme Leclercq a6b8caa5ba Examples/DeferredShading: Add god rays (WIP) 2021-12-16 23:12:09 +01:00
Jérôme Leclercq 90ab0e9438 Graphics/FramePass: Add SetReadInput method 2021-12-13 23:44:34 +01:00
Jérôme Leclercq 31c71e542e Examples/DeferredShading: Improve bloom quality 2021-12-12 23:04:05 +01:00
Jérôme Leclercq f64e16f7d8 Demo/DeferredShading: Add tone-mapping (without automatic exposure for now) 2021-12-05 17:03:08 +01:00
Jérôme Leclercq 3b1bf480e6 Fix some warnings 2021-12-03 22:18:03 +01:00
Jérôme Leclercq 653c9e0028 Graphics/GraphicsComponent: Make renderMask a mandatory parameter 2021-12-01 18:58:25 +01:00
Jérôme Leclercq 45e5baf194 Graphics: Rename MaterialPassFlag::Transparent by MaterialPassFlag::SortByDistance 2021-12-01 10:41:15 +01:00
Jérôme Leclercq 0c3bcf6c86 Graphics/Camera: Add render order property 2021-11-28 20:15:22 +01:00
Jérôme Leclercq 41e3e2bbf8 examples/PhysicsDemo: Add button widget 2021-11-21 19:08:20 +01:00
Jérôme Leclercq 237602a33f Widgets/Canvas: Add render mask parameter 2021-11-14 19:54:47 +01:00
Jérôme Leclercq ecd1e43890 Graphics: Add support for multi-viewer rendering (a bit hacky) 2021-11-13 20:08:03 +01:00
Jérôme Leclercq b2aedd394c Minor fixes 2021-10-29 16:50:50 +02:00
Jérôme Leclercq 9e1df33440 Graphics: Add RenderMask (WIP) 2021-10-29 16:50:38 +02:00
Jérôme Leclercq 66bbf63e87 Core/Algorithm: Add SafeCast 2021-10-26 20:26:13 +02:00
Jérôme Leclercq a18415216b Fix DeferredShading demo 2021-10-26 20:26:13 +02:00
Jérôme Leclercq 58485cfa79 Rework shader bindings (WIP) 2021-10-26 20:26:13 +02:00
Jérôme Leclercq a66f6faed1 Add widgets (WIP) 2021-10-04 09:25:45 +02:00
Jérôme Leclercq 3ad05614f9 Graphics: Use debug regions inside render pass to fix an issue with OpenGL context switch 2021-09-23 17:49:15 +02:00
Jérôme Leclercq 250044b47a Update main.cpp 2021-09-13 23:35:56 +02:00
Jérôme Leclercq 7a78e7be8c Fix compilation 2021-09-06 09:45:30 +02:00
Jérôme Leclercq 02a12d9328 Handle shader options of any type 2021-09-03 19:33:41 +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 8546631f62 Add frustum culling (WIP) 2021-08-19 23:26:34 +02:00
Jérôme Leclercq 8db8533300 Fixes a lot of warnings and move math enums to enum classes 2021-08-19 20:27:20 +02:00
Jérôme Leclercq a2a0e6bd54 Graphics: Add DepthMaterial 2021-08-19 18:47:11 +02:00
Jérôme Leclercq e98e46164c PhysicsDemo: Add support of alpha testing to depth-prepass 2021-08-19 18:47:11 +02:00
Jérôme Leclercq bb5aea5244 Fix graphics examples 2021-08-19 18:47:11 +02:00
Jérôme Leclercq d647fdc59b Update main.cpp 2021-08-19 18:47:11 +02:00
Jérôme Leclercq a380645c19 Fix DeferredShading & GraphicsTest demo 2021-08-19 18:47:11 +02:00
Jérôme Leclercq cdad013c60 Update some demo code 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 5669b5bc60 Graphics: Rename Material to MaterialPass 2021-08-19 18:47:11 +02:00
Lynix 2ee3957822 Renderer: Add NAZARA_REQUEST_DEDICATED_GPU macro 2021-08-04 15:58:24 +02:00
Jérôme Leclercq 46dfa503eb Update PhysicsDemo example 2021-07-13 12:04:51 +02:00
Jérôme Leclercq 0777badbe0 Examples/PhysicsDemo: Remove useless code 2021-07-11 11:18:01 +02:00
Jérôme Leclercq 8458301a64 Add support for depth clamping 2021-07-09 00:22:08 +02:00
Jérôme Leclercq 4728d5f2a8 Fix DeferredShading example 2021-07-08 22:47:45 +02:00
Jérôme Leclercq d3e0d8a39f Shader: Replace select_opt by const_select 2021-07-08 10:53:11 +02:00
Jérôme Leclercq 309fd547e1 Fix compilation errors and warnings 2021-07-07 22:38:24 +02:00
Jérôme Leclercq ea899e4361 Examples/RenderTest: fix lighting dir 2021-07-07 22:38:24 +02:00
Jérôme Leclercq 4ac5fe7cba Graphics: Add RenderSystem and frame pipeline 2021-07-06 11:04:22 +02:00
Jérôme Leclercq f14db3f5e9 Renderer: Expose RenderTarget and framebuffers indices 2021-07-03 13:52:29 +02:00