Commit Graph

3477 Commits

Author SHA1 Message Date
SirLynix 147f1bc1cf Math/Vector3: Add GetAbs method 2023-05-01 17:05:26 +02:00
SirLynix dcc23ef7c2 Graphics/Tilemap: Fix layer update when enabling tiles
Thanks to @jube for noticing!
2023-05-01 10:37:14 +02:00
SirLynix 3957687a31 OpenGLRenderer/CommandBuffer: Replace std::visit by a switch (to improve performance) 2023-04-30 21:12:33 +02:00
SirLynix 97f1c2c56c Refactor xmake.lua and make some warnings as errors 2023-04-30 21:11:30 +02:00
SirLynix 445ed93fbb Core/ApplicationBase: Fix compilation with Apple Clang 2023-04-24 10:58:16 +02:00
SirLynix de5e7bd8a8 Core/ApplicationBase: Add support for updaters with intervals 2023-04-23 19:45:33 +02:00
SirLynix d717335bca VulkanRenderer: Fix unitybuild causing #define issue because of Windows.h 2023-04-12 14:13:34 +02:00
SirLynix 2f5db80183 Remove empty source files 2023-04-11 13:51:11 +02:00
SirLynix 670389d268 xmake check-files -f 2023-04-10 17:12:23 +02:00
SirLynix 26b23ccce6 Rename Physics2D to ChipmunkPhysics2D 2023-04-10 17:12:23 +02:00
SirLynix 1415dcbf1a JoltPhysics3D: Add JoltConvexHullCollider3D 2023-04-10 17:12:23 +02:00
SirLynix d610baf920 JoltPhysics3D: Rework RigidBody wrapper
- Add a clear way to setup dynamic/kinematic or static bodies
- Body registration to the world is batched (all bodies created before a physics step are added together, which is what Jolt is optimized for)
- Added support for empty shapes (= rigid bodies without collision) using a very small shape and tagging the body as sensor
2023-04-10 17:12:23 +02:00
SirLynix 67b1710adb JoltPhysics3D/JoltCollider3D: Set convex radius by default 2023-04-10 17:12:23 +02:00
SirLynix 61724cc4b9 JoltPhysics3D: Add distance constraint 2023-04-10 17:12:23 +02:00
SirLynix 8d25495bab JoltPhysics3D: Add some methods to JoltCharacter 2023-04-10 17:12:23 +02:00
SirLynix efc81ff508 BulletPhysics3D: Fix movement 2023-04-10 17:12:23 +02:00
SirLynix 6447686ad9 JoltPhysics3D: Add JoltPivotConstraint3D 2023-04-10 17:12:23 +02:00
SirLynix d697450a60 JoltPhysics3D: Add raycast hit normal 2023-04-10 17:12:23 +02:00
SirLynix 1387ac6e35 JoltPhysics3D: Add capsule collider 2023-04-10 17:12:23 +02:00
SirLynix a4ba7d6115 JoltPhysics3D:: Improve characters 2023-04-10 17:12:23 +02:00
SirLynix 2b0239b8f0 JoltPhysics3D: Fix crash when freeing compoites colliders 2023-04-10 17:12:23 +02:00
SirLynix b3595178a1 JoltPhysics3D: Add RaycastQuery and RaycastQueryFirst 2023-04-10 17:12:23 +02:00
SirLynix 63d75e8904 Physics3D/PhysWorld3D: Add generic RaycastQuery 2023-04-10 17:12:23 +02:00
SirLynix 4d42c0cf9c Physics3D/Constraint3D: Add Damping/ImpulseClamp properties 2023-04-10 17:12:23 +02:00
SirLynix 3efd422e86 BulletPhysics3D: Add StaticPlaneCollider3D 2023-04-10 17:12:23 +02:00
SirLynix 021801f02e Continue Jolt integration 2023-04-10 17:12:23 +02:00
SirLynix c5ac142888 Add JoltPhysics3D for a performance test 2023-04-10 17:12:23 +02:00
SirLynix bd4c2d6ee7 Rename Physics3D to BulletPhysics3D 2023-04-10 17:12:23 +02:00
SirLynix 5cbc435e1a Physics3D: Add PivotConstraint3D 2023-04-10 17:12:23 +02:00
SirLynix 522315dbca Physics3D: Add raycast support 2023-04-10 17:12:23 +02:00
SirLynix 5ee25e9621 Physics3D: Use pool for rigid bodies (+ sort them to improve cache) 2023-04-10 17:12:23 +02:00
SirLynix 1f68cfa6c2 Physics3D/Collider3D: Use btEmptyShape for NullCollider3D
Having no collider seems to break physics
2023-04-10 17:12:23 +02:00
SirLynix 795efae3a0 Physics3D: Switch from Newton Dynamics to Bullet3 2023-04-10 17:12:23 +02:00
SirLynix ec1efb5e56 Fix previous commit 2023-04-06 19:08:27 +02:00
SirLynix c7b1c8b155 Core/AppFilesystemComponent: Fix Open with physical files 2023-04-06 19:01:07 +02:00
SirLynix 3cf50221c5 Graphics/GraphicsComponent: Add constructor taking an instanced renderable 2023-04-05 08:51:58 +02:00
SirLynix 40b6102977 Utility/Node: Add a constructor taking translation/rotation/scale 2023-04-05 08:51:24 +02:00
SirLynix 0656b388bc Graphics/GraphicsComponent: Add GetAABB method 2023-04-04 08:25:30 +02:00
SirLynix 44aec8d5a5 Allow to load image and textures cubemap/arrays from file using the AppFilesystemComponent
Renames LoadCubemap and LoadArray to Load with additional parameters and allows AppFilesystemComponent to pass additional parameters to them
2023-04-04 08:24:52 +02:00
SirLynix 36643f173b Widgets/CheckboxWidget: Add GetState() method 2023-03-26 14:23:10 +02:00
SirLynix 3c32f21c4a Utility/Node: Add missing SetTransform overload 2023-03-25 15:19:58 +01:00
SirLynix 883b54e6d3 Physics2D: Fix the way newly physics entities are setup 2023-03-25 14:47:35 +01:00
SirLynix 3e99ce6be5 Utility/VelocitySystem: Use Time instead of float for elapsed time 2023-03-25 14:44:44 +01:00
SirLynix 6fd90d63ef Fix check-files 2023-03-21 13:21:49 +01:00
SirLynix 507cd27eaf Start working on documentation generator 2023-03-21 13:21:00 +01:00
SirLynix 9b4d297c04 Update includes for new NazaraUtils version 2023-03-19 13:01:56 +01:00
SirLynix 27996d16d9 Math/Quaternion: Fix RotationBetween with non-normalized vecs 2023-03-19 12:06:29 +01:00
Lynix 7a980044cd Fix compilation 2023-03-18 22:06:56 +01:00
SirLynix 285b3e132c Renderer: Disable validation by default in release 2023-03-17 19:26:45 +01:00
SirLynix b354f7f87d Math/Quaternion: Fix RotationBetween not handling parallel vectors 2023-03-17 19:24:57 +01:00
SirLynix 506d3939a8 Minor improvements 2023-03-17 19:24:33 +01:00
SirLynix 8b734caeac Utility/Node: Massively improve skeletal animations performance by allowing to invalidate the whole skeleton only once
Thanks to @SirMishaa for pointing that out
2023-03-17 19:22:09 +01:00
SirLynix 3c2172103a Minor fixes² 2023-03-14 18:08:29 +01:00
SirLynix 88b6ff63b7 Graphics/AbstractViewer: Add Project & Unproject methods 2023-03-14 18:07:03 +01:00
SirLynix 488f3ca6ef Minor fixes 2023-03-14 18:06:14 +01:00
SirLynix e3f1000f17 Platform: Remove unused header 2023-03-14 18:05:14 +01:00
SirLynix 99c8027fd0 Remove .inl inclusion of their .hpp files
It has no real purpose and is breaking Clang parsing
2023-03-10 13:33:10 +01:00
SirLynix b28a0a8748 OCD fix 2023-03-10 13:25:37 +01:00
SirLynix 75b6ba8dab Renderer: Fix frontFace and primitiveMode not being part of RenderStates key 2023-03-10 13:24:48 +01:00
SirLynix b0b9c61558 Utility/Mesh: Add Build overloads 2023-03-09 17:51:16 +01:00
SirLynix 3edffa8399 Graphics/MaterialInstance: Add UpdatePassesStates 2023-03-09 17:51:03 +01:00
SirLynix 55f2937678 Graphics/GraphicalMesh: Add AABB 2023-03-09 17:50:38 +01:00
SirLynix a96722d4ec Graphics/Tilemap: Fix UpdateAABB warning 2023-03-09 17:49:25 +01:00
SirLynix c67e290b51 Core/ResourceParameters: Add virtual destructor (fix render device destruction) 2023-03-09 17:48:52 +01:00
SirLynix 7e18c4a46e Math/Quaternion: Fix LookAt forward vector 2023-03-09 17:48:14 +01:00
SirLynix d7dda716fe Warning fixes 2023-03-05 18:01:20 +01:00
SirLynix f2197800bc Core/VirtualDirectory: Fix inner resolving 2023-03-05 18:01:14 +01:00
SirLynix f51514ebb6 Update global headers 2023-03-05 18:01:01 +01:00
SirLynix 36dd245564 Core: Rework VirtualDirectory to allow custom directory resolving 2023-03-03 13:21:48 +01:00
SirLynix 0494a72849 Core/Stream: Add HashAppend overload 2023-03-03 13:19:12 +01:00
SirLynix 34abeeb7bd Core/Stream: Add MemoryMapped stream options (allowing for direct memory access) 2023-03-03 13:18:51 +01:00
SirLynix 3000345eab Core: Add OwnedMemoryStream class 2023-03-03 13:16:33 +01:00
SirLynix 2629d2052e xmake check-files -f 2023-03-03 13:16:13 +01:00
SirLynix 93ff30f53a Core/ByteArray: Add constructor taking the container by value
Allowing to move the content
2023-03-03 13:15:51 +01:00
SirLynix 6bf4304817 Core/File: Add OpenMode::Defer 2023-03-03 13:14:28 +01:00
SirLynix 36d7e98299 Graphics/PointLight: Fix bounding volume 2023-02-26 19:04:52 +01:00
SirLynix 7f06d8db2b Graphics: Fix render queue keys
I have no idea how I messed this up
2023-02-26 18:51:59 +01:00
SirLynix 20ad93f1c9 VulkanRenderer: Add support for VK_EXT_debug_report
Some older drivers (Android) don't support VK_EXT_debug_utils
2023-02-26 13:48:25 +01:00
SirLynix 6df919eb70 Renderer/WindowSwapchain: Don't create swapchain on minimized window
This is mainly to prepare for Android "windows" where the window is considered minimized when app is in the background (and thus has no ANativeWindow to render to)
2023-02-26 13:45:18 +01:00
SirLynix 421e684344 OpenGLRenderer: Fix FboFramebuffer making context switches
When a window was created and rendered onto, FBO rendering was made on the device reference context which required a context switch.

This has been fixed with OpenGLFboFramebuffer managing a per-context framebuffer and creating one when needed
2023-02-26 13:43:21 +01:00
SirLynix 2e8ea0e887 Graphics/TextSprite: Fix outline showing up over glyphs 2023-02-22 19:12:15 +01:00
SirLynix 5833ce573d Graphics: Switch glyph atlases to R8 instead of A8
A8 can't be supported efficiently on API lacking texture swizzle support (DX, WebGL, WebGPU), so we swizzle in the shader instead
2023-02-22 19:11:41 +01:00
SirLynix b38f9dc79b Core/Log: Pass string_view by value instead of ref 2023-02-22 19:04:07 +01:00
SirLynix e96204a2ab Graphics/AbstractViewer: Set virtual destructor 2023-02-15 16:33:02 +01:00
SirLynix dd97832430 Core/AppFilesystemComponent: Add MountDefaultDirectories 2023-02-08 12:19:01 +01:00
Jérôme Leclercq 20f70533c0
Fix wasm ci (#391)
* Update wasm-build.yml

* Set embed_rendererbackends with wasm

* wasm fixes

* Fix CI

* Update wasm-build.yml

* More wasm fixes

* Final fixes
2023-02-05 15:03:48 +01:00
SirLynix 5a57aca66a Last changes 2023-02-02 20:34:25 +01:00
SirLynix 292ca60592 WIP 2023-02-02 20:34:25 +01:00
SirLynix 5b3703347f OpenGLRenderer: Use a single context with WebGL 2023-02-02 20:34:25 +01:00
SirLynix ea5c5240fc Improve emscripten support 2023-02-02 20:34:25 +01:00
REMqb 7cb90782de ~ fix post rebase & dirty fix avoid deleting shaders before linking them 2023-02-02 20:34:25 +01:00
REMqb f172330aaf ~ WIP port emscripen (WebGL) 2023-02-02 20:34:25 +01:00
SirLynix 304bf35c08 Core/AppFilesystemComponent: Add Open method 2023-02-02 18:30:36 +01:00
SirLynix 3d2aa94ac4 Core/AppFilesystemComponent: Rename GetOrLoad to Load 2023-02-02 18:30:24 +01:00
SirLynix 35172f5028 Fix some warnings 2023-02-02 13:28:36 +01:00
SirLynix 88a0bf95ca Utility/ImageStream: Use Time class instead of UInt64 for frametime 2023-02-02 13:27:21 +01:00
SirLynix 6508b84e5c Platform/AppWindowingComponent: Fix missing initialization of "quit on last window closed" 2023-02-02 13:10:18 +01:00
SirLynix eb74c6ed07 Restore plugin prefix 2023-01-29 21:59:24 +01:00
SirLynix 8bc953240d Core/FilesystemComponent: Add a way to fix indices accross DLL boundaries 2023-01-29 18:13:35 +01:00
SirLynix 3f200edeb6 Graphics: Set default render mask for LightComponent and GraphicsComponent 2023-01-29 11:38:08 +01:00
SirLynix 4a91f3d470 Renderer: Make WindowSwapchain a RenderTarget
To make it easier to handle window re-creation
2023-01-29 10:38:35 +01:00
SirLynix 97fa4d98be Rework EnTT integration
- Update EnTT to 3.11.1
- Moved EnTT wrapper to EnTTWorld, inheriting EntityWorld
- AppEntitySystemComponent can now handles multiple EntityWorld
- Headers relying on EnTT are now automatically included if NAZARA_ENTT is defined
- Renamed SystemGraph to EnttSystemGraph (as it depends on it for now)
2023-01-28 19:28:43 +01:00
SirLynix d27ca55943 Core/AppFilesystemComponent: Add support for default resource parameters 2023-01-28 11:27:49 +01:00
SirLynix ca0c4a5db7 Core: Add AppFilesystemComponent 2023-01-22 18:00:26 +01:00
SirLynix f98cbcd00a Copyright year update 2023-01-22 17:41:18 +01:00
SirLynix 2b7ff9274c Core/Application: Add updaters 2023-01-22 12:37:58 +01:00
SirLynix a71d4885f9 Core/Application: Accept module configuration 2023-01-22 12:37:58 +01:00
SirLynix d3c05c9ade Update globalheaders and fix includes/header guards 2023-01-22 12:37:58 +01:00
SirLynix da9eb14ebe Handle windows and EnTT with application components 2023-01-22 12:37:58 +01:00
SirLynix 18851c9185 Replace RenderWindow with swapchains 2023-01-22 12:37:58 +01:00
Lynix 8db1c04568 Make Application template and responsible for modules init 2023-01-22 12:37:58 +01:00
SirLynix 04bfa97579 Add Application base classes (WIP) 2023-01-22 12:37:58 +01:00
SirLynix ba3f26d074 Minor fixes 2023-01-21 19:10:51 +01:00
SirLynix a1480fc2db Graphics: Fix text atlas resizing 2023-01-21 19:10:40 +01:00
Lynix cc1246dcac VulkanRenderer: Fix 32bits compilation 2023-01-02 22:11:00 +01:00
SirLynix a8b6d9cb42 Renderer/RenderFrame: Use FunctionRef instead of std::function to avoid allocations 2023-01-01 19:48:51 +01:00
Jérôme Leclercq dd421a6385
Replace float/UInt64 durations by a more precise Time class (#388)
Improve Clock class with atomic RestartIfOver method and allows to choose required precision
2022-12-29 21:31:46 +01:00
SirLynix 2243d0b1a7 Move free operator overloads inside Nz namespace 2022-12-29 12:15:22 +01:00
SirLynix 763bef3fdd Core: Make Uuid constexpr 2022-12-29 12:13:18 +01:00
SirLynix 9a553e5e9d Core: Make Color constexpr 2022-12-29 12:13:00 +01:00
SirLynix fe8715f1fb Renderer: Working compute implementation 2022-12-25 19:19:16 +01:00
SirLynix 4605eed0da Add compute demo (WIP) + fixes creation of compute pipelines 2022-12-25 19:19:16 +01:00
SirLynix 9578ba3ef5 Add initial support for compute pipelines 2022-12-25 19:19:16 +01:00
SirLynix e4064997d8 Renderer: Split OpenGL and OpenGL ES in two RenderAPI enums 2022-12-25 16:11:28 +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 627b7a1972 Graphics/Light: Fix warning in release 2022-12-18 15:04:01 +01:00
SirLynix 3c86b84e13 Graphics: Rework tilemap class (and fix its AABB) 2022-12-18 14:57:40 +01:00
SirLynix 830eee78a8 Math: Rework Box and Rect classes 2022-12-18 14:57:14 +01:00
SirLynix d4422c4102 Graphics: Add origin to all sprite-based renderables (and made it a factor) 2022-12-17 14:48:50 +01:00
Jérôme Leclercq 0537be3201
Graphics/Sprite: Fix SetTextureRect 2022-12-14 09:53:23 +01:00
SirLynix 8b101114d1 Minor fixes 2022-12-08 19:20:54 +01:00
SirLynix f8238a6e6c Graphics: Implement point-light shadow-mapping 2022-12-08 18:17:13 +01:00
SirLynix 39f206d60e Fix rebase error 2022-12-08 18:17:13 +01:00
SirLynix 5a57976b4b Graphics/FrameGraph: Add support for cubemap and slice rendering 2022-12-08 18:17:13 +01:00
SirLynix 4ae3f51174 VulkanRenderer: Fix views and arrays support 2022-12-08 18:17:13 +01:00
SirLynix 56acbb2694 Renderer: Improve texture view support (and support emulation for OGL) 2022-12-08 18:17:13 +01:00
SirLynix 08ea4c87a7 Improve texture view support 2022-12-08 18:17:13 +01:00
SirLynix 42f8cdb151 Add initial support for texture views 2022-12-08 18:17:13 +01:00
SirLynix 902dee6121 Renderer/TextureInfo: Separate layerCount from size 2022-12-08 18:17:13 +01:00
SirLynix 1768f20365 Graphics: Move shadow-mapping related code to LightShadow classes 2022-12-08 18:17:13 +01:00
SirLynix ec3bc45544 Graphics/LightComponent: Replace AttachLight with AddLight 2022-12-08 18:17:13 +01:00
SirLynix d7eab778fb Graphics/FrameGraph: Add FramePassAttachmentSize enum instead of boolean 2022-12-08 18:17:13 +01:00
SirLynix f580ba523d Graphics: Send shadow map res to shader 2022-12-08 18:17:13 +01:00
SirLynix 3623f4ccc4 Add support for moving shadow-casting lights 2022-12-08 18:17:13 +01:00
SirLynix a5d4b8f28d Renderer/DebugDrawer: Add support for Frustum 2022-12-08 18:17:13 +01:00
SirLynix 6ef4c14772 Renderer: Change binding members order 2022-12-08 18:17:13 +01:00
SirLynix e990a320cc WIP 2022-12-08 18:17:13 +01:00
SirLynix 4a10c1f8fe Add shadow mapping (wip) 2022-12-08 18:17:13 +01:00
SirLynix b79718404c Fix OpenAL extensions functions 2022-12-06 12:54:22 +01:00
Jérôme Leclercq 346fbdda05
Remove wrongly committed file 2022-12-06 09:14:15 +01:00
SirLynix 75bbc5df09 Minor fixes 2022-12-06 09:07:18 +01:00
SirLynix f2c83df8ff OpenGLRenderer: Print GL call and parameters on failure 2022-12-06 07:53:32 +01:00
SirLynix ccf77ac459 OpenGLRenderer: Setup draw buffers only once 2022-12-06 07:49:41 +01:00
SirLynix 2dd0e7d9c8 Audio: Add an option to directly link OpenAL 2022-12-06 07:48:03 +01:00
SirLynix 98cf8b3d33 Fix compilation 2022-12-03 11:48:58 +01:00
SirLynix 77642cf431 Renderer: Implement and use debug names 2022-12-02 22:46:43 +01:00
Lynix 02387b8fe3 Graphics: Add Tilemap 2022-11-25 19:28:22 +01:00
SirLynix 85b7e06ae8 Fix some additional warnings 2022-11-19 13:44:33 +01:00
SirLynix 5ca2cf9320 Fix a bunch of warnings 2022-11-19 11:02:16 +01:00
SirLynix 842e797cc4 Fix a bunch of warnings 2022-11-13 16:12:49 +01:00
SirLynix 640d877761 Forgot this file 2022-11-07 02:16:47 +01:00
SirLynix ad1f3bc321 Graphics/Graphics: Add preferred depth format 2022-11-06 23:45:37 +01:00
Lynix 0133a91c4d OpenGLRenderer: Fix FBO clearing when scissor is enabled 2022-11-06 15:31:55 +01:00
SirLynix 45d4195527 Math/Box|Rect: Fix Intersect method with zero-sized boxes 2022-11-05 00:49:38 +01:00
SirLynix fe0d70d9e1 Graphics/MaterialInstance: Add LoadFrom* 2022-11-05 00:28:33 +01:00
SirLynix 1205155466 Graphics/Material: Rename CreateInstance to Instantiate 2022-11-05 00:14:16 +01:00
SirLynix 6b8be23fa0 Switch index/vertex count to UInt32 2022-10-31 19:54:25 +01:00
Jérôme Leclercq dc6ce8427c
Refactor material system (#382) 2022-10-31 19:53:41 +01:00
SirLynix 364d1bafb4 Math: Add support for Turn angles 2022-09-26 19:09:30 +02:00
SirLynix 6372f9cad8 Fix compilation 2022-09-24 16:02:32 +02:00
SirLynix 6d0b53b39e Core: Rework HardwareInfo 2022-09-24 15:52:29 +02:00
SirLynix 9cd7976a91 Remove "MemoryManager" and very old code 2022-09-24 14:25:52 +02:00
SirLynix 6bf4ccaae1 Core/ParameterList: Rework Parameter getter using Result 2022-09-09 13:47:06 +02:00
SirLynix e063c7b45e Network/ENet: Add DisconnectTimeout event 2022-09-09 12:56:50 +02:00
SirLynix 99c9df5731 Graphics: Add default materials 2022-09-08 08:57:11 +02:00
SirLynix fbdc1faf8c Graphics: Add TextureLoader 2022-09-07 13:31:21 +02:00
SirLynix 47cb878f9d Major ResourceLoader rework (using Nz::Result) 2022-09-07 13:31:04 +02:00
SirLynix 131faa4fbd OpenGLRenderer: Take advantage of glClipControl if available 2022-09-06 13:01:44 +02:00
SirLynix 359c176b03 Network/ENetHost: Expose AllocatePacket 2022-09-01 20:21:27 +02:00
SirLynix 25f44a624a Fix compilation 2022-08-30 19:45:05 +02:00
SirLynix 04d2f4a6c2 Graphics/MaterialPipeline: Rework GetRenderPipeline
Decrease the need for memory allocations in most cases (especially for sprites)
2022-08-30 19:29:23 +02:00
SirLynix 017a6c7af3 Graphics: Use memory pools for render elements 2022-08-30 19:27:52 +02:00
SirLynix 7949c57f16 Utility: Add a better way to attach objects to joints 2022-08-30 18:31:04 +02:00
Lynix 45c947faf1 Core/PoolByteStream: Fix pool returning on Reset 2022-08-28 17:54:49 +02:00
SirLynix 50ed8b4028 Add initial support for skeletal entities / components 2022-08-27 03:07:48 +02:00
SirLynix 642d043fd8 Fix MinGW compilation 2022-08-25 12:59:01 +02:00
SirLynix 9e56592211 Skeleton: Fix method name 2022-08-25 12:59:01 +02:00
SirLynix 133caac5b5 Minor fixes 2022-08-25 12:59:01 +02:00
SirLynix 8d39441bd1 Utility/Skeleton: Add GetRootJoint method 2022-08-25 12:59:01 +02:00
SirLynix 7ada266917 Graphics: Add PredefinedSkeletalData 2022-08-25 12:59:01 +02:00
SirLynix 987c23c3ef Fix link issues 2022-08-25 12:59:01 +02:00
SirLynix 3a366cc1e4 Core: Rewrite plugin system 2022-08-25 12:59:01 +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 a7ab2fbaf4 Utility: Replace Skin* by SkinLinearBlend function 2022-08-25 12:59:01 +02:00
SirLynix e5e3026005 Push current work 2022-08-25 12:59:01 +02:00
SirLynix 104f60f3e7 Add support for GPU skinning (WIP) 2022-08-25 12:59:01 +02:00
SirLynix 507a4f16be Fix compilation 2022-08-17 20:22:49 +02:00
SirLynix c669c68533 Minor fixes 2022-08-17 20:13:00 +02:00
SirLynix f1549b934c Graphics: Add DebugDrawer support 2022-08-17 20:12:49 +02:00
SirLynix 4a5f866754 Renderer: Add DebugDrawer 2022-08-17 20:11:06 +02:00
SirLynix 099528758c OpenGLRenderer: Fix explicit texture/block binding (fixes GLSL ES 3.0 support) 2022-08-12 23:01:58 +02:00
SirLynix a108e6ce65 VulkanRenderer: Update headers and VMA 2022-08-10 00:24:13 +02:00
SirLynix 117f7c2a4b Renderer: Allow to enable or disable API validation layers using config 2022-08-10 00:04:46 +02:00
SirLynix 38e32025e9 Add a way to embed renderer backends code into NazaraRenderer 2022-08-07 20:19:04 +02:00
SirLynix 09d21b4a45 Fix usage from C++20 2022-08-03 20:11:25 +02:00
SirLynix 27dab13484 Fix BoxLayout 2022-08-02 08:13:17 +02:00
SirLynix caa9d4c11e Remove ProgressBarWidget for now 2022-08-02 08:13:17 +02:00
SirLynix e51695274c Widgets: Fix ScrollAreaWidget 2022-08-02 08:13:17 +02:00
SirLynix 0fcf24f336 Widgets: Rework event dispatching 2022-08-02 08:13:17 +02:00
SirLynix 05c78da22a WIP 2022-08-02 08:13:17 +02:00
Lynix c728e0cf5d Add initial support for PBR material data 2022-07-19 20:02:40 +02:00
Lynix ad8b46db38 Rename Diffuse to BaseColor 2022-07-19 20:02:01 +02:00
SirLynix ccd7885213 Fix compilation 2022-07-18 22:04:44 +02:00
SirLynix 3e21b4bea6 Add PBR rendering (WIP) 2022-07-18 22:04:44 +02:00
SirLynix 96599d1116 Graphics: Add LinearSlicedSprite class 2022-07-12 08:45:02 +02:00
SirLynix 6203d5f0d1 Graphics/SlicedSprite: Fix GetTopLeftCorner linking 2022-07-12 08:44:43 +02:00
SirLynix 3507ec570f Network: Fix ENetPacket 2022-07-07 08:50:18 +02:00
SirLynix 2229dfd6e5 Core/VirtualDirectory: Handle physical directories as virtual directories 2022-07-07 08:50:03 +02:00
SirLynix e7f4714747 Core/SystemGraph: Fix GetSystem 2022-07-07 08:45:02 +02:00
SirLynix 1b678defae Add system graph (wip) 2022-07-02 19:45:50 +02:00
SirLynix 4d24be2ae9 Utility/NodeComponent: Use entt::handle for SetParent 2022-07-02 19:45:33 +02:00
SirLynix d5f70279a1 Utility: Add velocity component and system 2022-07-02 19:43:58 +02:00
SirLynix 99b4397d78 Core: Add Lifetime component and system 2022-07-02 19:43:02 +02:00
SirLynix a61ebb7806 OpenGLRenderer: enable GL_TEXTURE_CUBE_MAP_SEAMLESS on OpenGL
to match other API behavior
2022-07-02 19:28:20 +02:00
SirLynix 093d9d344e Renderer: Add support for storage buffers 2022-06-17 20:15:16 +02:00
SirLynix 6f18a02999 Add fullscreen vertex shader module 2022-06-16 19:26:57 +02:00
SirLynix 62ba4f172b Graphics/GraphicalMesh: Allow to update submeshes 2022-06-16 18:19:48 +02:00
SirLynix 8e8bee7037 Temp fix for NZSL update 2022-06-15 20:26:14 +02:00
SirLynix 16922a9519 Audio/Music: Fix datarace 2022-06-07 20:18:26 +02:00
SirLynix c7b6d83bbc Last nzsl version update 2022-06-07 20:18:16 +02:00
SirLynix d335c5d73c Add FFmpeg plugin 2022-05-27 18:53:16 +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
SirLynix 3f8f1c4653 Core/TypeList: Improve ListConcat compile-time
seriously I have no idea why I implemented it like that
2022-05-19 09:04:06 +02:00
Lynix 0e82c2893a Core/VirtualDirectory: Prevent storing . and .. entries 2022-05-16 21:32:59 +02:00
Lynix 52f822fbcb Math/Matrix4: Add TransformInverse(translation, rotation, scale) 2022-05-15 22:29:20 +02:00
Lynix dd4be081aa Core/VirtualDirectory: Add Uproot property 2022-05-14 10:22:22 +02:00
SirLynix b6ab3ba1b3 Graphics: Add light type 2022-05-12 23:09:40 +02:00
SirLynix 5544d336ab Shader: Fix index remapping when importing a text shader in a precompiled shader 2022-05-12 23:08:21 +02:00
SirLynix 6469ab5fde Utility: Refactor some algorithms 2022-05-12 18:15:20 +02:00
SirLynix 7c2b8e0576 Core/File: Add WriteWhole static function 2022-05-12 18:11:41 +02:00
SirLynix b0ecb64f19 OpenGLRenderer: Fix loading of glSpecializeShader 2022-05-09 13:19:31 +02:00
SirLynix 6dc2cefc2c Add some missing includes 2022-05-09 09:00:17 +02:00
Lynix df55a02fa7 Core/VirtualDirectory: Add GetFileContent method 2022-05-08 15:50:59 +02:00
Lynix 5f389ef0a4 Core/File: Add ReadWhole 2022-05-08 15:50:29 +02:00
Lynix 17b1c2407d Audio/AudioSource: Add GetSampleOffsetAndLatency 2022-05-08 15:44:41 +02:00
SirLynix 41712a3f18 Minor fixes 2022-05-08 13:21:20 +02:00
SirLynix 4794073b73 Audio: Add support for AL_SOFT_source_latency 2022-05-08 13:20:55 +02:00
SirLynix 81085508ec Minor fixes 2022-05-05 20:20:44 +02:00