Commit Graph

353 Commits

Author SHA1 Message Date
7ec207ba27 Fix abs call. 2023-12-10 14:58:37 +01:00
01a5847d7f The default log level in PLogger is now message. 2023-10-25 01:45:37 +02:00
fe717c76d8 Call the proper methods in PLogger. Also use ERR_PRINT when logging errors. 2023-10-25 01:43:37 +02:00
b4f0ef4493 Added log level support for PLogger. 2023-10-25 01:25:15 +02:00
e1f64a84ad Added missing conversion. 2023-10-12 11:44:23 +02:00
b4692f1763 Port4ed from godot: Add binary MO translation file support. Add brotli decoder and WOFF2 support.
Use smaller .mo files instead of .po, if gettext is available.
Convert editor fonts to .woff2 format.
- bruvzg
fd2fba7c2c
2023-10-02 21:12:03 +02:00
7df893ab6b Ported from godot: Add context support for editor translation
- timothyqiu
878cf8262a
2023-10-02 20:48:04 +02:00
风青山
f7f7c17962 BVH - fix axis getting mixed up when split leaf
Split preferentially on longest axis, rather than shortest axis.
2023-10-02 16:56:12 +02:00
风青山
1813300d53 BVH - fix not refitting upward from leaf nodes
Fix leaf node possibly not updating aabb due to wrong node id.

Additionally, when requesting a new leaf, mark `dirty` as `false` in `clear()`.
2023-10-02 16:55:52 +02:00
Danil Alexeev
2d4e9c4656 Core: Add recursion level check for VariantWriter::write() 2023-10-02 16:25:48 +02:00
5fd0326745 Added a new SubProcess class with a Uniz backend for better process control. 2023-09-10 12:19:51 +02:00
1230419fb7 Register and bind the _ScriptServer. 2023-09-10 08:25:06 +02:00
9207afc6cb Added run, create_process and create_instance helper methods to OS. Inspired by godot4's split of execute. 2023-09-10 08:20:35 +02:00
9a2bf73280 Backported _shortcut_input() virtual from godot4. 2023-09-07 09:56:16 +02:00
b506468b53 Revert "Backport implement loading DDS textures at run-time"
This reverts commit 4b76c7e89c.

Apparently it can cause issues.
2023-09-06 09:13:08 +02:00
0a9c9ca15e Ported godot pr: [3.x] Allow exporting custom resources from/to any scripting language (GDScript, VisualScript, C#, NativeScript, PluginScript)
- willnationsdev
https://github.com/godotengine/godot/pull/44879
Using the rebased version from 02d1f70ee5 by Atlinx
2023-09-06 01:45:29 +02:00
62e2b1623a Use NULLs. 2023-08-30 13:24:46 +02:00
7e270262f9 Ported: Fix binary internal cache not being filled
- Razoric480
d331e5c7ac
2023-08-30 13:00:53 +02:00
5d93975c8d Ported: Fix custom res caching sub-res even if no-cache
-Razoric480
2ceb93bbef
2023-08-30 12:55:37 +02:00
Francois Belair
90d7912fcc Actually use loaded resource cache 2023-08-30 11:37:34 +02:00
Danil Alexeev
254cb747b7 Core: Add recursion level check for Array and Dictionary hashing 2023-08-30 11:34:00 +02:00
Paweł
adb36972f5 Fix Windows StringFileInfo structure
(cherry picked from commit e15a086bb99f450fbfa223fe8896c47a860735fc)
2023-08-30 10:52:11 +02:00
Bartłomiej T. Listwon
68667d1563 Fix moving position indicator out of bounds in FileAccessMemory
(cherry picked from commit bff0c71e2e2cb9b880181cc819c4753abfe59508)
2023-08-30 10:49:44 +02:00
Yuri Rubinsky
9a1705eac2 Fix crash when calling fill method on an empty Image
(cherry picked from commit adec51cde87d29dd74efb6e5cd0167990de8d569)
2023-08-30 10:18:36 +02:00
65d4c57233 Added translate_to() method to TranslationServer, and trt() method to Object. This let's you transalte strings into specific (noon app wide) locales. 2023-08-29 22:02:31 +02:00
d977ed360e Ported: 2D Fixed Timestep Interpolation
Adds support to canvas items and Camera2D.
- lawnjelly
5162efbfe9
2023-08-27 18:48:25 +02:00
Simon Barkehanai
12eba08f8c Fix infinite loop on EOF in the command line debugger
When using the command line debugger (godot -d) on Unix systems, when
entering an EOF (ctrl+D), the debugger enters an infinite loop.

Adding a check for EOF in the debugger loop exits the debugger when EOF
is entered.

Fixes #50170.

(cherry picked from commit 4ecad8dea30859a5acbac41fe0e647c7bb6a53cc)
2023-08-27 12:14:55 +02:00
RedworkDE
f3167d1c65 Fix ProjectSettings::localize_path for Windows paths 2023-08-27 12:05:08 +02:00
puzzud
21d78d77f6 Prevent double input events on gamepad when running through steam input #79706
Co-authored-by: Eoin O'Neill <eoinoneill1991@gmail.com>
2023-08-27 11:47:35 +02:00
Marcin Nowak
4b76c7e89c Backport implement loading DDS textures at run-time 2023-08-27 11:31:12 +02:00
c80ee8d7bf Added missing Variant conversion and zero cases. 2023-08-15 10:23:41 +02:00
834cbe8cef Ported: Single Compilation Unit build.
Adds support for simple SCU build.
This speeds up compilation by compiling multiple cpp files within a single translation unit.
- lawnjelly
43e181a00a
2023-07-11 16:07:36 +02:00
be022b610f Bind RWLock, so it's accessible to scripts. 2023-07-06 21:17:13 +02:00
d3f2e0e4fe Fixed SkeletonModification3DFABRIK. 2023-06-22 09:43:55 +02:00
1a5cba555c Backported godot4 PR: Support threads in the script debugger
* This implementation adds threads on the side of the client (script debugger).
* Some functions of the debugger are optimized.
* The profile is also now thread safe using atomics.
* The editor can switch between multiple threads when debugging.
This PR adds threaded support for the script language debugger. Every thread has its own thread local data and it will connect to the debugger using multiple thread IDs.
This means that, now, the editor can receive multiple threads entering debug mode at the same time.
- reduz
PR 76582
Will be available here after it's merged:
6b176671c4
2023-06-14 14:43:55 +02:00
d4175f9676 Ported parts of : Refactor Node Processing
* Node processing works on the concept of process groups.
* A node group can be inherited, run on main thread, or a sub-thread.
* Groups can be ordered.
* Process priority is now present for physics.
This is the first steps towards implementing godotengine/godot-proposals#6424.
No threading or thread guards exist yet in most of the scene code other than Node. That will have to be added later.
- reduz
98c655ec8d
- Only got the smaller improvements, and the thread safety for Node and SceneTree. I'm planning to implement a similar system, but I have a different way of doing it in mind.
2023-06-12 21:13:26 +02:00
3afa1142b9 Merged the functionality of BSInputEventKey to InputEventKey. This new setting can make input event keys act as if they are shortcut matched. 2023-06-11 16:06:09 +02:00
3331a7ae04 Ported: Augment the InputEvent class with a CANCELED state
The `InputEvent` class currently supports the `pressed` and `released` states, which given the binary nature, is represented by a `bool` field.
This commit introduced the `CANCELED` state, which signals that an ongoing input event has been canceled.
To represent all the states, the `InputEventState` enum is added and the `InputEvent` logic is refactored accordingly.
- m4gr3d
94d6c3dcc6
2023-06-11 10:26:23 +02:00
6c9843e5cb Ported: Test, refactor and fix a bug in Basis.get_axis_angle
- fabriceci
9f1a57d48b
2023-06-11 09:45:23 +02:00
e21a020b86 Add unsafe version from asin and acos. 2023-06-11 08:45:19 +02:00
lawnjelly
22d90711da Make acos and asin safe
A common bug with using acos and asin is that input outside -1 to 1 range will result in Nan output. This can occur due to floating point error in the input.

The standard solution is to provide safe_acos function with clamped input. For Godot it may make more sense to make the standard functions safe.
2023-06-11 08:41:42 +02:00
53358e6825 Removed the PMath singleton. If needed it can easily be recreated as a module. 2023-06-11 08:34:57 +02:00
f058c87868 Backported from godot4: Rework Navigation Avoidance
Rework Navigation Avoidance.
- smix8
a6ac305f96
2023-06-10 20:58:49 +02:00
2e1e153bc3 Make MultiMeshInstance2DNavigationGeometryParser2D use the Geometry singleton. And by proxy clipper 1. 2023-06-07 15:25:32 +02:00
6eb37ff901 Ported clipper2 usage to clipper1 in PandemoniumNavigationMeshGenerator. Also moved them to the Geometry singleton. 2023-06-07 09:20:36 +02:00
bb753653dd Don't print an error in ThreadPoolJob's _execute, as it's probably more intuitive this way. 2023-06-05 14:17:50 +02:00
4873a3429d Don't bind _execute() method in ThreadPoolJob derived classes, as it's not needed anymore. 2023-06-05 14:15:49 +02:00
642b5b7159 Use call_deferred when emitting the completed signal, so the handlers run on the main thread. 2023-06-05 09:11:39 +02:00
6dc774cf5c Emit the completed signal automatically in ThreadPoolJob. 2023-06-05 09:08:22 +02:00
9a2a39923a Added virtual _execute to threadPoolJob. 2023-06-05 09:05:16 +02:00