Commit Graph

397 Commits

Author SHA1 Message Date
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
SirLynix
e1ccb3187d Core/Color: Add ApproxEqual and make equality exact 2023-09-10 14:43:57 +02:00
SirLynix
21680171a2 Replace GetPlatformEndianness() by PlatformEndianness constexpr
from nazarautils
2023-09-08 09:13:04 +02:00
SirLynix
aef8b01f15 Math/Box: Rename FromExtends to FromExtents 2023-09-08 09:06:26 +02:00
SirLynix
557da10dc6 Rework TextDrawer interface 2023-08-24 17:47:20 +02:00
Lynix
216686e7c1 Add support for static compilation on all platforms 2023-08-22 08:17:03 +02:00
SirLynix
03e63cb664 Fix WebRequestTest once for all 2023-08-17 18:31:12 +02:00
SirLynix
6537864abd Fix WebRequest test (in case headers are lowercased) 2023-08-17 18:18:33 +02:00