Commit Graph

392 Commits

Author SHA1 Message Date
SirLynix 2243d0b1a7 Move free operator overloads inside Nz namespace 2022-12-29 12:15:22 +01:00
SirLynix 46fe1c550c Fixes unit tests 2022-12-18 17:08:03 +01:00
SirLynix 5ca7b398c2 More Math cleanup 2022-12-18 16:33:05 +01:00
SirLynix 830eee78a8 Math: Rework Box and Rect classes 2022-12-18 14:57:14 +01:00
SirLynix 8b101114d1 Minor fixes 2022-12-08 19:20:54 +01:00
SirLynix a5d4b8f28d Renderer/DebugDrawer: Add support for Frustum 2022-12-08 18:17:13 +01:00
SirLynix 45d4195527 Math/Box|Rect: Fix Intersect method with zero-sized boxes 2022-11-05 00:49:38 +01:00
SirLynix 364d1bafb4 Math: Add support for Turn angles 2022-09-26 19:09:30 +02:00
SirLynix d60fce169a Fix merge 2022-08-25 12:59:01 +02:00
SirLynix b8ea79c40e Commit current work 2022-08-25 12:59:01 +02:00
SirLynix e5e3026005 Push current work 2022-08-25 12:59:01 +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
Lynix 52f822fbcb Math/Matrix4: Add TransformInverse(translation, rotation, scale) 2022-05-15 22:29:20 +02:00
SirLynix 6469ab5fde Utility: Refactor some algorithms 2022-05-12 18:15:20 +02:00
SirLynix c209552f81 Math/Matrix4: Rework "transform matrix" support 2022-04-19 18:32:16 +02:00
Jérôme Leclercq 01061380ee Audio/AudioDevice: Improve GetListenerRotation 2022-03-17 18:15:53 +01:00
Jérôme Leclercq 6165b3a101 Audio: Rewrite audio module 2022-03-17 18:15:53 +01:00
Jérôme Leclercq fe16584c8c Minor fixes 2022-02-23 23:48:20 +01:00
Jérôme Leclercq 6457854e03 Minor fixes 2022-02-04 13:54:26 +01:00
Jérôme Leclercq 8a3a8547dc Add light support (WIP) 2022-02-02 12:55:39 +01:00
SirLynix 89c7bbf197 Update copyright date 2022-01-01 15:30:09 +01:00
Jérôme Leclercq 01cd4986cc Minor fixes 2021-11-28 20:19:37 +01:00
Jérôme Leclercq a1b5e5b4f4 Math/Vector3: Fix ToString() 2021-11-21 19:06:33 +01:00
Jérôme Leclercq 32c204e95f Minor fixes 2021-10-29 13:29:49 +02:00
Jérôme Leclercq f491ee1e38 Apply inclusion fix 2021-10-27 18:09:19 +02:00
Jérôme Leclercq 93ec196dc4 Apply header guard check 2021-10-26 15:52:46 +02:00
Jérôme Leclercq ed7ab31933 Apply copyright fix to all files 2021-10-26 14:31:35 +02:00
Jérôme Leclercq a66f6faed1 Add widgets (WIP) 2021-10-04 09:25:45 +02:00
Jérôme Leclercq 2b9d8becea Math: Rework Frustum class 2021-08-23 18:43:34 +02:00
Jérôme Leclercq 8546631f62 Add frustum culling (WIP) 2021-08-19 23:26:34 +02:00
Jérôme Leclercq 8db8533300 Fixes a lot of warnings and move math enums to enum classes 2021-08-19 20:27:20 +02:00
Jérôme Leclercq f2bb1a839c Math/Matrix4: Remove implicit conversion to pointer 2021-07-03 18:20:00 +02:00
Jérôme Leclercq dbe4abefb8 Math: Add PidController class 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 b85cb174ce Reverse Y axis (+Y is now up) 2021-06-06 15:59:25 +02:00
Jérôme Leclercq bd1f5214b8 Math: Replace M_PI defines with template constexpr constants 2021-06-05 16:35:15 +02:00
Jérôme Leclercq 12e9edd2d7 Math/Algorithm: Fix missing implementation of Clamp for Angles 2021-06-01 18:04:18 +02:00
Jérôme Leclercq b6094bf1dd Math/Matrix4: Update projection matrix formula 2021-06-01 17:39:15 +02:00
Jérôme Leclercq 4d74cef034 Math: Remove NAZARA_MATH_ANGLE_RADIAN and functions using it 2021-06-01 17:37:40 +02:00
Jérôme Leclercq 2ef772cec7 Merge branch 'nazara-next' into graphics-next 2021-01-28 16:37:46 +01:00
Jérôme Leclercq a1c15a8c16 Math: Add SetBit and TestBit 2020-12-30 18:14:41 +01:00
ImperatorS79 4bf49876c6 Build Nazara on macos up to Nazara_network (not included 2020-11-21 20:05:19 +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 790815e9ee Merge branch 'master' into nazara-next 2020-09-17 20:28:11 +02:00
Jérôme Leclercq 0cadaecbd2 Fix that clang warning 2020-09-07 16:21:43 +02:00
Jérôme Leclercq 193deb6c04 Fix some minor stuff 2020-09-06 17:09:39 +02:00
Jérôme Leclercq 0ff0425045 Some more fixes, hopefully GCC will stop shitting itself now 2020-08-27 23:22:13 +02:00
Jérôme Leclercq b2a7e620e0 Merge branch 'master' into nazara-next 2020-08-27 20:12:36 +02:00
Jérôme Leclercq 1a12e18a36 Fix copyright dates and some defines 2020-08-11 00:01:49 +02:00
Lynix 52c24e76db SDK/Physics2D: Fix entity rotation not being taken into account for static physics 2020-06-02 17:06:01 +02:00
Lynix b1b9030359 Math/Vector[I]: Replace implicit pointer conversion by [] operator overload 2020-05-26 16:03:57 +02:00
Lynix 3b440254da Math/Vector[I]: Set method: Replace array by pointer 2020-05-26 15:58:15 +02:00
Lynix b2d3605cf4 Fix includes 2020-04-10 17:36:43 +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 dba9bb8b47 Math: Add Rect(u)i64 using 2019-12-22 17:00:48 +01:00
Lynix bcc10a1ee2 Math/Matrix4: Add Decompose 2019-12-10 09:49:52 +01:00
Lynix be8e89b228 Math: Remove all Set(class) methods 2019-12-10 09:49:40 +01:00
Lynix 8c7d886f73 Math/Algorithm: Reenable constexpr 2019-04-15 14:16:57 +02:00
Lynix b6c1bfb5d0 Math/Vector4: Fixed missing implementation 2019-03-16 15:43:37 +01:00
Lynix c2a44f7616 Math: Added Vector[2|3|4](u)i64 typedefs 2019-03-16 15:40:52 +01:00
Jérôme Leclercq 5e45983953 Math/Angle: Fix compilation & warning on GCC < 8 2018-10-12 17:09:39 +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
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 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 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 e4b67019cb Math/Vector[2|3]: Removed Distancef and made Distance templated 2018-07-02 18:13:14 +02:00
Jérôme Leclercq 2f2b1f101b Core/Quaternion: Fix Inverse method 2018-04-12 12:45:19 +02:00
Lynix 271565d1b9 And fix compilation again 2018-03-20 22:11:42 +01:00
Lynix bca94e0955 Fix compilation 2018-03-20 21:59:27 +01:00
Lynix 8926f09511 Revert "Try to fix compilation"
This reverts commit a32408a4d7.
2018-03-20 21:57:28 +01:00
Lynix a32408a4d7 Try to fix compilation 2018-03-20 21:50:16 +01:00
Lynix ad82de2962 Replace typedef keywords by using 2018-03-20 20:59:04 +01:00
Lynix 69f079fcc8 Core/Serialization: Add type tag parameters 2018-03-20 20:56:06 +01:00
Lynix 0063ca9950 Math/VectorI: Remove array constructor 2018-02-18 18:57:30 +01:00
germinolegrand 1e55c4d9e9 Prerequisites instead of Prerequesites (typo) #152 (#153) 2018-01-16 12:23:01 +01:00
Jérôme Leclercq 4b6d7d2e47 Math/Algorithm: Fix typo 2018-01-05 15:39:56 +01:00
Lynix 99c974c141 Fix compilation 2017-12-15 00:19:45 +01:00
Lynix fd8306f17f Core/String: Replace implicit operator std::string by ToStd::String 2017-12-14 19:50:06 +01:00
Jérôme Leclercq 0a5cbe656f Math/VectorI: Make array/pointer constructor explicit 2017-11-23 13:21:51 +01:00
Gawaboumga f991a9529e General bug fixes (#142)
* Core/Bitset: Fix TestAll method

* Fix documentation

* Fix color and their conversions

* Core/ByteStream: Fix return of Write

* Fix compiler warnings

* Math/Algorithm: Fix angle normalization

* Math/BoundingVolume: Fix lerp

* Math: Fix relation between Matrix4 and Quaternion

* More tests

* X11/Window: Fix mouse moved event generated when doing Mouse::SetPosition

* Update ChangeLog

* Should fix compilation on Windows

* Should fix compilation on Windows

Forgot to include array for Windows
2017-11-21 12:16:46 +01:00
Gawaboumga 41a1b5d493 Physics2D tests (#129)
* Quaternion: Fix singularity on Z axis when converting to euler angles

* CollisionComponent2D: Add method to retrieve AABB

* Collider2D: Fix constructor for Box with Vector2

* Physics2D: Fix rotation (Chipmunk works with radian and Nazara degrees) and copy constructor of RigidBody2D

* Colider2D: Add New for convex and tests for the new classes
2017-08-20 21:47:23 +02:00
Jérôme Leclercq 4f1d52b395 Fix [Box|Rect]::Contains including outer border points 2017-06-01 17:24:28 +02:00
Lynix 883d7b02a7 Math/Algorithm: Optimize NumberEquals unsigned and float cases 2017-04-22 15:08:43 +02:00
Lynix 06038a4d81 Cleanup pass 2017-04-22 15:08:05 +02:00
Jérôme Leclercq 7b4f438065 Math/Algorithm: Fix NumberEquals for signed integers 2017-04-14 16:53:03 +02:00
DrLynix f383eca19a Update copyright year 2017-01-20 12:58:35 +01:00
Lynix 937fdef953 Math/Sphere: Fix ExtendTo method 2016-12-15 19:27:05 +01:00