Commit Graph

53 Commits

Author SHA1 Message Date
Jérôme Leclercq db88f0ca0d Graphics: Add SlicedSprite class 2021-11-28 20:19:59 +01:00
Lynix 5d849129fd Graphics: Remove CullingList (fixes MinGW compilation) 2021-10-30 00:51:54 +02:00
Jérôme Leclercq 93ec196dc4 Apply header guard check 2021-10-26 15:52:46 +02:00
Jérôme Leclercq a66f6faed1 Add widgets (WIP) 2021-10-04 09:25:45 +02:00
Jérôme Leclercq a2a0e6bd54 Graphics: Add DepthMaterial 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 3ce072c8e0 Regenerate global headers 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 8846eb4309 Regenerate global headers 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 0eda2d0721 Improve global header generation to take ECS into account 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
Jérôme Leclercq 572dc56b10 Update global headers 2021-05-14 03:35:32 +02:00
Jérôme Leclercq 080fd9c7eb Minor fixes 2021-02-15 18:17:30 +01:00
Jérôme Leclercq 78c3f57333 Regenerate global headers 2021-01-27 16:45:11 +01:00
Jérôme Leclercq 89609570f4 Graphics: WIP (almost working) 2020-10-30 23:08:48 +01:00
Jérôme Leclercq 2b6a463a45 Remove Nz::String and Nz::StringStream 2020-09-25 19:31:01 +02:00
Jérôme Leclercq 2a875c8bdc Remove Graphics module and fix compilation 2020-08-27 19:43:31 +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 e6e4a437bd Merge remote-tracking branch 'refs/remotes/origin/master' into gui 2016-11-30 13:08:08 +01:00
Jérôme Leclercq 9e84c397ba Merge branch 'master' into culling 2016-11-07 11:26:48 +01:00
Lynix 28a2328371 Global headers: Remove the generation date
They should now generate the same input everytime
2016-10-28 17:53:03 +02:00
Lynix 561c0cf51f Merge remote-tracking branch 'refs/remotes/origin/master' into culling 2016-10-12 16:51:18 +02:00
Lynix 05dd93c549 Merge branch 'master' into gui
Former-commit-id: b5a6eba7494e7595000e3c7e1f3c77077485519f [formerly 74e8b34c50d86cea8be86dcc5d9b82e112db9277] [formerly 07e6a0bd2e00dcb9517c6ddc1d9ca7d3326707ae [formerly 59878811e379ef9bfd66e6fd0a0f32eaa39dcc6b]]
Former-commit-id: b7a83377bc61d378410ce33748ab63357ee53abb [formerly d789d8762086eb0dd43e0cef08f1edfbd8d346f2]
Former-commit-id: 7aa71e252bf91965f8f488dd9396e6287607edf9
2016-10-10 22:10:36 +02:00
Lynix 948273fe99 Graphics: Update global include
Former-commit-id: 69414fbafbbdacfebb1afab54946f4a522ced71f [formerly 52c50d2e6e6424c697339e01acc4268b38721520] [formerly 6ed3e9faade44eceb3926c1463130c7b4844b0f9 [formerly c97e57ebcd52a9764330ce7758fd785bde6bde19]]
Former-commit-id: b5790057312f0d0841d98fd1e0d23b8db8a6816d [formerly 9f3b2b008bc228cd4d9944f64c4eb57a9a985579]
Former-commit-id: 5372d34593928b266d4761baa79f6e5a3af43410
2016-09-25 01:50:21 +02:00
Lynix 87b5047b14 Graphics: Separate pipeline state from Material into a new class, MaterialPipeline
This allows much more efficient batching, along with pipeline reusage and preparation for the Vulkan API


Former-commit-id: 4ed2f66567f7da6b6b6ee073e4d855b9a935000d [formerly b540f468fc700a16d5136d4dbb8632e23882fd3d] [formerly 37fff624ec65cc387130875410b6ea35c1a5bcfb [formerly ab9a88f514f46f6596499e285981fa6da588bb03]]
Former-commit-id: a2e8859196c0f72b7d7ffd8764a887e6c8173743 [formerly c886cdade14769db243ff993a1741f6052a2eb2a]
Former-commit-id: e1d02662fb1ac165c7e888380afee7601350060f
2016-08-05 22:11:13 +02:00
Lynix ac25df0126 Graphics: Separate pipeline state from Material into a new class, MaterialPipeline
This allows much more efficient batching, along with pipeline reusage and preparation for the Vulkan API


Former-commit-id: fd2de2f0e9612ea275ee69c5578c68e7169cd05b [formerly 53bd8a5ed5695311b7543ad717df63f93fad2da6] [formerly 171740929652ac9fe30e84983709388859cedd6b [formerly 25096a76678f1052e76f67d26b458077a0632cc3]]
Former-commit-id: 7978dbeb87af2eac9e5501a97afa83849648bf6e [formerly 81b6cce1ee81a2ca8873d3c70d468b2c71510c95]
Former-commit-id: 6663e2721c3f79d5f1e3f33c6183174378b502f4
2016-08-05 22:11:13 +02:00
Lynix b273a08571 Graphics: Rename ParticleSystem to ParticleGroup
Preparing for integration into the ECS


Former-commit-id: 9ca871117d0be3d4c655225d3f3dad6b0277cdd8 [formerly 9343fd818957da74e0bb7a5715a2172eefc325e5]
Former-commit-id: 93cf58c80f0cd396211df0c95063f0ad05449e75
2016-07-29 13:24:19 +02:00
Lynix 9fa7267523 Graphics: Rename ParticleSystem to ParticleGroup
Preparing for integration into the ECS


Former-commit-id: 201e28c9f00ee31f809d9de3d9a37f57a7fe740c [formerly 9b88616308f9801482fc8811a9a19a7231dce2a7]
Former-commit-id: 579f4e9597f94620f922fb145931202d8fc9cc96
2016-07-29 13:24:19 +02:00
Lynix 1b72b080e1 Update global headers
Former-commit-id: 978fdad88b03d1d8806f46ee9e07fe7eeca73e2c [formerly 4b80a873263e0bdb53504f31e05c5595cb53e27d]
Former-commit-id: 11641ec31886b4da1387e2d8600324f53a56b8b1
2016-07-13 12:27:30 +02:00
Lynix c7355ad166 Update global headers
Former-commit-id: 57e803ee99f077bc0436b5284dc14bab7ab33555 [formerly 1551090a7423e44e74b68452c0f209a121ad8cd8]
Former-commit-id: b275b8b680a3ddee30589d0e5f67a49d0448f066
2016-07-13 12:27:30 +02:00
Lynix 131d047517 Regenerate global headers
Former-commit-id: 07a0b81c1840da5d9f1f59e9ba328c24a72e45ad
2015-11-17 13:21:12 +01:00
Lynix 8648258ef7 Regenerate global headers
Former-commit-id: 60165296c6310b77b1954cba31a65d1bdd29a6b6
2015-06-24 13:56:18 +02:00
Lynix a4bd84a6e3 Graphics: Remove deprecated scene interface
Former-commit-id: 6b5d3c22827912d664c4f8c9c4051c824180bb51
2015-06-24 13:55:35 +02:00
Lynix 3db08e0a2c Graphics/Header: Remove LightManager include
Former-commit-id: 0eeae90f0e035ab6f0527d2eccdfa3c54dce9b40
2015-05-31 23:52:22 +02:00
Lynix 3fd217b8a3 Merge branch 'master' into NDK
Former-commit-id: 7f2646da9f2e2c29157e645afbcfcf974f0e0709
2015-03-19 13:13:20 +01:00
Lynix efa75ba349 Regenerated global headers
Former-commit-id: 3ae4fdfb08fb747665fd58a6f1bf8811e50dc81a
2015-03-18 22:24:47 +01:00
Lynix 4862767b69 Regenerated global headers
Former-commit-id: c7404ba638878c722d791102ca017dff906a2446
2015-03-18 20:52:11 +01:00
Lynix 622fce6f9c Regenerated global headers (and updated copyright year, again)
Former-commit-id: b5b24f4a3610e1dead2883afaded48bf3554669d
2015-01-30 22:33:41 +01:00
Lynix f6df10dacf Removed unused file
Former-commit-id: 374fc27dca13c38dfa94928841cefb031e7b32ed
2015-01-23 20:07:24 +01:00
Lynix 4a4b4e0fda Regenerated global headers
Former-commit-id: 01c6359d8fae9309dfd1003c3c786de57a93692c
2015-01-17 00:39:40 +01:00
Lynix 221e2583ac Removed useless file
Former-commit-id: 162cc21adea7dbdf6604ed8d8b25485ec1442d90
2014-07-23 10:21:49 +02:00
Lynix ca54b6cdca Updated module headers (generation)
Former-commit-id: a9a2e4eaeda16caa67989ae81c55ac090b1454de
2014-07-11 10:23:19 +02:00
Lynix 86bdab9055 Big UberShader update
-Added GRAPHICS_MAX_LIGHTPERPASS macro
-Added glGetActiveUniform OpenGL function
-Added (Uber)ShaderLibrary
-Added (Uber)ShaderName parameter to models
-Changed uniform system
-Fixed Node copying
-Moved Material class to Graphics module
-Optimized lights
-Remade Shader class
-Renamed Node::Invalidate to Node::InvalidateNode
-Renamed ShaderProgram to Shader


Former-commit-id: 15f0cad52969e91a2442e7d750ba2dc412f3549d
2014-02-21 19:27:39 +01:00
Lynix c096756dab Happy thousandth commit Nazara
Updated copyright year (Yay, 515 file updated)
Regenerated global headers
Fixed some typo
Improved some shaders
-Blah blah blah-

Thank you all for supporting my project !
-Lynix


Former-commit-id: e4e741b318ba4f203da5ffd265bd5e516e7ffd7d
2014-01-12 20:16:21 +01:00
Lynix a332579c80 Deferred Shading update
-Deferred Shading now use a dynamics pass system
-Forward Shading is now capable of rendering more than three lights
(Multipass)


Former-commit-id: 74ed0b998d72aa9eb3bd2aab938a75985ebb2bf6
2013-12-28 10:22:03 +01:00
Lynix 69479de643 Added center mesh parameter
Former-commit-id: e010a81e3f00ca6091e438d405e3e6ca14938b8f
2013-12-20 20:03:18 +01:00
Lynix c8414a39d8 Big Graphics update
Separated LightManager
Added Sprite class
Added View class
Camera is no longer a SceneNode
Fixed Material not invalidating programs
Renamed CameraPosition uniform to EyePosition
Renamed VisibilityTest to FrustumCull


Former-commit-id: ff7fbe4d9b31a3c269baab0b48c6faa347a12161
2013-08-21 20:05:33 +02:00
Lynix 1a6e55881b Renamed Background to AbstractBackground
Former-commit-id: c99ed2e48c4d82fb1100f412a85468c698142815
2013-06-27 12:53:04 +02:00
Lynix 8460a96744 Regenerated global headers
Former-commit-id: 36bc6f9b3f71af890c98c2d9f2e716382bcfda7b
2013-06-09 11:24:13 +02:00
Lynix 5f36817209 Rewritted rendersystem
Former-commit-id: 9cbc601413e057047b94b8b872ee2316a86638c4
2013-05-25 10:07:36 +02:00