Commit Graph

404 Commits

Author SHA1 Message Date
Lynix
e336c8a514 Rename ChipmunkPhysics2D and JoltPhysics3D to Physics[2D|3D] 2024-02-09 22:24:15 +01:00
Lynix
139bed2b0a Remove BulletPhysics3D module
Having two physics engine seems redundant, Bullet3 development seems to have halted and JoltPhysics seems to be a better fit to Nazara
2024-02-09 22:24:15 +01:00
SirLynix
17b6449472 UnitTests/Process: Increase waiting duration
GitHub CI seems very slow at this
2024-02-06 11:09:17 +01:00
SirLynix
b69c0bb444 Core/TaskScheduler: Fix deadlock when exiting
If a worker was not given a task, it could happen to ignore the exit signal (for example if it's set before the worker started, causing it to clear the notifier boolean and test it again before checking m_running)
2024-02-04 13:43:55 +01:00
SirLynix
44617bd14d Core/TaskScheduler: Another try to remove race condition 2024-02-04 13:04:29 +01:00
SirLynix
c148bc2851 UnitTests: Increase task scheduler wait duration
it seems GitHub CI is pretty bad at scheduling threads
2024-02-03 23:24:41 +01:00
SirLynix
e3ad9be759 Core/TaskScheduler: Fix work ending condition
Use remaining task count instead of idle worker count, this avoids a race condition where a worker signals idle after being tasked with a new job
2024-02-03 22:40:12 +01:00
SirLynix
c303bf9283 Core/TaskScheduler: Use WorkStealingQueue::pop
steal() can incorrectly return nullptr even if the list is not empty in case of concurrent access, but push and pop are not threadsafe so we use a spinlock to prevent concurrent uses
2024-02-02 23:19:29 +01:00
SirLynix
06a42b4ecb Cleanup code 2024-02-02 17:31:12 +01:00
SirLynix
adc6a5c0a5 Tests: Add task scheduler tests 2024-02-02 16:23:01 +01:00
SirLynix
44e55adcd9 Tests: Add negative Time formatting tests 2024-02-02 14:31:40 +01:00
SirLynix
56751072f5 Add SchedulerBenchmark test 2024-02-02 14:27:37 +01:00
Lynix
9d669f722e Core: Rework TaskScheduler (WIP) 2024-01-31 16:42:25 +01:00
SirLynix
f10671ac2a Core/StringExt: Add TrimLeftCount and TrimRightCount 2024-01-26 15:11:31 +01:00
SirLynix
63c61c0827 Core/StringExt: Fix IsNumber returning true for "-" 2024-01-26 10:11:07 +01:00
SirLynix
625b4f2d9f Core/StringExt: Add Substring family of function (unicode-aware) 2024-01-26 10:02:15 +01:00
SirLynix
9ada93b995 Remove spaces before line feed 2024-01-25 14:38:06 +01:00
SirLynix
bb3b28279b Rename AppComponent classes (AppEntitySystemComponent => EntitySystemAppComponent) 2024-01-24 16:50:04 +01:00
SirLynix
72bd6efcc4 Replace OpenGL headers by opengl-headers xmake package 2024-01-24 16:34:22 +01:00
SirLynix
020f431c72 UnitTests/Process: Increase wait durations 2024-01-23 19:31:21 +01:00
SirLynix
0e5e3ab9dd UnitTests/Process: Flush files to avoid read issues 2024-01-23 19:31:21 +01:00
SirLynix
a228325bd5 Add process unit tests 2024-01-23 19:31:21 +01:00
SirLynix
2bdd6f9351 Graphics/Model: Add model loader 2024-01-05 11:24:25 +01:00
SirLynix
cd8c1cb160 Replace reinterpret_cast from/to pointers to BitCast 2024-01-03 17:19:42 +01:00
Jérôme Leclercq
79ec135af7 Optimize out a lot of std::string construction and allocations (#415)
Update CommandLineParameters.hpp

Update CommandLineParametersTests.cpp

Update WebContext.hpp

xmake check-files -f

Fix MaterialPassRegistry
2023-12-30 14:50:57 +01:00
SirLynix
f7c9060364 UnitTests: Replace Google DNS with Cloudflare DNS 2023-12-30 11:40:20 +01:00
SirLynix
0d37e36b0c Fix UnitTests 2023-12-30 11:14:38 +01:00
Jérôme Leclercq
8e6ca9cb27 Fix compilation 2023-12-30 09:09:05 +01:00
Jérôme Leclercq
7d0d1feea4 Update IpAddress tests
It looks like Google changed their dns
2023-12-30 09:02:01 +01:00
Jérôme Leclercq
3fa3ccc0e0 Improve IP Address tests 2023-12-29 16:08:24 +01:00
Lynix
4065fbfb1a Core/OpenMode: Rename ReadOnly/WriteOnly to Read/Write 2023-12-25 19:49:03 +01:00
SirLynix
754a3d3614 Update unit tests for angle normalization change introduced in 6dc27e7948 2023-12-23 14:36:04 +01:00
SirLynix
f2201404f3 Core/Clock: Add Tick method 2023-12-18 12:15:08 +01:00
SirLynix
83366e93d4 Make changes for breaking NZSL update
Fix build

Fix compilation (again)

Fix global included

TextureAsset belongs to another branch

Add missing include

Fix include (should be good, finally)
2023-12-17 20:40:45 +01:00
SirLynix
6059f608c0 Minor improvements 2023-12-04 00:22:36 +01:00
Lynix
4ee4092bba Cleanup includes 2023-12-02 13:56:24 +01:00
Lynix
079f153640 Minor fixes 2023-11-28 20:05:09 +01:00
SirLynix
72182327dd Core/PrimitiveList: Rework and inline the class 2023-11-26 21:27:24 +01:00
SirLynix
2622951144 Minor fixes 2023-11-26 11:25:52 +01:00
Lynix
1e81b38c0f Graphics: Replace RenderFrame by RenderResources
This changes makes the whole rendering independent from the RenderFrame acquired from the Swapchain.
This may allow to do offscreen rendering (= without swapchain), or multi-window rendering in the future
2023-11-21 23:33:18 +01:00
SirLynix
938ba09d45 Graphics: Rework RenderTargets
- RenderTarget have been moved to the Graphics module and are now lightweight objects between the target of rendering (swapchain or texture)
- RenderTexture no longer require a blit between the framegraph texture and the target texture (the target texture is now directly rendered onto using a new feature of the framegraph)
- ForwardFramePipeline viewers are now properly ordered by render order
2023-11-20 23:00:06 +01:00
SirLynix
aaf3d97954 Graphics: Add RenderTexture class 2023-11-20 12:36:34 +01:00
SirLynix
5a14808a57 Minor fixes 2023-11-17 11:58:03 +01:00
SirLynix
a4b10749f7 C++20 fixes 2023-11-14 15:40:48 +01:00
Lynix
e5789d1749 Switch Nazara to C++20 2023-11-14 14:24:28 +01:00
SirLynix
2ff2cd4a9c Build: Fix asan check 2023-11-12 12:13:14 +01:00
SirLynix
8fb6ea728d Graphics: Add data-driven pipeline passes
Fix compilation
2023-11-06 21:30:49 +01:00
SirLynix
4b8a475bbd Split error macro into two versions (format vs non-formating) to allow format checking at compile-time 2023-11-02 15:18:03 +01:00
SirLynix
929b599337 Graphics/ViewerData: Add near and far plane 2023-10-14 14:46:49 +02:00
SirLynix
b09b4d2419 Graphics: Add a way to set which passes are enabled in a frame pipeline
This will be replaced soon with a better system
2023-10-08 23:44:24 +02:00