Commit Graph

71 Commits

Author SHA1 Message Date
Faymoon 0a5e9e040d Update PhysicsSystem2D (#179)
* Update

* Add: [Get/Set]AngularDaming for standardization

* Fix: Name error

* Add: [Get/Set][AngularDamping/MomentOfInertia] in PhysicsComponent2D

* Forgot in last commit

* Add: param coordSys in [PhysicsComponent2D/RigidBody2D]::SetMassCenter

* Add: Some forgotten inline

* Fix little error

* Fix: Indentation before case

* Move and Change GetCenterOfGravity

* Rename m_world into m_physWorld

* Rename GetWorld int GetPhysWorld

* Update: PhysicsSystem2D became an interface of PhysWorld2D

* Update Collison/PhysicsComponent because GetWorld was renamed

* Update tests

* Update: Make the interface usable with Entity instead of PhysicsComponent

* Update: Make GetPhysWorld private

* Update PhysicsSystem2D.hpp

* Update: indent

* Remove: useless blank line

* update order(?)

* Update PhysicsSystem2D.hpp
2018-08-07 19:08:01 +02:00
Lynix d253ec1adc Sdk/GraphicsComponent: Fix bounding volume when using a local matrix 2018-04-15 02:30:36 +02:00
Lynix 251b8af03a SDK: Add DebugComponent
@gawaboumga @gawaboumga @gawaboumga @gawaboumga @gawaboumga @gawaboumga @gawaboumga @gawaboumga @gawaboumga @gawaboumga
2018-04-13 22:09:19 +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 166ecffc32 Sdk/[Collision|Physics]Component2D: Set internal rigidbody userdata to the entity id 2018-02-17 14:22:25 +01:00
Lynix c1cebe1425 Merge branch 'master' into physics3d-material 2018-01-17 18:25:57 +01:00
germinolegrand 1e55c4d9e9 Prerequisites instead of Prerequesites (typo) #152 (#153) 2018-01-16 12:23:01 +01:00
Lynix 4cb598c32b Merge branch 'master' into physics3d-material 2018-01-14 14:40:57 +01:00
Faymoon 4f6bf30f24 Constraint 2D (#147)
* Rename all Constraint by [name]Constraint3D

* Create Refs and Libraries for Constraint2D

* Remove ref to PhysWorld in Constraints ctors

* Update Constraint2d ctor to have RigiBodies first

* Add New static function for all constraints and fix an oopsie

* Add Contraint Library and remove all library useless aliases

* Add ConstraintComponent2D

* remove useless definition of Constraint2D library

* Fix : getting the world of the constraint before having created it

* Make the GetStaticBody function return a ref

* Remove : Useless AddJoint Fonction and Update CreateJoint function

* Update PhysicsSystem3D because GetStaticBody return now a ref

* Oops

* Having done something with the 3D and i was needing 2D

* Add ConstraintComponent as friend of Collision and PhysicsComponent

* Update all the Get[Static/Rigid]Body function so they return a pointer

* fix the bugs caused by the commit before

* update : CreateConstraint lambda for the nullptr case

* remove the useless  use of const pointer

* Update : CreateConstraint function

* Update ChangeLog.md
2018-01-13 11:03:03 +01:00
Lynix e302667c21 Merge branch 'master' into physics3d-material 2017-12-14 18:15:35 +01:00
Lynix 5aab9b248d Sdk/PhysicsComponent3D: Fix cloning by preserving physics states 2017-12-13 22:17:50 +01:00
Lynix afa874de26 WIP on materials 2017-12-10 22:17:41 +01:00
Lynix f1b84bfc9e Sdk/Physics3D: Handle properly disabled physics entity 2017-12-10 14:07:18 +01:00
Lynix 6d09abbc2c Physics3D/RigidBody3D: Add [Get|Set][Angular|Linear]Damping 2017-11-30 12:04:33 +01:00
Lynix 9eaf995b21 Sdk/CollisionComponent2D: C++14 cleanup 2017-11-28 23:21:32 +01:00
Lynix d688cecbde Renderer: Replaced RenderTarget::Get[Height|Width] by RenderTarget::GetSize
Utility: Removed Window::Get[Height|Width] methods
2017-10-28 23:26:22 +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 75d57b3c29 Merge remote-tracking branch 'refs/remotes/origin/master' into reflection-mapping 2017-05-11 20:52:04 +02:00
Lynix 52a4a590e1 Graphics/Material: Fix depth sorting flag handling for meshes 2017-04-22 17:13:51 +02:00
Lynix f7cd52d947 Small update 2017-04-17 17:39:26 +02:00
Lynix 6851428c3c Components/GraphicsComponent: Watch every used material to handle reflective information 2017-03-28 23:36:08 +02:00
Lynix cdf7c11ef8 Fix crash when RigidBody2D is moved while having poststeps 2017-03-09 18:20:18 +01:00
Lynix 605e5c2fd0 Sdk/BaseComponent: Add OnEntityDestruction callback
Also fixes physics component callbacks (OnContactEnd by example) being
fired while entity is destroyed
2017-03-03 17:52:07 +01:00
DrLynix f383eca19a Update copyright year 2017-01-20 12:58:35 +01:00
Lynix 8d86306933 Merge remote-tracking branch 'refs/remotes/origin/master' into culling 2016-11-23 14:07:52 +01:00
Lynix a1b71467c6 SDK/CollisionComponent2D: Fix static body position 2016-11-18 18:47:24 +01:00
Lynix 74f3ac8021 SDK: Add components and system for 2D physics 2016-11-10 18:31:27 +01:00
Lynix 725dc6cdbc Merge remote-tracking branch 'refs/remotes/origin/master' into culling 2016-10-19 11:17:12 +02:00
Lynix 5a07bbd001 Fix a lot of warnings from Clang/GCC 2016-10-17 14:46:53 +02:00
Lynix be44a89a85 Sdk: Rename [Collision|Physics]Component to [Collision|Physics]Component3D 2016-10-13 08:23:25 +02:00
Lynix b52c7c57bf Physics3D: Rename PhysWorld to PhysWorld3D 2016-10-13 08:13:56 +02:00
Lynix 3765cba046 Physics3D: Rename PhysObject to RigidBody3D 2016-10-13 08:06:14 +02:00
Lynix b7a383d68c Physics3D: Rename all *Geom to Collider3D 2016-10-13 07:29:34 +02:00
Lynix 24f1859ec2 Physics: Change includes to Physics3D 2016-10-13 06:03:22 +02:00
Lynix 561c0cf51f Merge remote-tracking branch 'refs/remotes/origin/master' into culling 2016-10-12 16:51:18 +02:00
Lynix 29ac52770e SDK/CameraComponent: Moved virtual functions to source file
Former-commit-id: 633046a6f599ce9f8712e11b8195509d9704bfc0 [formerly 080ea253a37d683c72372b406148372f9c1b92d2] [formerly 528dbe2f2c9dcac7b48c11feafb24a12afd43652 [formerly af9843c5eae928fb2f03c0ec1550e7ef95f69108]]
Former-commit-id: f17eed57cd271cfc55ef380bde44917ea26deac7 [formerly 30667bf567620cc339c96388303582b8b8601f68]
Former-commit-id: 66843984b23bee78fdbcefebbf56febddcdb4bb2
2016-09-27 18:09:25 +02:00
Lynix 8ec377e72f Culling: Fix some issues
Former-commit-id: cc91c0e8a7f0651743439ce8ac19efacae1aed69 [formerly d7463103fce8210ea8e495a627e5d84e3e4d430b] [formerly 274c2b2c16df1784823027f3f50c6d7024640eee [formerly d5baf025e09e3ef48f5c1db64a07775c75594a8a]]
Former-commit-id: 15230bf754acd065e6db4ba8dd79d37f43ba8a02 [formerly 81b85f2234f378de5eed976d4924ce8ccb08296f]
Former-commit-id: 3cdd9b2416ada3c6ae9bc8bdc527da83c46e0459
2016-09-16 00:40:01 +02:00
Lynix 416441bd3e Sdk/RenderSystem: Regenerate renderqueue only when needed
Former-commit-id: 8883c832e1ea34172cf7b21e949f931f188542cf [formerly 3e5d67644e985fd6b5dc0d24bd431e575b9192b7] [formerly 9240e84ee3e77f9b4fa525c5e614ee32c4a59501 [formerly 4f5f4c5d6f366619e888feb8e7fcc8379cf0fabd]]
Former-commit-id: ebc0908d6be73e8509e322450bfe6c2cfcc89ae8 [formerly b621f6434040e1c78841d51e905eda23fdad9b62]
Former-commit-id: 382e99294b674b9740dc9c9b5f5e6dd39b103c52
2016-09-15 14:21:06 +02: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 ba6c562367 Sdk/GraphicsComponent: Allows to setup an offset to renderables
Former-commit-id: a5e9ceb3f30e79a0d3b96b6866a06441cbc0b463 [formerly 8af071cedec0a6aca00ff9c12d66e8a0817049c6] [formerly cd7e7040fd68dd5a74a0b458a3a305c251257b51 [formerly 0f9382c169a260d5fa34fe9b1ab64c3d19dbd385]]
Former-commit-id: 774af2326cb64824f85835c83464bc19884005e1 [formerly 4b676844f6dd56940b4f503c6a943905ea8a54c3]
Former-commit-id: 0673e4d4cd88c99d24e0e153a61d2726e2e2c039
2016-09-04 20:02:23 +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
Gawaboumga 9eba331f34 Documentation for module 'NDK'
Former-commit-id: 63e1cac538c577a1f1aafa71fa7eef69a6d4daab [formerly b2d8769fd02a0e7d9c476d4ad7be1988a1fd6789] [formerly 636b5cb79bcb8da44d9aa45ba1023565bcf29f0d [formerly a2361ec2b8679d4d4ba096e543b5d4b91825dd62]]
Former-commit-id: d402d35477f9db0135c553d55c401939426bf62d [formerly 607336ea0f42731e4604f3a8c2df06f3aecfc401]
Former-commit-id: 69e23cd6c06723486de5e4641ce810012dac66da
2016-08-21 13:48:52 +02:00
Gawaboumga 95689f46fb Documentation for module 'NDK'
Former-commit-id: a6c2075cfbfd0eccf2b77def71c0d42684bed590 [formerly 36ece2bc6a148bde6cacf45084821d20edcd115e] [formerly 4a6988792ec026e65be6850c46dfe8ddda92a885 [formerly fd3f4f975de5c427f3adc98b220446fd255be396]]
Former-commit-id: c87fdc9483202842267c60eff3d619f0df2963bf [formerly ee35202f1b2df7ca20da5b6d8b13147f2b92c933]
Former-commit-id: dad5de1b00bb4413f7aa191ca06b7d43b659f32a
2016-08-21 13:48:52 +02:00
Lynix 715355628e Sdk/ParticleEmitterComponent: Update emitter (they are no longer attached to groups)
They are no longer attached to groups, groups attach emitters


Former-commit-id: c3a9f015dd46be1a4344c034ea2a191f0328acae [formerly 8e342bc0982853cf376535bf196e7ab8876301eb] [formerly b7c3afed37877838e2e7caefa28d7c1b4bf654a9 [formerly 886646b5d5f90b63b7af6942d693bdaab4db441d]]
Former-commit-id: 85cb514f954ba68699022e73f7fbe1ad4cfd036e [formerly 6247fbfeb86c09464b27bfc11fa4a5e059d63065]
Former-commit-id: 1d8badfef268dbdecdeda8ad91e988b3f936b865
2016-08-06 01:09:13 +02:00
Lynix 8f61e2f278 Sdk/ParticleEmitterComponent: Update emitter (they are no longer attached to groups)
They are no longer attached to groups, groups attach emitters


Former-commit-id: 9a586151ac4ce932cda5d6c36c3e40718aef7f2c [formerly 830dd96bb020bec7dc7b652acca43fdef2d01971] [formerly 26cf67777c40ca4a6bcc0643a8dea76d46debd30 [formerly d4d7e62390be2a4d44b5a67c5fbabc11aa080de5]]
Former-commit-id: 653b321e01aa182a3dcb0531319cb9a053aadfa8 [formerly c4e742f3aab61f0941729a5739a80a838c6163cd]
Former-commit-id: 6572d614b19d85cbc0844745c45c3bc92deef051
2016-08-06 01:09:13 +02:00
Lynix 70ee053f3f Sdk: Integrate particles
Former-commit-id: fa4474b434340d15363ff2ffc91b58d2df3a62fc [formerly 8a52795fc49a847e7b558425fc03915b21139521]
Former-commit-id: ac159c0cf652699400f720ef6fdad0fbf649308f
2016-07-30 15:51:46 +02:00
Lynix 654b52bb0c Sdk: Integrate particles
Former-commit-id: 48dac6b378c45130c43f5b8214a7b13a35cf06d1 [formerly c874b77869e750df33a1e77fdb40747b543b2efa]
Former-commit-id: a2c06e5f2b0fe3dd1c74ce2835436a7219260bf8
2016-07-30 15:51:46 +02:00
Lynix 819b46f5fc Fix a shitload of warnings in 64 bits mode
Former-commit-id: c7792a7d5b1f85ab934da25324831b9daa3f47ff [formerly 3469974c48432be1f65808bff0ea39d9e22f5b50]
Former-commit-id: 5080815e9e1a3aebe237ff9a291b908ce0292eca
2016-06-13 21:09:55 +02:00
Lynix c528640d80 Fix a shitload of warnings in 64 bits mode
Former-commit-id: 5bc0c622c20eae45df51bb1ee62e5ed566e58a1b [formerly a8befbed30cb897ce876fd3b46a3585e1b70613e]
Former-commit-id: 999225e414c0d6a3e9c6868f040b68045b2ba724
2016-06-13 21:09:55 +02:00