Commit Graph

2664 Commits

Author SHA1 Message Date
Lynix 40ade49767 Update global headers 2020-06-17 16:00:16 +02:00
Lynix f38bfdde8a ShaderAst: Big refactor + add binding/location support 2020-06-17 16:00:03 +02:00
Lynix 2258a4f87f Add ShaderValidator 2020-06-06 16:44:17 +02:00
Lynix 8467c79021 Renderer: Add shader serialization 2020-06-05 19:47:29 +02:00
Lynix de1c64253e Fix missing files 2020-06-04 18:31:43 +02:00
Lynix 25562a5856 Renderer/ShaderAst: Add BinaryFunc 2020-06-04 18:29:50 +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 8c2bfd296f Core/StringExt: Prevent empty match call 2020-06-01 16:16:11 +02:00
Lynix effd1b4552 ShaderNode: Handle vector component count at runtime 2020-05-31 18:39:28 +02:00
Lynix 4f9380da11 More Linux fixes 2020-05-27 21:01:14 +02:00
Lynix 7ed0543ad2 Add NAZARA_PLATFORM_GLX back 2020-05-27 20:52:04 +02:00
Lynix 2efb6baaa6 Linux fix 2020-05-27 20:43:42 +02:00
Lynix 3fc4de26e3 ShaderGraph: Improve GLSL generation by introducing DeclareVariable statement 2020-05-27 20:08:41 +02:00
Lynix e4348349da Merge branch 'vulkan' into shader-nodes 2020-05-27 20:04:37 +02:00
Lynix e0e7435c55 Merge fixes 2020-05-27 20:03:46 +02:00
Lynix 68208f5426 Merge branch 'master' into vulkan 2020-05-27 19:48:22 +02:00
Lynix 81f03f04e5 Revert Renderer to its pre-SDL state 2020-05-27 19:42:53 +02:00
Lynix 2d189dc85e Fix WindowHandles 2020-05-27 18:55:03 +02:00
Lynix b0c72a6101 Replace platform backends by SDL 2020-05-27 17:47:52 +02:00
Lynix c071f52d8f Platform/Mouse: Add SetRelativeMouseMode 2020-05-27 17:08:49 +02:00
Jérôme Leclercq 1425f99edf Merge branch 'master' into SDL2 2020-05-27 11:11:21 +02:00
Lynix d96bc9db6e ShaderNode: Add automatic variables 2020-05-26 20:30:24 +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 8fa456bdf5 Renderer: Remake backend selection 2020-05-23 22:07:22 +02:00
Lynix e23eb74802 Renderer/ShaderAst: Add Sample2D 2020-05-19 20:06:11 +02:00
ImperatorS79 db0b2ba27b Fix warning -Wreorder on linux in SimpleTextDrawer 2020-05-18 10:37:49 +02:00
Lynix 6a23d51147 OpenGL: Implement commands buffers 2020-05-11 14:12:13 +02:00
Lynix fe5b70ae1c OpenGL: Implement VAOs 2020-05-11 14:10:36 +02:00
Lynix 332278dded OpenGL: Random stuff I forgot 2020-05-11 14:05:40 +02:00
Lynix 2ea03fe05f OpenGL: Implement Framebuffers 2020-05-11 14:03:54 +02:00
Lynix 3cf53c4d9a OpenGL: Implement RenderPipeline 2020-05-11 14:01:17 +02:00
Lynix 49c68e581a OpenGL: Fix TextureSampler mipmap issue 2020-05-11 13:58:12 +02:00
Lynix 6073d8f592 OpenGL: Implement UploadPool 2020-05-11 13:57:11 +02:00
Lynix eba0571f03 OpenGL: Implement program wrapper 2020-04-26 18:22:31 +02:00
Lynix b7a7c84a89 Minor fixes 2020-04-26 18:22:07 +02:00
Lynix 32157503e8 OpenGL: Implement RenderPipelineLayout 2020-04-26 18:21:38 +02:00
Lynix 0b05feb7e3 OpenGL: Implement buffers 2020-04-26 18:20:36 +02:00
Lynix 494801282d Minor fixes 2020-04-26 16:29:39 +02:00
Lynix e9f0b01e02 OpenGLRenderer: Implement TextureSampler (and texture units) 2020-04-26 16:29:31 +02:00
Lynix cbd81e3abf Vulkan: Fix DeviceObject not destroying previous object 2020-04-26 16:26:24 +02:00
Lynix 1c23949608 OpenGLRenderer: Use generic DeviceObject 2020-04-26 16:26:08 +02:00
Lynix b4b15f826d OpenGL: Implement textures 2020-04-19 15:33:56 +02:00
Lynix 349e915e10 OpenGL: Link contexts to device 2020-04-19 15:33:36 +02:00
Lynix bd6924d66d OpenGL: Handle Spir-V 2020-04-19 15:31:48 +02:00
Lynix f63d045676 OpenGL: Better handling for activation/desactivation 2020-04-19 15:28:59 +02:00
Lynix d62e99091f OpenGL: Implement debug callback 2020-04-19 15:19:16 +02:00
Lynix a842e89881 Fix some missing files 2020-04-19 01:38:52 +02:00
Lynix 506099fcd7 OpenGL: Implement ShaderStage 2020-04-19 01:38:38 +02:00
Lynix 9dd208c3cf OpenGL: Fix contexts & loaders 2020-04-19 01:38:19 +02:00
Lynix 4dc8920a73 Implement some classes 2020-04-19 01:37:56 +02:00
Lynix 5c3eb31d4a OpenGL: Implement device 2020-04-19 01:36:44 +02:00
Lynix 0fa095e8f7 OpenGL: Rework contexts 2020-04-19 01:35:19 +02:00
Lynix 3b24d020e8 Minor stuff 2020-04-19 01:24:37 +02:00
Lynix fca3d855bd Core: Add MovableValue 2020-04-19 01:23:26 +02:00
Lynix 68760209c1 Add OpenGLRenderer (WIP) 2020-04-15 19:38:11 +02:00
Lynix b58b35c322 Core: Add SplitString(Ext) 2020-04-15 19:37:41 +02:00
Lynix dd74e5ecc1 Includes fix 2020-04-13 16:29:15 +02:00
Lynix e905c3a004 Move Vulkan debug callback to module 2020-04-13 15:12:58 +02:00
Lynix 7447875753 Vulkan/Surface: Remove MIR support 2020-04-13 15:12:19 +02:00
Lynix 75241ed8f0 VkRenderWindow: Default to RGBA8 if supported 2020-04-13 15:11:35 +02:00
Lynix b2d3605cf4 Fix includes 2020-04-10 17:36:43 +02:00
Lynix d9a08640d6 Vulkan: Add renderpass and framebuffers 2020-04-10 17:36:05 +02:00
Lynix 9507c56fc9 PixelFormat rename
PixelFormatInfo => PixelFormatDescription
PixelFormat => PixelFormatInfo
PixelFormatType => PixelFormat
2020-04-10 14:19:36 +02:00
Lynix 87f1209327 Vulkan: Refactor command buffer and introduce command pool 2020-04-07 21:10:16 +02:00
Lynix ac8b908079 Vulkan: Replace ShaderBinding& by ShaderBindingPtr 2020-04-06 21:13:59 +02:00
Lynix f443bec6bc Add command buffers (WIP) 2020-04-02 21:07:01 +02:00
Lynix cf396b0792 Add support for VK_EXT_debug_utils 2020-03-26 23:34:58 +01:00
Lynix 15b95ca4a1 Minor and forgotten stuff 2020-03-26 21:20:00 +01:00
Lynix 1dc0ed8e94 Add ShaderBinding 2020-03-26 21:19:46 +01:00
Lynix 874130efd4 Implement Texture and TextureSampler 2020-03-26 21:18:35 +01:00
Lynix b73d3e8f04 Add and make use of Vulkan Memory Allocator 2020-03-26 21:15:49 +01:00
Lynix 509c392e05 Implement UploadPool to efficiently update UBOs 2020-03-26 21:13:06 +01:00
Lynix e53e15d1aa Split CommandBuffer into Auto and normal variants 2020-03-26 21:09:58 +01:00
Lynix d892e8eaff Add support for Vulkan 1.1 & 1.2 2020-03-26 20:42:57 +01:00
REMqb 96ea792656 ~ Formatting 2020-03-21 12:42:50 +01:00
Lynix da5d8bc4c2 Bypass MSVC parser regression 2020-03-20 20:56:15 +01:00
Lynix 42d58bd77c Vulkan: Add physical device extension listing 2020-03-18 13:58:30 +01:00
Lynix 07fa581525 Cleanup device creation/selection 2020-03-18 13:48:53 +01:00
Lynix 4ede9f1cfe Add texture in demo 2020-03-18 13:48:05 +01:00
Lynix 9cc206b33e Minor C++ fixes 2020-03-17 17:13:27 +01:00
Lynix 5fde1e335b VulkanBuffer: Use WaitIdle instead of a fence (same effect) 2020-03-15 13:26:36 +01:00
Lynix 6fd1f70a6d QueueHandle: Fix submit overloads 2020-03-15 13:26:20 +01:00
Lynix 7cce08ecfd VulkanRenderer/QueueHandle: Add overloads able to take multiple wait/signal semaphores 2020-03-14 17:35:03 +01:00
Lynix 74adef0aec OCD fix 2020-03-14 17:34:21 +01:00
Lynix cee47f366f Rename Vk::Queue to Vk::QueueHandle 2020-03-14 17:33:50 +01:00
Lynix 0ace9a5e8d Fix instance destruction 2020-03-13 18:45:56 +01:00
Lynix b774a879b6 Rework buffers synchronization 2020-03-13 18:44:49 +01:00
Lynix 63547fcd4e Replace DeviceHandle by references
and keep device alive until Vulkan is freed
2020-03-13 18:38:26 +01:00
Lynix 4cf24cde7d VertexDeclaration: Add check for duplicates 2020-03-08 18:10:23 +01:00
Lynix 28cf4ed6e3 Make Vk::Device store a reference to Vk::PhysicalDevice info 2020-03-08 18:10:12 +01:00
Lynix 0e27c2315f Move Vulkan functions list to external files 2020-03-08 18:09:45 +01:00
Lynix f830dbf6d4 Fix compilation 2020-03-05 22:35:12 +01:00
Lynix c1a01c4183 Remove useless inline 2020-03-05 22:35:00 +01:00
Lynix 2b3241f354 Add RenderPipelineLayout 2020-03-05 20:35:31 +01: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 74275292bf Some cleanup 2020-03-05 17:24:55 +01:00
Lynix 9515f1c807 Improve synchronization based on vulkan-tutorial
https://vulkan-tutorial.com/Drawing_a_triangle/Drawing/Rendering_and_presentation
2020-03-04 20:13:37 +01:00
Lynix 7ba9a33d35 Add Fence objects (+ use them for sync) 2020-03-04 18:50:41 +01:00
Lynix 7bf734cdd4 Improve pipeline building 2020-03-03 22:26:57 +01:00
Lynix d5c75926c6 WIP (VertexDeclaration) 2020-03-03 01:04:24 +01:00
Lynix 287be5d9b6 WIP 2020-03-01 20:31:48 +01:00
Lynix 7180a8d94e WIP 2020-03-01 20:31:41 +01:00
Lynix af28ea02a8 Vulkan usage fixes 2020-02-29 23:28:59 +01:00
Lynix 5d449095bf Renderer: Add ShaderStage class 2020-02-29 23:28:21 +01:00
Lynix 798425ce10 Some work on render pipelines 2020-02-27 23:12:29 +01:00
Lynix c05ea4095a Begin work on RenderPipeline 2020-02-25 22:56:08 +01:00
Lynix 7bbba14ba0 Fix merge 2020-02-25 20:22:46 +01:00
Lynix cb66dddd45 Merge branch 'nazara-next' into vulkan 2020-02-25 19:15:07 +01:00
Lynix 269190bb75 Core/Bitset: Make use of if constexpr 2020-02-24 18:49:43 +01:00
Lynix b6b3ac9f31 Move SDK include and source to base 2020-02-24 18:23:30 +01:00
Lynix eb8800f812 Remove Lua and Noise modules 2020-02-24 17:52:06 +01:00
Lynix 79f732ee8a VulkanRenderer: Replace ObjectHandle by std::shared_ptr/raw pointers 2020-02-23 12:02:15 +01:00
Lynix 3fc67b3598 Core/FileLogger: Drop noexcept specifier for movement
Since fstream doesn't have it
2020-02-23 02:20:48 +01:00
Lynix 364122f582 SparsePtr: Make pointer conversion explicit 2020-02-23 02:06:48 +01:00
Lynix 0c008236ba Minor fixes + update vulkan include 2020-02-23 01:28:16 +01:00
Lynix 8b5f9d68c3 Fix missing includes 2020-02-23 00:49:38 +01:00
Lynix 8be2342f25 Merge branch 'master' into vulkan 2020-02-23 00:46:48 +01:00
Lynix 3d22321109 Big f***ing cleanup part 1 2020-02-23 00:42:22 +01:00
Lynix e35caebdcf Core: Add ByteArrayPool and PoolByteStream classes 2020-02-04 11:42:05 +01:00
Lynix 518b8697de Network/ENetHost: Add AllowsIncomingConnections method 2020-02-01 16:36:05 +01:00
Lynix 8c7301f649 Utility/RichTextDrawer: Add character & line spacing offsets 2020-01-26 16:57:56 +01:00
Lynix 977044f59e Utility/SimpleTextDrawer: Replace line spacing factor by line spacing offset 2020-01-26 16:19:06 +01:00
Lynix 11d51872fa Utility/SimpleTextDrawer: Add character spacing offset 2020-01-26 16:18:28 +01:00
Lynix b50691d71e Update Core.hpp 2020-01-25 19:15:30 +01:00
Lynix 151b8eb425 Fix previous commit 2020-01-25 19:15:25 +01:00
Lynix 6b825a084c Utility/SimpleTextDrawer: Add line spacing factor 2020-01-25 19:08:36 +01:00
Lynix 548ede4613 Utility/*TextDrawer: Use float internally
+ some fixes
2020-01-25 19:07:20 +01:00
Lynix 59d80dbe6d Utility/SimpleTextDrawer: Fix a lot of minor bugs
+ add .inl
2020-01-25 15:25:10 +01:00
Lynix db78c9c948 Renderer/Texture: Remove Image constructor 2020-01-09 22:42:28 +01:00
Lynix df2a029f30 Physics2D/Collider2D: Add support for neighbors vertices 2020-01-01 17:25:22 +01:00
Lynix f371cbb386 Fix EmptyStream open mode 2019-12-29 16:36:23 +01:00
Lynix 35cf05e3bc Core: Add EmptyStream class 2019-12-29 16:25:40 +01:00
Lynix 0b825680de Network/ENetPeer: Reduce memory usage 2019-12-29 11:56:13 +01:00
Lynix 24cb8f6845 Add ENet::GetTotalPacketReceived 2019-12-29 11:54:00 +01:00
Lynix 56243f5a12 Nazara/Network: Add GetTotalByte[Received|Sent] 2019-12-28 17:31:21 +01:00
Lynix 57b37c3d2c Minor fixes 2019-12-28 15:06:31 +01:00
Lynix fcfcc94c49 Fix RichTextDrawer ignoring max line width 2019-12-28 12:03:41 +01:00
Lynix ba405aaa5f Fix some missing override 2019-12-28 11:44:13 +01:00
Lynix 97418bfe04 RichText: Add support for outline color/thickness 2019-12-28 11:43:48 +01:00
Lynix e6c0f864f3 Fix reorder warning 2019-12-22 22:12:41 +01:00
Lynix 2a7ffffd84 Fix warning 2019-12-22 17:01:46 +01:00
Lynix e282b842b4 Add Node::SetScale(Vector2) to prevent a bug 2019-12-22 17:01:05 +01:00
Lynix dba9bb8b47 Math: Add Rect(u)i64 using 2019-12-22 17:00:48 +01:00
Lynix 3b43f57192 Added physics function to control sleeping behavior 2019-12-19 21:33:56 +01:00
REMqb ef791e2f3c ~ WIP input IME 2019-12-19 19:59:43 +01:00
Lynix ec0eed9eff Core/HandledObject: Add OnHandledObjectDestruction signal 2019-12-15 15:41:41 +01:00
Lynix 3760c8b5c4 Utility/Node: Fix negative scaling not affecting rotation 2019-12-13 17:23:01 +01:00
Lynix 1dbe71474d Utility/Node: Get[Position|Rotation|Scale) now defaults to local space 2019-12-12 09:58:08 +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 ef030ddaac Rework constraint2D 2019-12-08 18:56:21 +01:00
Lynix ae996ae09d Oopsie 2019-11-09 15:34:25 +01:00
Lynix 57958056d6 Core/Flags: Add Set method 2019-11-09 13:53:29 +01:00
Lynix a4bff0968b Core/Flags: Add Clear methods 2019-11-09 13:37:40 +01:00
Jérôme Leclercq 9161886cc8 Update Flags.inl 2019-10-15 22:12:31 +02:00
Lynix 9576e2794d Core/Flags: Fix bitfield type selection 2019-10-15 18:09:34 +02:00
Lynix 7b9dad59fe Oopsie 2019-09-29 16:43:56 +02:00
Lynix 31e6bfe43a Core/Stack[Array|Vector]: Are now default-initializable and movable 2019-09-29 16:41:26 +02:00
Lynix 5fce345b3e Core/StackVector: Fix resize check 2019-09-28 17:36:19 +02:00
Lynix 89243a39b5 Holy shit i'm stupid 2019-09-28 16:55:11 +02:00
Lynix acc2c072ba Core/StackVector: Fix erase method (+ add tests) 2019-09-25 16:17:07 +02:00
Lynix 3c7addc262 Utility/RichTextDrawer: Fixes block removal not adjusting glyph indexes
+ Add HasBlocks method
2019-09-25 09:36:57 +02:00
Lynix 8e4df4cadc SDK: Add RichTextAreaWidget (WIP) 2019-09-25 09:36:57 +02:00
Lynix 451b3de69c Utility: RichTextDrawer now works (WIP) 2019-09-25 09:36:57 +02:00
Lynix 5504dd59fb Utility/RichTextDrawer: Update header 2019-09-25 09:36:57 +02:00
Lynix 8013bd5d3b Add current work
Former-commit-id: 7f1e46e484edbbfd120a7a67ea1c36bee460e517
2019-09-25 09:36:57 +02:00
Lynix 724972e889 Core/TypeTag: Add Type helper typedef 2019-09-01 11:15:02 +02:00
Lynix 55e3e05f0c Improve line wrap
It will now try to separate at word separations
2019-07-06 19:32:11 +02:00
Lynix 0ec1480024 Add line wrapping 2019-07-05 23:12:12 +02:00
Lynix 37c16dc202 Platform/Event: Add x/y mouse position to MouseWheelEvent 2019-07-05 22:17:22 +02:00
Lynix dcfd2ad8f9 Physics2D/PhysWorld2D: Add RaycastQuery and RegionQuery overloads taking a callback 2019-05-27 22:42:37 +02:00
Lynix ab5188c57d Add scancode and virtual key and fix some sdl stuff on Windows 2019-05-19 16:34:29 +02:00
Apjue 1244ef1303 Fix french comment 2019-04-26 21:51:43 +02:00
Apjue aec88aafa2 Fix Nazara version & fake tab 2019-04-26 21:47:24 +02:00
Lynix 79b0bd644c Add text outlines! 2019-04-16 01:46:26 +02:00
Lynix e61faae089 Physics2D/PhysWorld2D: Fix multiple calls to RegisterCallbacks with the same collision id 2019-04-15 16:25:40 +02:00
Lynix 8c7d886f73 Math/Algorithm: Reenable constexpr 2019-04-15 14:16:57 +02:00
Lynix 0582cbfc26 Utility: Replace UInt32 by TextStyleFlags 2019-04-13 13:09:53 +02:00
Jérôme Leclercq e665ea5373 Graphics/Material: Fix Configure resetting textures 2019-04-12 15:29:15 +02:00
REMqb 848f05a420 ~ Initial SDL2 implementation
Limitation
- Dependent projects need to set NAZARA_PLATFORM_SDL2 if nazara has been build with SDL2 since OpenGL.hpp (and maybe some other headers) exposes platform details
- SDL2 window doesn't supports async window since the API isn't fitting for now
- Contexts parameters can't be changed until we close all the SDL windows (SDL limitation)
2019-04-03 21:17:06 +02:00
Lynix 0ca823f9a6 Graphics: Remove sprite limit 2019-03-31 16:31:02 +02:00
Jérôme Leclercq 03e2bfb833 Merge pull request #201 from DigitalPulseSoftware/physics2d-position-offset
Add possibility to set a position offset to Physics2D bodies
2019-03-28 00:03:41 +01:00
Lynix b2da8d6c91 Fix compilation 2019-03-27 23:13:14 +01:00
Lynix 23887cc519 Merge branch 'master' into physics2d-position-offset 2019-03-26 20:33:40 +01:00
Lynix 11e98918ab Physics2D/Collider2D: Add ForEachPolygon method 2019-03-26 19:03:56 +01:00
Lynix ce43b633b9 Physics3D/Collider3D: Update ForEachPolygon signature 2019-03-26 19:02:27 +01:00
Lynix 3beeeebc1d Physics2D/RigidBody: Add position offset 2019-03-26 18:59:18 +01:00
Jérôme Leclercq ffc58e9806 Fix compilation 2019-03-20 17:18:45 +01:00
Jérôme Leclercq 853e01c192 Enet fixes (#200)
* Network/ENet: Fix UnreliableFragment flag

* Network/ENet: Match libenet new behavior on DisconnectLater
2019-03-20 17:12:34 +01:00
Lynix bdb5a4b3bd Core/Signal: Implement copy constructor/copy assignation operator 2019-03-17 18:06:05 +01:00
Lynix 439a62a7f8 Physics2D: Automatically compute center of mass 2019-03-17 15:56:38 +01: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
Lynix 23b2f0a48d Platform/Window: Make PushEvent public 2019-03-10 15:50:16 +01:00
Lynix 90609476e9 Platform/Event: Change mouse absolute position from unsigned to signed
Fixes cases where mouse is out of the window by either up or left sides
2019-03-06 21:17:01 +01:00
Alexandre Janniaux 5343b581ad Warnings: fix opengl redefined name (#196)
* opengl: use official include names

* thirdparty: rename GL3 into GL
2019-02-13 01:05:07 +01:00
larnin b002a054df Fix tilemap multimaterial (#197) 2019-02-13 01:03:47 +01:00
Lynix 662ccbd5d0 Physics2D/RigidBody2D: Add possibility to setup a custom velocity function 2019-01-19 02:31:29 +01:00
Lynix 40cd8a7987 Physics2D/RigidBody2D: Add ForEachArbiter method 2019-01-19 02:29:27 +01:00
Lynix 9be8d0eae4 Add RigidBody2D::GetBodies 2019-01-19 02:25:45 +01:00
Lynix ecd42704a6 Remove MSVC-specific fix 2019-01-19 02:21:29 +01:00
Lynix 0740ee456a Lua/LuaCoroutine: Fixed movement assignation operator 2018-12-19 22:08:50 +01:00
Lynix a3fd69a453 Lua/LuaState: Add RawEqual function 2018-11-14 23:54:31 +01:00
Jérôme Leclercq ed46c87781 Refactor the way resources are loaded (#191)
* WIP

* WIP

* Font works

* WIP: Only Music remains

* Looks like it's working

* Fix oopsie

* Core/ObjectRef: Add cast functions

* Update ChangeLog.md

* Audio/SoundStream: Make sound stream thread-safe
2018-10-28 01:53:11 +02:00
Lynix a292e47673 Network/ENetPeer: Fix return type of GettotalPacket[Lost|Sent] 2018-10-24 20:26:50 +02:00
Lynix 4e9d4c10da Network: Add accessors to ENetHost/ENetPeer 2018-10-21 13:52:14 +02:00
Jérôme Leclercq 5e45983953 Math/Angle: Fix compilation & warning on GCC < 8 2018-10-12 17:09:39 +02:00
Jérôme Leclercq 4c4822eef9 Core/ObjectHandle: Remade object handle system 2018-10-12 15:46:40 +02:00
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
Lynix 8ba8d2e92f Merge branch 'ubo' into vulkan 2018-06-12 19:33:06 +02:00
Lynix a4aad3caac Merge branch 'master' into vulkan 2018-06-12 19:08:02 +02:00
Lynix d7a2e9aad1 Merge branch 'ubo' into vulkan 2018-06-12 19:07:58 +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 e4eae425b2 Add support for Uniform Buffer to Utility/Renderer 2018-06-06 20:18:42 +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