SirLynix
830eee78a8
Math: Rework Box and Rect classes
2022-12-18 14:57:14 +01:00
SirLynix
d4422c4102
Graphics: Add origin to all sprite-based renderables (and made it a factor)
2022-12-17 14:48:50 +01:00
Jérôme Leclercq
0537be3201
Graphics/Sprite: Fix SetTextureRect
2022-12-14 09:53:23 +01:00
SirLynix
f8238a6e6c
Graphics: Implement point-light shadow-mapping
2022-12-08 18:17:13 +01:00
SirLynix
39f206d60e
Fix rebase error
2022-12-08 18:17:13 +01:00
SirLynix
5a57976b4b
Graphics/FrameGraph: Add support for cubemap and slice rendering
2022-12-08 18:17:13 +01:00
SirLynix
1768f20365
Graphics: Move shadow-mapping related code to LightShadow classes
2022-12-08 18:17:13 +01:00
SirLynix
ec3bc45544
Graphics/LightComponent: Replace AttachLight with AddLight
2022-12-08 18:17:13 +01:00
SirLynix
d7eab778fb
Graphics/FrameGraph: Add FramePassAttachmentSize enum instead of boolean
2022-12-08 18:17:13 +01:00
SirLynix
f580ba523d
Graphics: Send shadow map res to shader
2022-12-08 18:17:13 +01:00
SirLynix
3623f4ccc4
Add support for moving shadow-casting lights
2022-12-08 18:17:13 +01:00
SirLynix
e990a320cc
WIP
2022-12-08 18:17:13 +01:00
SirLynix
4a10c1f8fe
Add shadow mapping (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
Lynix
02387b8fe3
Graphics: Add Tilemap
2022-11-25 19:28:22 +01:00
SirLynix
85b7e06ae8
Fix some additional warnings
2022-11-19 13:44:33 +01:00
SirLynix
5ca2cf9320
Fix a bunch of warnings
2022-11-19 11:02:16 +01:00
SirLynix
842e797cc4
Fix a bunch of warnings
2022-11-13 16:12:49 +01:00
SirLynix
640d877761
Forgot this file
2022-11-07 02:16:47 +01:00
SirLynix
ad1f3bc321
Graphics/Graphics: Add preferred depth format
2022-11-06 23:45:37 +01:00
SirLynix
fe0d70d9e1
Graphics/MaterialInstance: Add LoadFrom*
2022-11-05 00:28:33 +01:00
SirLynix
1205155466
Graphics/Material: Rename CreateInstance to Instantiate
2022-11-05 00:14:16 +01:00
Jérôme Leclercq
dc6ce8427c
Refactor material system ( #382 )
2022-10-31 19:53:41 +01:00
SirLynix
9cd7976a91
Remove "MemoryManager" and very old code
2022-09-24 14:25:52 +02:00
SirLynix
99c9df5731
Graphics: Add default materials
2022-09-08 08:57:11 +02:00
SirLynix
fbdc1faf8c
Graphics: Add TextureLoader
2022-09-07 13:31:21 +02:00
SirLynix
25f44a624a
Fix compilation
2022-08-30 19:45:05 +02:00
SirLynix
04d2f4a6c2
Graphics/MaterialPipeline: Rework GetRenderPipeline
...
Decrease the need for memory allocations in most cases (especially for sprites)
2022-08-30 19:29:23 +02:00
SirLynix
017a6c7af3
Graphics: Use memory pools for render elements
2022-08-30 19:27:52 +02:00
SirLynix
50ed8b4028
Add initial support for skeletal entities / components
2022-08-27 03:07:48 +02:00
SirLynix
7ada266917
Graphics: Add PredefinedSkeletalData
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
507a4f16be
Fix compilation
2022-08-17 20:22:49 +02:00
SirLynix
c669c68533
Minor fixes
2022-08-17 20:13:00 +02:00
SirLynix
f1549b934c
Graphics: Add DebugDrawer support
2022-08-17 20:12:49 +02:00
Lynix
ad8b46db38
Rename Diffuse to BaseColor
2022-07-19 20:02:01 +02:00
SirLynix
ccd7885213
Fix compilation
2022-07-18 22:04:44 +02:00
SirLynix
3e21b4bea6
Add PBR rendering (WIP)
2022-07-18 22:04:44 +02:00
SirLynix
96599d1116
Graphics: Add LinearSlicedSprite class
2022-07-12 08:45:02 +02:00
SirLynix
6203d5f0d1
Graphics/SlicedSprite: Fix GetTopLeftCorner linking
2022-07-12 08:44:43 +02:00
SirLynix
1b678defae
Add system graph (wip)
2022-07-02 19:45:50 +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
8e8bee7037
Temp fix for NZSL update
2022-06-15 20:26:14 +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
b6ab3ba1b3
Graphics: Add light type
2022-05-12 23:09:40 +02:00
SirLynix
c209552f81
Math/Matrix4: Rework "transform matrix" support
2022-04-19 18:32:16 +02:00
SirLynix
f9d4451b4a
OCD fix
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
f14b10baf4
Graphics/ViewerInstance: fix typo
2022-03-31 13:35:08 +02:00
SirLynix
8146ec251a
Shader: Add support for partial sanitization
2022-03-25 12:54:51 +01:00
Jérôme Leclercq
615509d1ba
Add support for shader hotreloading
2022-03-17 21:36:36 +01:00
Jérôme Leclercq
0e92ef823d
Graphics: Use module name to retrieve material shaders
2022-03-15 13:14:43 +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
db0c1e6e8c
Shader: Add module resolver + use modules for engine shaders
2022-03-14 18:30:55 +01:00
Jérôme Leclercq
a7acf32886
Shader: Replace indices-based option keys by CRC32
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
fe16584c8c
Minor fixes
2022-02-23 23:48:20 +01:00
Jérôme Leclercq
0dd8c21543
Graphics/ForwardFramePipeline: Fix scissor update
2022-02-22 13:31:22 +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
cc0fc53bd3
Graphics: Move scissor box from InstancedRenderable to GraphicsComponent
2022-02-21 20:44:54 +01:00
Jérôme Leclercq
402e16bd2b
Shader: Handle type as expressions
2022-02-17 13:23:56 +01:00
Jérôme Leclercq
5ce8120a0c
Graphics: Move FramePipeline passes to separate classes
2022-02-16 18:29:27 +01:00
Jérôme Leclercq
f466a7494b
Update for EnTT 3.9
2022-02-08 20:05:14 +01:00
Jérôme Leclercq
6457854e03
Minor fixes
2022-02-04 13:54:26 +01:00
Jérôme Leclercq
de7fee348a
Graphics/ForwardFramePipeline: Frustum cull lights
2022-02-02 19:39:46 +01:00
Jérôme Leclercq
109127459b
Graphics/ForwardFramePipeline: Reuse light UBO
2022-02-02 13:47:29 +01:00
Jérôme Leclercq
8a3a8547dc
Add light support (WIP)
2022-02-02 12:55:39 +01:00
Jérôme Leclercq
29a01e975c
Merge fix
2022-01-23 20:00:11 +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
b3ff5767f7
Graphics/Sprite: Fix AABB
2022-01-21 21:44:21 +01:00
Jérôme Leclercq
b0a3941f4e
Add Phong lighting (WIP)
2022-01-11 19:47:29 +01:00
Jérôme Leclercq
972d5ffd3f
Regenerate global headers, unicode and spirv data
2022-01-04 16:36:28 +01:00
SirLynix
89c7bbf197
Update copyright date
2022-01-01 15:30:09 +01:00
Jérôme Leclercq
b98fd65a01
Fix a lot of small bugs/warnings
2021-12-25 20:07:53 +01:00
Jérôme Leclercq
ed3ee34565
Graphics/Sprite: Allow to change origin
2021-12-23 17:32:18 +01:00
Jérôme Leclercq
5963f4c848
Graphics/FrameGraph: Fix texture pool issue
2021-12-19 18:29:20 +01:00
Jérôme Leclercq
07199301df
Graphics/FrameGraph: Handle invalidation and flush barriers
2021-12-16 18:29:40 +01:00
Jérôme Leclercq
90ab0e9438
Graphics/FramePass: Add SetReadInput method
2021-12-13 23:44:34 +01:00
Jérôme Leclercq
dfa2a0040a
Graphics/FrameGraph: Add AttachmentProxy
2021-12-13 23:44:14 +01:00
Jérôme Leclercq
4eb96849db
Graphics/FrameGraph: Reuse textures if possible
2021-12-05 16:53:02 +01:00
Jérôme Leclercq
11d4ba22da
Graphics/ForwardFramePipeline: Use RenderGraph to merge viewers views
2021-12-03 22:17:24 +01:00
Jérôme Leclercq
61779d1cad
Graphics/Widgets: Add support for scissoring
2021-12-01 20:26:33 +01:00
Jérôme Leclercq
a483e16e15
Graphics: Fix render layer sorting
2021-12-01 20:25:55 +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
8b899253b1
Graphics/InstancedRenderable: Add support for render layer
2021-12-01 18:57:50 +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
e1a378e733
Graphics/[SpriteChain|Submesh]Renderer: Fix material pass not breaking batching
2021-12-01 10:40:47 +01:00
Jérôme Leclercq
b256ddd06b
Graphics/SlicedSprite: Handle corner removal + lower size
2021-12-01 10:38:53 +01:00
Jérôme Leclercq
db88f0ca0d
Graphics: Add SlicedSprite class
2021-11-28 20:19:59 +01:00
Jérôme Leclercq
01cd4986cc
Minor fixes
2021-11-28 20:19:37 +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
b6d366c89d
Graphics/Sprite: Reverse vertices
2021-11-24 22:29:47 +01:00
Jérôme Leclercq
d2cfc5fdf5
Graphics/GraphicsComponent: Add visibility control
2021-11-24 22:07:56 +01:00
Jérôme Leclercq
c9aba016a8
Graphics/Sprite: Add [Get|Set]TextureCoords & SetTextureRect
2021-11-24 22:00:29 +01:00
Jérôme Leclercq
b8b0552a4e
Graphics: Fix blending (temporary fix until frame graph handles it)
2021-11-24 21:56:33 +01:00
Jérôme Leclercq
8f1cc79dc2
Graphics/InstancedRenderable: Add signal to tell some renderables need to be rebuild
2021-11-21 19:06:10 +01:00