Commit Graph

2168 Commits

Author SHA1 Message Date
Lynix 3933d5007d Physics2D/RigidBody2D: AddTorque now takes a RadianAnglesf instead of a float 2018-10-11 00:08:26 +02:00
Lynix d2b1d51ecb Math/Angle: Replace conversion constructors by conversion operators 2018-10-11 00:07:50 +02:00
Lynix 6653be6f2c Math/Angle: Make use of ToRadians() 2018-10-10 23:12:45 +02:00
Lynix fb11fe1ecf Math/Angle: Rename angle field to value 2018-10-10 23:12:27 +02:00
Lynix 7613f50a6e Math/Angle: Rework ToDegrees/ToRadians
- Rename To[Degrees|Radians] to To[Degrees|Radians]Angle
- Add To[Degrees|Radians] methods which returns an angle value
2018-10-10 23:01:23 +02:00
Lynix 9cc83aafda Math/Angle: Add FromDegrees and FromRadians builders 2018-10-10 22:59:57 +02:00
Lynix 30348525d7 Physics2D: Expose elasticity/friction/surface velocity 2018-10-09 23:22:28 +02:00
Lynix dc6fbfc90f Replace floating point angle by Angle class instance 2018-10-09 23:20:53 +02:00
Lynix 7f2826f192 Graphics/CullingList: Fix visibility hash being always the same, causing visibility issues 2018-10-05 19:53:35 +02:00
Lynix 67c56b2aba Network/TcpClient: Add PollForConnected 2018-10-01 23:04:53 +02:00
Lynix dad2dbae1c Network/TcpClient: WaitForConnected now returns new socket state 2018-10-01 22:38:20 +02:00
Lynix 8091e52348 Forgot to save this file 2018-09-30 18:07:38 +02:00
Lynix 583393acd0 Network/AbstractSocket: Replace OnStateChange signal by OnStateChanged 2018-09-30 18:04:49 +02:00
Jérôme Leclercq e1cfa2e184 And again 2018-09-25 15:56:35 +02:00
Jérôme Leclercq 2243749480 Math/Angle: Fix warning 2018-09-25 15:55:16 +02:00
Jérôme Leclercq 706a06b506 Increase NetPacket size from UInt16 to UInt32 2018-09-25 15:51:45 +02:00
Jérôme Leclercq 974fa07bcb Remove Vulkan.hpp 2018-09-25 14:53:56 +02:00
Jérôme Leclercq b6a33c76ca Fix crash on moving empty NetPacket 2018-09-25 14:53:49 +02:00
Lynix d0bea6d09a Update global headers 2018-09-06 18:35:51 +02:00
Jérôme Leclercq eaa3fd2f09 Fix method order 2018-09-06 13:27:06 +02:00
Jérôme Leclercq 46008531e0 Math/Angle: Fix implicit conversion to Euler Angles/Quaternion 2018-09-06 13:24:29 +02:00
Lynix 09c49f03fb Math: Update global header 2018-09-05 21:53:13 +02:00
Lynix 1ee75f2699 Math/Angle: Adds conversion to euler angles and quaternions 2018-09-05 21:51:32 +02:00
Jérôme Leclercq 1114bb0fdd Fix some other oopsies 2018-09-05 16:24:10 +02:00
Jérôme Leclercq 500ad417a7 Math/Angle: Fix compilation under Linux 2018-09-05 15:59:00 +02:00
Jérôme Leclercq 4c8e40bb6c Math/Angle: Rename parameters to prevent name clash 2018-09-05 15:18:35 +02:00
Jérôme Leclercq f0e215f8f5 Math/Angle: Optimize SinCos on Linux 2018-09-05 15:15:02 +02:00
Jérôme Leclercq 9e0b61f30d Math/Angle: Add sine, cosine, tangent methods 2018-09-05 15:14:31 +02:00
Jérôme Leclercq 3cc70daf3e Fix missing file 2018-09-05 15:13:39 +02:00
Lynix f59810b68e Math: Add Angle class 2018-09-02 22:06:03 +02:00
Jérôme Leclercq 7bb6c84752 Graphics/CullingList: Improve culling list
- Now supports box culling
- Removed branch
- Removed complex hash combination and replaced it with a much faster algorithm
- It now supports partial visibility
2018-08-31 17:26:50 +02:00
Lynix e62afabd71 Physics2D/Collider2D: Fix CompoundCollider2D filters 2018-08-29 20:54:57 +02:00
Lynix fd9db1b639 Graphics/CullingList: Add forceInvalidation parameter 2018-08-25 22:41:34 +02:00
Lynix a3a4ed89b8 Graphics/Material: Fix reflection mode not being copied 2018-08-25 22:41:05 +02:00
Lynix 933cb64488 Physics2D/Collider2D: Allow to prevent individual colliders properties override 2018-08-24 16:30:03 +02:00
Jérôme Leclercq ffc833439d Physics2D/Collider2D: Add some missing getters 2018-08-17 17:03:49 +02:00
Jérôme Leclercq e4d547316d Core/ObjectHandle: Fix Reset(ObjectHandle&&) not clearing the pointer 2018-08-16 18:06:02 +02:00
Lynix 602992609f Sdk/RenderSystem: Add EnableCulling method 2018-08-04 15:38:05 +02:00
Lynix 49d59d93d8 Revert "Core/Flags: Make operators |= &= and ^= constexpr"
This reverts commit a363ae312f.
2018-08-03 23:56:52 +02:00
Lynix a363ae312f Core/Flags: Make operators |= &= and ^= constexpr 2018-08-03 20:26:44 +02:00
Lynix 39d1d31639 Core: Integrated Unicode data 2018-08-03 20:24:56 +02:00
Jérôme Leclercq b92e23fcd6 Physics2D: Add Arbiter2D 2018-08-02 15:42:14 +02:00
Faymoon 2f3f02b2fc Update Physics2D Component and Body (#178)
* 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
2018-08-02 11:25:57 +02:00
Faymoon abedc30747 Add: [Get/Set]AngularDamping for standardization (#173)
* Update

* Add: [Get/Set]AngularDaming for standardization
2018-07-31 13:24:19 +02:00
Lynix f2487bbcba Merge branch 'master' of https://github.com/DigitalPulseSoftware/NazaraEngine 2018-07-15 16:46:34 +02:00
Lynix 01ccca433d Physics/PhysWorld3D: Add [Get|Set]ThreadCount 2018-07-15 16:46:01 +02:00
S6066 58ce182983 Bugfix: invalid variable still used after move (#171) 2018-07-11 19:16:54 +02:00
Lynix 6390da95d3 Fix previous commit crash 2018-07-07 14:35:11 +02:00
Jérôme Leclercq cb6885d6a9 Graphics/CullingList: Fix compilation errors on MSVC with /permissive- 2018-07-06 15:24:30 +02:00
S6066 aafb79f06c Fix: destroy instead of constructing (#169) 2018-07-06 10:42:23 +02:00
Jérôme Leclercq e4b67019cb Math/Vector[2|3]: Removed Distancef and made Distance templated 2018-07-02 18:13:14 +02:00
Jérôme Leclercq 7da0fffe07 Core: Add StackVector class 2018-07-02 17:56:27 +02:00
Jérôme Leclercq 2fcea6b79f Core/StackArray: Moved StackArray class to its own header 2018-07-02 17:53:49 +02:00
Jérôme Leclercq bb0456ffed Remove useless namespace prefix 2018-07-02 17:48:51 +02:00
Lynix ea57252081 Graphics/Model: Fix material copy for good 2018-07-01 20:36:42 +02:00
Lynix eeaaebb15c Core: Add ObjectLibrary::Clear 2018-07-01 00:36:59 +02:00
Lynix 78adc11323 Graphics/TileMap: Fix warning 2018-06-24 22:04:48 +02:00
Lynix bf37688b11 Lua/LuaState: Fix std::vector query for good 2018-06-24 21:49:51 +02:00
Lynix 456a9258da Lua/LuaState: Fix std::vector query code 2018-06-24 20:29:20 +02:00
S6066 da044bd21c Make lua binding for std::vector (#164)
* Make LuaImplQueryArg impl for std::vector

* Fix shadowed argument

* Make unit tests

* Bugfix

* Bugfix, for real this time

* We didn't need these tests anyway

* Revert "We didn't need these tests anyway"

This reverts commit be88d4496a9cf62beb4d3ce1f30825589a4bacb2.

* Add change to changelog

* Update ChangeLog.md

* Bugfix & use CallOnExit to pop stack
2018-06-17 19:04:15 +02:00
S6066 858d0da5f2 Fix Sprite & GraphicsComponent copy constructors leaving some members uninitialized (#166)
* Fix Sprite copy constructor (corner colors)

* Also add change to changelog

* [GraphicsComponent] Bugfix: Initialize m_scissorRect in copy ctor

* Add change to changelog

* Move GraphicsComponent fix change to correct section in Changelog

* Use default copy constructor for Sprite
2018-06-17 18:54:02 +02:00
Jérôme Leclercq 8cdc36c948 Graphics/Material: Add parameter for vertex color 2018-06-15 14:15:23 +02:00
Jérôme Leclercq 41e2d3e448 Graphics/Material: Add EnableVertexColor temporary 2018-06-15 14:13:18 +02:00
Jérôme Leclercq b2185f2138 Physics2D/RigidBody2D: Add ClosestPointQuery method 2018-06-12 15:11:16 +02:00
Jérôme Leclercq 56b23a2f27 Network/SocketPoller: Wait() now returns the number of active sockets, and optionally the last error
It will also ignore the EINTR error on Linux
2018-06-12 14:31:49 +02:00
Jérôme Leclercq 15f84dc712 Noexcept all the things! 2018-06-12 11:37:44 +02:00
Lynix 0bea301a48 Fixed some uninitialized variables 2018-06-09 13:59:35 +02:00
Lynix e9f0bdeb25 Graphics/ForwardRenderTechnique: Optimize sprite rendering 2018-06-06 21:38:40 +02: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
S6066 f5645833df Fix unwanted behavior with universal references (#165)
* Remove forced template

* Remove useless PushInstance overload
2018-06-06 00:25:59 +02:00
Jérôme Leclercq ba32d700e2 Fix compilation 2018-05-31 17:02:07 +02:00
Jérôme Leclercq 550176e198 Core/SerializationContext: Replaced currentBitPos and currentByte by [read|write][BitPos][Byte] to handle properly bit reading/writing 2018-05-31 16:10:58 +02:00
Lynix db0e3267da Graphics/AbstractViewer: Add ProjectDepth method 2018-05-29 23:55:51 +02:00
Lynix af34567ae7 Graphics/AbstractViewer: Add Project/Unproject methods 2018-05-27 21:45:06 +02:00
Lynix b782fd8431 Graphics/Model: add ModelLibrary, ModelManager, ModelSaver 2018-05-27 14:15:29 +02:00
Lynix f2c16f916a Lua/LuaState: Add error handling methods 2018-05-21 19:31:19 +02:00
Lynix 8e2efb5007 Graphics/TextSprite: Fix initial local bounds 2018-05-20 13:38:48 +02:00
Jérôme Leclercq 74773e9daa Core/Flags: Add operator&|^ for enum and flags 2018-05-16 15:54:55 +02:00
Lynix b22c93fa5f Network/ENetPeer: Add GetLastReceiveTime 2018-05-13 14:44:09 +02:00
Lynix 8b6311de63 Lua/LuaState: Add Load methods 2018-05-13 14:42:27 +02:00
Jérôme Leclercq d53c245c78 Graphics/Model: Fix model not invalidating their bounding volume when their mesh AABB got updated 2018-05-03 13:32:53 +02:00
Jérôme Leclercq d94baf133b Utility/Mesh: Refactor Mesh & Submeshes 2018-05-03 13:32:17 +02:00
Jérôme Leclercq 03e976993f Revert "Make LuaImplQueryArg impl for std::vector (#162)"
This reverts commit 24ec816762.
2018-04-30 15:00:45 +02:00
Jérôme Leclercq 95f137816a Physics2D/PhysWorld2D: Add invStepCount argument to pre/post steps callbacks 2018-04-30 14:55:28 +02:00
Jérôme Leclercq d1a969288f Merge branch 'master' of https://github.com/DigitalPulseSoftware/NazaraEngine 2018-04-30 14:51:35 +02:00
S6066 24ec816762 Make LuaImplQueryArg impl for std::vector (#162) 2018-04-30 14:51:11 +02:00
HardCPP 232a371fa5 Add normalLength parameter to the DebugDrawer::DrawNormals (#163) 2018-04-30 14:49:44 +02:00
Jérôme Leclercq 8b1efa974f Revert "Oops again"
This reverts commit 1c608596e1.
2018-04-27 11:31:04 +02:00
Lynix 1c608596e1 Oops again 2018-04-26 22:49:14 +02:00
Lynix 8ab1462402 Core/HandledObject: Make move constructor/assignation operator noexception 2018-04-22 12:33:36 +02:00
Lynix 52f80a68cb Renderer/OpenGL: Enable GL_TEXTURE_CUBE_MAP_SEAMLESS 2018-04-21 00:28:57 +02:00
Jérôme Leclercq 8a1d61c3ea Merge branch 'master' of https://github.com/DigitalPulseSoftware/NazaraEngine 2018-04-16 12:56:15 +02:00
Lynix 69c61ba746 Utility/AbstractTextDrawer: Add GetLineGlyphCount 2018-04-15 02:27:49 +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
Lynix 19f17fa059 Graphics: Add 2D & cubemap white textures 2018-04-13 00:00:36 +02:00
Jérôme Leclercq 2f2b1f101b Core/Quaternion: Fix Inverse method 2018-04-12 12:45: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 3c4c0fab66 Audio: Make Music, Sound, SoundEmitter movable 2018-04-08 17:51:25 +02:00
Lynix 830dae1b27 Core/HandledObject: Fix move assignement operator behavior
It will now unregister all previous handles (notifying about object destruction) before stealing moving object handles
2018-04-06 21:14:09 +02:00