Commit Graph

34 Commits

Author SHA1 Message Date
Jérôme Leclercq 0179ef4d65 Graphics: Improve frustum culling (do it once per viewer) 2021-08-21 01:42:53 +02:00
Jérôme Leclercq 8546631f62 Add frustum culling (WIP) 2021-08-19 23:26:34 +02:00
Jérôme Leclercq 9a311da2c8 Graphics: Add MaterialPassRegistry 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 08921b36a6 Graphics: Add RenderElement and ElementRenderer (WIP) 2021-08-19 18:47:11 +02:00
Jérôme Leclercq b5045a2c59 Graphics: Add Material and made use of passes (WIP) 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
Jérôme Leclercq 4ac5fe7cba Graphics: Add RenderSystem and frame pipeline 2021-07-06 11:04:22 +02:00
Jérôme Leclercq 6f87a01fb2 Graphics: Improve WorldInstance handling 2021-06-20 14:06:28 +02:00
Jérôme Leclercq 3cd9172f7a Graphics: Make use of shader binding sets 2021-06-16 16:50:00 +02:00
Lynix 54d56abc56 WIP 2021-06-16 16:50:00 +02:00
Jérôme Leclercq 2a875c8bdc Remove Graphics module and fix compilation 2020-08-27 19:43:31 +02:00
Lynix c23b6dfa01 Copyright year update
I can't wait to see the conflicts this will cause
2020-03-05 17:27:26 +01:00
Lynix bc2f6f67cc Graphics/InstancedRenderable: Add Clone method 2018-06-06 19:36:46 +02:00
Lynix 2f0c62df20 Graphics/InstancedRenderable: Make SetMaterial methods public 2018-06-06 19:32:28 +02:00
Jérôme Leclercq 2da086b7df New Render queues (#161)
* Add new render queues proof of concept + scissoring support (WIP)

* Graphics: Adapt basic sprites rendering to new render queue system

* Graphics: Fix layers when rendering sprites

* Graphics/RenderQueue: Fix sprite default overlay

* Graphics: Enable scissor test by default

* SDK/Widgets: Enable scissoring on widgets

* Graphics: Handle almost everything with the new renderqueues system

Todo:
- Billboard rendering
- Proper model rendering

* Graphics/RenderQueue: Billboard drawing now works (WIP)

At 1/4 of previous code performances due to individually process of billboards

* Add new render queues proof of concept + scissoring support (WIP)

* Graphics: Adapt basic sprites rendering to new render queue system

* Graphics: Fix layers when rendering sprites

* Graphics/RenderQueue: Fix sprite default overlay

* Graphics: Enable scissor test by default

* SDK/Widgets: Enable scissoring on widgets

* Graphics: Handle almost everything with the new renderqueues system

Todo:
- Billboard rendering
- Proper model rendering

* Graphics/RenderQueue: Billboard drawing now works (WIP)

At 1/4 of previous code performances due to individually process of billboards

* Graphics/RenderQueues: Add full support for billboards

* Graphics/RenderQueue: Cleanup and improve billboard rendering

* Graphics/RenderQueue: Fix model drawing

* Examples/Particles: Fix lighting on space station

* Graphics: Cleanup forward render queue/technique

* Fix compilation under Linux

* Graphics/ForwardRenderTechnique: Fix case when scissoring is enabled on material but disabled on element

* Add support for Deferred Shading

* SDK/Widgets: Fix widget rendering

* Graphics: Remove legacy code from render queues

* Graphics: Fix some objects sometimes not showing up due to broken scissor box

* Fix compilation error

* Sdk/GraphicsGraphics: Fix bounding volume

* SDK/World: Fix self-assignation

* Update changelog for render queues
2018-04-11 19:36:52 +02:00
Lynix c763dea4e1 Merge branch 'master' into reflection-mapping 2017-10-02 21:11:15 +02:00
Gawaboumga bbac0838dd Include-What-You-Use (#137)
* IWYU Core

* IWYU Noise

* IWYU Utility

* IWYU Audio

* IWYU Platform

* IWYU Lua

* IWYU Network

* IWYU Physics2D

* IWYU Physics3D

* IWYU Renderer

* IWYU Graphics

* IWYU NDKServer

* IWYU Fix

* Try to fix compilation

* Other fixes
2017-10-01 11:17:09 +02:00
Lynix 6851428c3c Components/GraphicsComponent: Watch every used material to handle reflective information 2017-03-28 23:36:08 +02:00
Lynix f99d465760 Merge branch 'reflection-mapping' of https://github.com/DigitalPulseSoftware/NazaraEngine into reflection-mapping 2017-02-18 15:07:11 +01:00
Lynix 7d5d21f025 Merge remote-tracking branch 'refs/remotes/origin/master' into reflection-mapping 2017-01-21 15:56:37 +01:00
DrLynix f383eca19a Update copyright year 2017-01-20 12:58:35 +01:00
Lynix e3aed7ddea Graphics/InstancedRenderable: Optimize OnInstancedRenderableInvalidateMaterial signal 2017-01-11 17:11:14 +01:00
Lynix e0db2e69f8 Graphics/InstancedRenderable: Add OnInstancedRenderableInvalidateMaterial signal 2017-01-09 14:23:05 +01:00
Lynix 6b949afb9b Graphics: Add support of skins to InstancedRenderable + big clean up 2017-01-09 01:52:00 +01:00
Lynix 01330dcfdf Graphics: Add frustum culling
Former-commit-id: 2741c465f9acb4a190de0a29db4a3853700461fd [formerly be67ee144fe577767a11be40f79f3f2e85d030c0] [formerly 302a6d2c8a3222401890d217f01c24a03db9ebc8 [formerly 762367a1144c340b84b61eee9d7577dcdaf717c6]]
Former-commit-id: 6504b78e4ce04d8eea0c10e7ce27bdda4b95f2dc [formerly 8d0fba6c2dde5dcc43cbea0e6e5fd2980af4b801]
Former-commit-id: 75d1deaf21035eb1b630705017462b9e059149a9
2016-09-06 13:30:05 +02:00
Lynix f2aa4e0e19 Sdk/GraphicsComponent: Allows to setup an offset to renderables
Former-commit-id: fd1f70010f950dd4a4194e049ddff317c0d8b4b9 [formerly 8fee96f11b7bef08351110bef74643fa0be8b17d] [formerly ec5d6ad819cf325dac0ae61d983003cf99c78aac [formerly 2610a17ba67d61080254ce4bc3e9176e315dfbe5]]
Former-commit-id: 7683be7fa9a565dc3fb59be401ecff5580a6de15 [formerly 80ac7628f5119f58cf4518b5b1a44aff5b6d6b20]
Former-commit-id: d1604af612715688e7b1fc451d8561f79e100541
2016-09-04 20:02:23 +02:00
Lynix 1d758d370c Graphics/InstancedRenderable: Take a const reference to the matrix instead of a non-const one
Former-commit-id: 148f4367351f79994f51699a656a938c6784af8f [formerly 27ef2f23da51c156f615bb33e6b3138b44f77498] [formerly 120334bc6e2bd3fcff30fde0febc901d83cdeb9b [formerly 9f4d16e134fb009ce021f4720ffc6d410cc5bd3c]]
Former-commit-id: 55595b1a006dfa313e7f088f76ff6880971530c4 [formerly 7e3a37de6c217d1b7734be14df74c174f6e0b4d6]
Former-commit-id: 0ebdab2df6d218a51c5ee425482bff7c660fddd8
2016-08-05 09:09:14 +02:00
Lynix 04e52caa88 Sdk/GraphicsComponent: Add Detach method
Former-commit-id: 16bcd7d8a3b50235cdd50443d8a1ed55e4b939f2 [formerly 93e838eebb955d5bbe17113ced86a247122bf522]
Former-commit-id: be3d0d2e8fb9a887eb903c6b17f16a56e5eee1c7
2016-06-20 13:11:31 +02:00
Lynix 0a0e6d00f7 Graphics: Add render order
Former-commit-id: 881ae69c214e024846dc0165f3476f76f5bcc0b5
2015-11-27 23:38:54 +01:00
Lynix df8da275c4 Switch from Nz prefix to namespace Nz
What a huge commit


Former-commit-id: 38ac5eebf70adc1180f571f6006192d28fb99897
2015-09-25 19:20:05 +02:00
Lynix dea3fb4e39 Convert spaces to tabs
Former-commit-id: b459cfe0c83f651cc660d42f7d3014c3b146f345
2015-09-24 00:55:57 +02:00
Lynix 2fd3872099 Core: Remove NonCopyable
Former-commit-id: f8c6d10ad0b1abb4a32e3c867b7f24fd4bde68a4
2015-09-24 00:37:21 +02:00
Lynix 03ee0a12ed Make signals arguments clearer
Former-commit-id: c329f1fc5b8d8ffcf8e38ec4e4804454b31f685f
2015-09-14 22:40:38 +02:00
Lynix 6d953d9e93 Graphics: Separate Renderable and make Light a Renderable (LightComponent)
Former-commit-id: 6177d473f27ef493ba77417fc14461cb08b6f9e1
2015-06-16 00:31:04 +02:00