Aaron Franke
a3e3bf8227
Make hex_to_int and bin_to_int handle the prefix automatically
...
Also add BinToInt to C#
2021-01-28 07:43:53 -05:00
Rémi Verschelde
976e768e71
Merge pull request #45489 from aaronfranke/core
...
Type consistencies in core
2021-01-27 21:16:20 +01:00
Aaron Franke
1be0d6b30e
Type consistencies in core
2021-01-26 13:04:22 -05:00
Yuri Roubinsky
38a5d22079
Renamed String.ord_at to unicode_at
2021-01-26 20:36:12 +03:00
George Marques
fa498f6105
Merge pull request #45373 from aaronfranke/gdnative-sizeof
...
Define GDNative sizes using sizeof(godot_real) and sizeof(int32_t)
2021-01-26 14:00:32 -03:00
Danil Alexeev
a97f1a3dc6
Rename color constants (alternative)
...
Named color constants renamed to UPPERCASE. Unlike #41019 , this PR
is complete and implements these changes in the simplest way possible.
Co-authored-by: Shivam Mukherjee <mshivam98@gmail.com>
2021-01-26 19:07:00 +03:00
Rémi Verschelde
d6765c8d8b
Merge pull request #44732 from Calinou/os-add-get-thread-caller-id
...
Add an `OS.get_thread_caller_id()` method
2021-01-26 15:54:25 +01:00
Rémi Verschelde
1940197ac7
Merge pull request #45309 from VedatGunel/fix-string-ends-with
...
Fix String.ends_with() for empty string arguments
2021-01-26 15:23:59 +01:00
Marcel Admiraal
8b983bddfb
Remove Quat set methods in favour of constructors
2021-01-26 06:52:04 +00:00
Aaron Franke
6c197cf259
Define GDNative sizes using sizeof(godot_real_t) and sizeof(int32_t)
2021-01-25 16:42:14 -05:00
Rémi Verschelde
d39f6386ce
Merge pull request #45314 from RandomShaper/modernize_rwlock
...
Modernize RWLock
2021-01-22 14:51:05 +01:00
Rémi Verschelde
8a6d4dd5ed
Merge pull request #45023 from reduz/optimize-shader-vgpr1
...
Shader optimizations to reduce VGPR usage and increase occupancy
2021-01-20 00:10:21 +01:00
reduz
099dee35f4
Added GPU based cluster builder
...
Clustering is now GPU based, uses an implementation based on the Activision algorithm.
2021-01-19 23:31:06 +01:00
PouleyKetchoupp
356d0fccc2
Remove useless "else" statements from vector3.h
2021-01-19 16:36:29 -05:00
Vedat Günel
1d0437c95b
Fix String.ends_with() for empty string arguments
2021-01-19 15:33:41 +03:00
Pedro J. Estébanez
8ed259b792
Modernize RWLock
...
- Based on C++14's `shared_time_mutex`
- No more need to allocate-deallocate or check for null
- No pointer anymore, just a member variable
- Platform-specific implementations no longer needed
- Simpler for `NO_THREADS`
2021-01-19 11:53:10 +01:00
Fabio Alessandrelli
bab20c6e09
[HTML5] Custom Gamepad library to allow remapping.
...
No longer use emscripten functions for gamepads, implement them as
library functions in library_godot_display.js instead.
This allows us to do a better job at "guessing" vendorId, productId, OS,
etc. thus allowing us to better find the remapping for the controller.
2021-01-18 12:30:38 +01:00
Fabio Alessandrelli
a1533f2c44
Better gamepad axis event injection.
...
In the core input handling code we have checks to make sure that if axis
rapidly change sign we inject mid-points to release any pending inputmap
action.
The function though, did not correctly insert the mid-point causing
dpads mapped to an axis that behaves like tri-state buttons (-1,0,1) to
not be released correctly.
This commit fixes that by including in the check the case where the axis
swtiches from abs(1) to 0.
2021-01-18 12:30:38 +01:00
Rémi Verschelde
70a70a4f2b
Merge pull request #45161 from Xrayez/bind-emit-changed
...
Expose `Resource.emit_changed()` to script
2021-01-14 15:56:26 +01:00
Rémi Verschelde
0b409d89d0
Merge pull request #45136 from akien-mga/clang-format-11
...
CI: Update to clang-format 11 and apply ternary operator changes
2021-01-13 16:10:44 +01:00
Andrii Doroshenko (Xrayez)
e94f46dcdb
Expose Resource.emit_changed()
to script
...
Also known as `emit_signal("changed")`.
2021-01-13 16:27:58 +02:00
Rémi Verschelde
d2148692bc
Merge pull request #45125 from aaronfranke/poly-lib
...
Update PolyPartition / Triangulator library
2021-01-12 21:40:10 +01:00
Aaron Franke
ddd6fb37e8
Update PolyPartition / Triangulator library
2021-01-12 13:46:16 -05:00
Rémi Verschelde
af878716f2
CI: Update to clang-format 11 and apply ternary operator changes
2021-01-12 19:32:53 +01:00
Rémi Verschelde
1218441b16
Merge pull request #44514 from madmiraal/split-os-execute
...
Split OS::execute into two methods
2021-01-12 16:17:04 +01:00
Gilles Roudière
831247b39c
Improve UndoRedo class
2021-01-12 14:34:46 +01:00
Rémi Verschelde
c26510359a
Merge pull request #42270 from AndreaCatania/AndreaCatania-patch-4
...
Added the function `remove_unordered` to the LocalVector container.
2021-01-11 14:48:00 +01:00
Rémi Verschelde
f6be114d02
Merge pull request #44427 from briansemrau/fix-variant-bitand-validated-eval
...
Fix bitwise-and eval not updating return type
2021-01-11 13:53:27 +01:00
AndreaCatania
5ba60c17dd
Add function LocalVector::remove_unordered
...
Added LocalVector unit tests.
2021-01-11 13:47:31 +01:00
Marcel Admiraal
2a74b388d0
Split OS::execute into two methods
...
1. execute(): Executes a command and returns the results.
2. create_process(): Creates a new process and returns the new process' id.
2021-01-09 10:03:23 +00:00
Aaron Franke
1d5042c9e2
Use Math_TAU and deg2rad/rad2deg in more places and optimize code
2021-01-09 03:47:14 -05:00
Rémi Verschelde
9349a5507f
Merge pull request #35505 from dalexeev/rtl_colors
...
Unified named colors in RichTextLabel
2021-01-08 09:03:55 +01:00
Rémi Verschelde
8fd3545753
Merge pull request #44904 from maiself/fix-plane-xform_inv
...
Fix xform_inv of Plane, intermediate results were ignored
2021-01-05 15:15:17 +01:00
Juan Linietsky
d8a0dc9fcc
Merge pull request #44838 from reduz/renderer-reorganization
...
Reorganize renderer code + cache and threading optimizations.
2021-01-05 11:07:56 -03:00
Rémi Verschelde
eea3287c2d
Merge pull request #44661 from AndreaCatania/AndreaCatania-patch-5
...
Fixes: GDscript min and max are inverted
2021-01-05 13:42:08 +01:00
reduz
77bc3e9ac3
Threaded optimizations to cull and render
...
-Reorganize thread work pool for rendering
-Fixes to make secondary command buffers to work (disabled because they need more testing)
2021-01-05 08:50:18 -03:00
reduz
5d2a1d7892
Rewrite render code to be more cache and thread friendly.
2021-01-05 08:50:18 -03:00
reduz
9a2f18f8e7
Reorganize renderer code.
...
So it can hopefully be made more cache efficient afterwards.
2021-01-05 08:50:18 -03:00
Joshua Dahl
453ef0ba89
Remove Unnecessary Double List
...
_OS::print_resources_by_type had two of the exact same list, one of which was never used.
2021-01-04 12:24:18 -08:00
Mai Lavelle
4cb070e590
Fix xform_inv of Plane, intermediate results were ignored
2021-01-03 23:49:39 -05:00
Rémi Verschelde
cc416b0304
Merge pull request #44848 from mrushyendra/disconnect_err_msg
...
Issue correct error when disconnecting nonexistent connection with a valid signal
2021-01-01 23:02:58 +01:00
Rémi Verschelde
b5334d14f7
Update copyright statements to 2021
...
Happy new year to the wonderful Godot community!
2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.
We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)
Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Maganty Rushyendra
6c026a6814
Issue more precise error when disconnecting a nonexistent connection
...
Checks whether the signal exists when issuing an error message when
disconnecting a nonexistent connection. Also prints the callable name.
2021-01-01 13:08:10 +08:00
Marcus Brummer
e455ca2f2f
Added Geometry2D unit tests
2020-12-30 21:11:09 +01:00
Marcel Admiraal
b4a190e0bc
Consistently use normal_map
2020-12-29 08:04:19 +00:00
Rémi Verschelde
6cebb8c117
Merge pull request #44586 from madmiraal/rename-stepify
...
Rename Math::stepify to snapped
2020-12-28 21:46:43 +01:00
Rémi Verschelde
058f3fe069
Merge pull request #44149 from madmiraal/rename-tangent-orthogonal
...
Rename Vector2.tangent() to Vector2.orthogonal()
2020-12-28 16:00:12 +01:00
Rémi Verschelde
9addcb7603
Merge pull request #44751 from madmiraal/rename-rect-grow_margin
...
Rename Rect2 and Rect2i grow_margin() to grow_side()
2020-12-28 15:56:14 +01:00
Rémi Verschelde
e4c0572385
Merge pull request #44593 from madmiraal/rename-mainloop-methods
...
Rename MainLoop methods to match Node methods
2020-12-28 14:44:28 +01:00
Marcel Admiraal
b743a2ef3c
Rename Math::stepify to snapped
2020-12-28 13:01:30 +00:00
Marcel Admiraal
b628912af0
Rename Rect2 and Rect2i grow_margin() to grow_side()
2020-12-28 12:47:33 +00:00
Marcel Admiraal
5b937d493f
Rename empty() to is_empty()
2020-12-28 10:39:56 +00:00
Hugo Locurcio
35b046ddf7
Add an OS.get_thread_caller_id()
method
...
This can be used to print thread IDs in logs. This can make it easier
to debug multi-threaded applications.
Co-authored-by: Khaos <khaos@khaos-coders.org>
2020-12-27 16:54:18 +01:00
George Marques
d66a58a4d4
Add helper count function to Variant
...
To get counts of items before getting the list, which is useful for
GDNative so users can pre-allocate the buffer with the correct size
without having to get the list twice.
2020-12-27 11:14:29 -03:00
reduz
548524152e
Rewrite culling to be more cache/thread friendly.
...
-Uses a single array with all data
-Massive performance improvement
-Does not support threads yet, but code is now thread friendly
2020-12-26 19:11:33 -03:00
reduz
2e66e5d599
Use page allocator for BVH
2020-12-24 14:08:03 -03:00
Andrea Catania
7c6506e028
Fixes: GDscript min and max are inverted
2020-12-24 18:03:50 +01:00
reduz
1bebb2ba05
Cull fixes and optimizations
2020-12-24 12:18:28 -03:00
lawnjelly
6d687de9b8
Fix BVH to world_aabb, and call update
...
The calls to the BVH need to use the world space AABB, rather than local space for it to work. Also, update was not being called which is required to update the AABB as objects move.
2020-12-24 11:19:50 +00:00
Juan Linietsky
3fdf4bfe71
Merge pull request #44623 from reduz/rewrite-renderer-indexer
...
Replace Octree by DynamicBVH in cull code
2020-12-24 00:20:45 -03:00
Rémi Verschelde
210ebb04d3
Merge pull request #44609 from m4gr3d/fix_top_level_android_export
...
Fix the `String::get_base_dir()` logic to properly check for top level directories on Windows
2020-12-23 23:56:45 +01:00
reduz
83058597cf
Replace Octree by DynamicBVH in cull code
...
-Much greater pairing/unpairing performance
-For now, using it for culling too, but this will change in a couple of days.
-Added a paged allocator, to efficiently alloc/free some types of objects.
2020-12-23 19:31:30 -03:00
Fredia Huya-Kouadio
8edacea04a
Fix the String::get_base_dir()
logic to properly check for top level directories on Windows.
2020-12-23 00:48:18 -08:00
Marcel Admiraal
4b8b803931
Rename Control margin to offset
2020-12-23 06:25:56 +00:00
Marcel Admiraal
d9e9eb8d04
Rename MainLoop methods to match Node methods
2020-12-22 12:34:57 +00:00
Marco Cognetta
900e55eb70
simplify randi_range
2020-12-21 20:25:58 -05:00
reduz
37c6434e16
Add a paged array template
...
Used for reusable stacks, or filling arrays from multiple threads efficiently.
2020-12-21 15:06:50 -03:00
Rémi Verschelde
6532596d97
Merge pull request #44472 from winterpixelgames/PR-duplicate-packedarrays
...
Add support for duplicate() for Packed*Array, and they are pass by ref in godot 4.0
2020-12-21 17:30:01 +01:00
Rémi Verschelde
fa9332a0e7
Merge pull request #43414 from Xrayez/pi-type-string
...
Expose `PROPERTY_HINT_TYPE_STRING` to scripting
2020-12-20 21:18:11 +01:00
Rémi Verschelde
bf088da339
Merge pull request #43196 from Xrayez/property-list-changed-notify-protected
...
Make `property_list_changed_notify()` protected in `Object`
2020-12-20 21:16:14 +01:00
Juan Linietsky
fc4d90e70d
Merge pull request #44531 from reduz/add-dynamic-bvh
...
Add a Dynamic BVH implementation.
2020-12-20 13:22:05 -03:00
Pedro J. Estébanez
b7367ac426
Add animation reset track feature
...
As a bonus, to have consistency between use Beziers and create insert tracks, use Beziers also gets a default via editor settings that is used when the confirmation dialog is disabled, instead of just falling back to creating non-Bezier tracks.
2020-12-20 12:45:08 +01:00
Pedro J. Estébanez
1f52782bbb
Extend UndoRedo handling of Resource to every Reference
2020-12-20 10:59:23 +01:00
reduz
5ff89931c7
Add a Dynamic BVH implementation.
...
-Based on Bullet Dbvh, has style and functional changes.
-Provides efficient pairing
-Needed to optimize rendering
-Needed to optimize physics
This PR is up for others to review the implementation.
2020-12-19 20:23:37 -03:00
Marcel Admiraal
2df9a8ccad
Rename Rect2 and Rect2i clip() to intersection()
2020-12-19 12:59:08 +00:00
Rémi Verschelde
16524d4ae1
Merge pull request #44445 from theogen-ratkin/master
...
Add interpolation parameter to resize_to_po2()
2020-12-19 09:34:41 +01:00
Theogen Ratkin
46ea6750b4
Add interpolation parameter to resize_to_po2()
...
Image::resize_to_po2() now takes an optional p_interpolation parameter
that it passes directly to resize() with default value INTERPOLATE_BILINEAR.
2020-12-18 14:05:07 -04:00
reduz
d2302f53d6
Implement automatic LOD (Level of Detail)
...
-Happens on import by default for all models
-Just works (tm)
-Biasing can be later adjusted per node or per viewport (as well as globally)
-Disabled AABB.get_support test because its broken
2020-12-18 15:48:03 +01:00
Rémi Verschelde
c7b53c03ae
SCons: Add explicit dependencies on thirdparty code in cloned env
...
Since we clone the environments to build thirdparty code, we don't get an
explicit dependency on the build objects produced by that environment.
So when we update thirdparty code, Godot code using it is not necessarily
rebuilt (I think it is for changed headers, but not for changed .c/.cpp files),
which can lead to an invalid compilation output (linking old Godot .o files
with a newer, potentially ABI breaking version of thirdparty code).
This was only seen as really problematic with bullet updates (leading to
crashes when rebuilding Godot after a bullet update without cleaning .o files),
but it's safer to fix it everywhere, even if it's a LOT of hacky boilerplate.
2020-12-18 10:29:34 +01:00
Jordan Schidlowsky
2d56e09276
packed*arrays are pass by ref now. support duplicate and update documentation
2020-12-17 16:09:32 -06:00
Pedro J. Estébanez
1b745c7bae
Fix crash parsing a serialized Reference
2020-12-17 12:24:57 +01:00
Rémi Verschelde
f3dccf5891
Merge pull request #44393 from Calinou/add-stdout-flush-project-setting
...
Add a project setting to enable stdout flushing in release builds
2020-12-17 10:06:50 +01:00
Brian Semrau
bb4d44102d
Fix bitwise-and eval not updating return type
2020-12-16 08:59:06 -05:00
Rémi Verschelde
cb42bf113c
Merge pull request #44406 from vnen/variant-ptr-construct
...
Add PtrConstruct template to use in Variant constructors
2020-12-15 22:59:32 +01:00
George Marques
b3f452b1d2
Change template order in method_ptrcall.h
...
To be consistent with the enum in Variant so missing types can be more
easily spotted.
2020-12-15 17:02:50 -03:00
George Marques
35e7490c95
Add PtrConstruct template to use in Variant constructors
...
Since the PtrToArg::encode requires the value to be constructed
previously. With PtrConstruct this is not required.
2020-12-15 16:57:44 -03:00
Rémi Verschelde
94b15bfb89
Merge pull request #44275 from vnen/variant-function-arg-pointers
...
Use pointer parameters in Variant function pointers
2020-12-15 20:52:03 +01:00
Andy Savage
c65f097ebd
Quick fix to incorrect error messages when writing to compressed or encrypted files.
2020-12-15 17:00:39 +00:00
Hugo Locurcio
341b9cf15a
Add a project setting to enable stdout flushing in release builds
...
This can be used in server builds for journalctl compatibility.
2020-12-15 16:40:52 +01:00
EricEzaM
b2f032e1a5
Allow checking for exact matches with Action events.
...
Added additional param to action related methods to test for exactness.
If "p_exact_match" is true, then the action will only be "matched" if the provided input event *exactly* matches with the action event.
Before:
* Action Event = KEY_S
* Input Event = KEY_CONTROL + KEY_S
* Is Action Pressed = True
Now:
You can still do the above, however you can optionally check that the input is exactly what the action event is:
* Action Event = KEY_S
* Input Event = KEY_CONTROL + KEY_S
* p_exact_match = True
* Is Action Pressed = False
* If the Input Event was only KEY_S, then the result would be true.
Usage:
```gdscript
Input.is_action_pressed(action_name: String, exact_match: bool)
Input.is_action_pressed("my_action", true)
InputMap.event_is_action(p_event, "my_action", true)
func _input(event: InputEvent):
event.is_action_pressed("my_action", false, true) # false = "allow_echo", true = "exact_match"
event.is_action("my_action", true)
```
2020-12-15 09:14:18 +10:00
EricEzaM
5c15461df2
Fixed mistakes in InputEvent as_text and to_string implementations.
2020-12-14 12:42:42 +10:00
Rémi Verschelde
2760f5d0b4
Merge pull request #44315 from madmiraal/fix-handles-baseexception
...
Don't handle BaseException in build scripts
2020-12-12 12:23:07 +01:00
Marcel Admiraal
8ef5e3201c
Don't handle BaseException in build scripts
2020-12-12 10:05:42 +00:00
Alf Kraus
68fdd753a7
wrong double quote output with .csv fixed
2020-12-11 11:42:43 +01:00
Rémi Verschelde
9263f8eb4b
Image: Rename PVRTC{2,4} to PVRTC1_{2,4}, drop COMPRESS_PVRTC2
...
We haven't had a proper implementation for COMPRESS_PVRTC2 (which is PVRTC1 2-bpp) in years,
so let's drop it instead of keeping a compress type which doesn't work.
The other enum values were renamed to clarify that our PVRTC2 and PVRTC4 are respectively
PVRTC1 2-bpp and PVRTC1 4-bpp. PVRTC2 2-bpp and 4-bpp are not implemented yet.
2020-12-10 23:14:04 +01:00
George Marques
0abacae2d3
Fix object check on Variant key checker
2020-12-10 18:18:52 -03:00
George Marques
e4e9231420
Use pointer parameters in Variant function pointers
...
Instead of references. This is needed because those function pointers
are used in GDNative which needs to work with plain C, which doesn't
support passing parameters by reference.
2020-12-10 18:18:47 -03:00
Andrii Doroshenko (Xrayez)
9aa06c3e65
Make property_list_changed_notify
protected in Object
...
Alternative to `_change_notify()` to be called from within C++ classes.
Achieves low-level consistency with scripting, where this method is
exposed for updating the editor (inspector) with new values.
2020-12-10 14:27:41 +02:00
Rémi Verschelde
114f97ff11
Merge pull request #44128 from KoBeWi/ 🧹
...
Cleanup unused engine code
2020-12-09 13:01:50 +01:00
Tomasz Chabora
2c048ea164
Cleanup unused engine code
2020-12-09 12:12:36 +01:00
Rémi Verschelde
92c001ef09
Merge pull request #43931 from bruvzg/ctl_comp_font
...
[Complex Text Layouts] Add compatibility for legacy Font resources.
2020-12-09 11:28:11 +01:00
Rémi Verschelde
0c5d3b838c
Merge pull request #44199 from bruvzg/pvs_fixes_1
...
PVS-Studio static analyzer fixes
2020-12-09 10:23:21 +01:00
bruvzg
644f739660
Static analyzer fixes:
...
Removes unused code in OS.
Fixes return types.
Fixes few typos.
2020-12-09 10:17:53 +02:00
Rémi Verschelde
e5e1277ecd
Merge pull request #44161 from Faless/fix/fa_buffered_remove
...
Remove unused FileAccessBuffered
2020-12-09 09:14:14 +01:00
Rémi Verschelde
2034a1cca0
Merge pull request #44089 from Xrayez/rng-state
...
Add ability to restore `RandomNumberGenerator` state
2020-12-08 21:40:38 +01:00
Rémi Verschelde
90bdba576a
Merge pull request #43742 from qarmin/editor_modules_default_values
...
Initialize class/struct variables with default values in platform/ and editor/
2020-12-08 15:53:42 +01:00
Emmanuel Leblond
a211812932
Constify ScriptLanguage.can_inherit_from_file
2020-12-08 13:06:15 +01:00
Rémi Verschelde
a834055c63
Merge pull request #44148 from Calinou/tweak-log-file-names
...
Tweak log file names for consistency between Mono and non-Mono logs
2020-12-08 09:42:54 +01:00
Andrii Doroshenko (Xrayez)
b5107715f1
Add ability to restore RandomNumberGenerator
state
...
- added `state` as a property to restore internal state of RNG;
- `get_seed()` returns last seed used to initialize the state rather than the current state.
Co-authored-by: MidZik <matt.idzik1@gmail.com>
2020-12-07 13:50:46 +02:00
Aaron Franke
5465e604bb
Improve argument names for core types
2020-12-07 05:01:33 -05:00
Hugo Locurcio
4d81776fc9
Tweak log file names for consistency between Mono and non-Mono logs
...
- Avoid spaces in Mono log file names.
- Use a `.log` extension for Mono logs, just like non-Mono logs.
- Use periods to separate hours/minutes/seconds for non-Mono logs.
2020-12-06 20:17:02 +01:00
Fabio Alessandrelli
781efc26e0
Remove now unused FileAccessBuffered.
2020-12-06 19:37:11 +01:00
Marcel Admiraal
a24c38d1a8
Rename Vector2.tangent() to Vector2.orthogonal()
2020-12-06 18:16:06 +00:00
Aaron Franke
1b348b3c17
Remove connect *_compat methods
2020-12-05 17:56:47 -05:00
Rémi Verschelde
1287ea63c1
Merge pull request #44084 from vnen/float-is-real
...
Rename TYPE_REAL to TYPE_FLOAT
2020-12-04 14:26:22 +01:00
George Marques
02f60812ed
Rename TYPE_REAL to TYPE_FLOAT
...
To be consistent with the naming everywhere else.
2020-12-04 09:47:26 -03:00
reduz
e93b2242c2
Reorganize rendering server.
...
-Made RenderingServerScene abstract, allowing reimplementation
-RenderingServerRaster -> RenderingServerDefault, but this class is going away soon.
2020-12-03 19:01:01 -03:00
Rémi Verschelde
9c30c83aee
Merge pull request #44011 from KoBeWi/red_roses_minus_blue_violets
...
Fix subtracting colors and quats
2020-12-03 14:44:52 +01:00
Tomasz Chabora
4c232e4222
Fix subtracting colors and quats
2020-12-03 14:22:12 +01:00
Rémi Verschelde
df53bf6397
Merge pull request #43660 from EricEzaM/PR/INP1-inputevent_as_text_and_to_string
...
InputEvent as_text now returns readable string. Added to_string for debug strings
2020-12-03 13:28:29 +01:00
Rémi Verschelde
1b37c522dc
Merge pull request #44061 from madmiraal/fix-44056
...
Ignore hint entries in game controller mapping
2020-12-03 13:27:28 +01:00
Fabio Alessandrelli
502ff74fee
Merge pull request #43536 from jonbonazza/hmac
...
feat: HMAC support in Crypto APIs
2020-12-03 11:08:16 +01:00
Marcel Admiraal
e887ebf817
Ignore hint entries in game controller mapping
2020-12-03 09:06:40 +00:00
bruvzg
3c3590522f
[Complex Text Layouts] Add compatibility for legacy Font resources.
2020-12-03 10:34:03 +02:00
reduz
70f5972905
Refactored Mesh internals and formats.
...
-Changed how mesh data is organized, hoping to make it more efficient on Vulkan and GLES.
-Removed compression, it now always uses the most efficient format.
-Added support for custom arrays (up to 8 custom formats)
-Added support for 8 weights in skeleton data.
-Added a simple optional versioning system for imported assets, to reimport if binary is newer
-Fixes #43979 (I needed to test)
WARNING:
-NOT backwards compatible with previous 4.x-devel, will most likely never be, but it will force reimport scenes due to version change.
-NOT backwards compatible with 3.x scenes, this will be eventually re-added.
-Skeletons not working any longer, will fix in next PR.
2020-12-02 13:07:59 -03:00
Rafał Mikrut
e1811b689b
Initialize class/struct variables with default values in platform/ and editor/
2020-12-02 16:09:11 +01:00
Rémi Verschelde
d1231be1c8
Merge pull request #41095 from ThakeeNathees/GDScript-Documentation
...
GDScript(2.0) Documentation generation system
2020-12-02 14:15:38 +01:00
bruvzg
7be8759991
Fix .pck lookup for extensionless binary in macOS resources.
2020-12-02 11:04:44 +02:00
Thakee Nathees
42bfa16996
Refactor DocData into core and editor (DocTools) parts
2020-12-02 00:48:39 +05:30
George Marques
029fd88adb
Fix VariantInternal initialization and setting of object
...
- Initialize Object pointer to nullptr so it's not used by mistake.
- When setting an Object check if it's a reference so refcounting works
as intended.
2020-11-30 14:49:52 -03:00
Thakee Nathees
d0e7d9b62f
Documentation generation for GDScript
...
- ClassDoc added to GDScript and property reflection data were extracted
from parse tree
- GDScript comments are collected from tokenizer for documentation and
applied to the ClassDoc by the GDScript compiler
- private docs were excluded (name with underscore prefix and doesn't
have any doc comments)
- default values (of non exported vars), arguments are extraced from the
parser
- Integrated with GDScript 2.0 and new enums were added.
- merge conflicts fixed
2020-11-29 19:45:36 +05:30
Rémi Verschelde
3b4fad435c
Merge pull request #43061 from qarmin/crash_when_prining_nodes
...
Fix crash when printing leaked nodes
2020-11-28 10:37:12 +01:00
Rémi Verschelde
a6751e6c58
Merge pull request #41100 from bruvzg/ctl_text_server_interface
...
[Complex Text Layouts] Implement TextServer interface.
2020-11-28 09:03:15 +01:00
Rémi Verschelde
bd84600132
Merge pull request #43903 from cptchuckles/fix-sign
...
Fix SGN macro
2020-11-28 09:01:47 +01:00
Hugo Locurcio
aa2344afe4
Mention lack of optional setter arguments in ClassDB::add.property()
2020-11-28 01:34:13 +01:00
jcgollnick
3347cc25b8
Fix SGN macro
...
This version behaves the way the documentation states: 0 values will resolve to 0 instead of +1
2020-11-27 13:02:12 -06:00
Fabio Alessandrelli
828d1ea59e
Merge pull request #40136 from Jummit/multiplayer-root-node-getters
...
Add root_node as property of MultiplayerAPI
2020-11-27 18:36:07 +01:00
Fabio Alessandrelli
4b6a35c74a
Disable SO_REUSEADDR for UDP.
...
It allows binding multiple sockets to the same ADDR:PORT (unlike TCP,
which still requires different ADDR:PORT combinations).
2020-11-27 14:12:34 +01:00
Jon Bonazza
d5925fd522
feat: HMAC support in Crypto APIs
2020-11-26 18:39:56 -08:00
Eric M
dfe4c5f8e1
InputEvent as_text now returns readable string. Added to_string for debug strings
...
Made InputEvent as_text() return a readable and presentable string. Added to_string() overrides for each which returns a 'debug-friendly' version which is not as presentable but provides more information and in a more structured fashion. Use as_text() for UI display scenarions and to_string() for debug cases
2020-11-27 00:42:16 +10:00
bruvzg
99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
...
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
bruvzg
493da99269
[Complex Text Layouts] Implement TextServer interface. Implement Fallback TextServer.
2020-11-26 13:55:26 +02:00
Eric M
3528b29669
Removed references to 'registering_order', as it was unused.
2020-11-26 15:37:40 +10:00
Rémi Verschelde
ff790796af
Merge pull request #43864 from vnen/fix-print-utilities
...
Fix prints and printt functions printing as errors
2020-11-25 23:07:52 +01:00
George Marques
40b683f8bb
Fix prints and printt functions printing as errors
2020-11-25 16:18:41 -03:00
Rémi Verschelde
d76806d322
Core: Always enable ptrcall, remove PTRCALL_ENABLED define
...
ptrcall is now also used to optimize calls in GDScript, on top of the existing
use by the GDNative and Mono modules.
It no longer makes sense to make it optional.
2020-11-25 14:08:17 +01:00
Rémi Verschelde
32b31a5fa4
Merge pull request #43730 from qarmin/core_drivers_default_values
...
Initialize class/struct variables with default values in core/ and drivers/
2020-11-24 13:00:27 +01:00
Rafał Mikrut
7bd03b7188
Initialize class/struct variables with default values in core/ and drivers/
2020-11-23 17:38:46 +01:00
PouleyKetchoupp
d346c30269
Fix DebuggerMarshalls errors while profiling
...
Fixed check for array size before func_size: when func_size is 0 there's
only 1 entry left and not 3.
2020-11-23 07:59:56 -07:00
Pedro J. Estébanez
e79162ec4e
Make warning about Reference singletons more accurate
2020-11-23 10:42:44 +01:00
Rémi Verschelde
ba989a1d39
Merge pull request #43627 from aaronfranke/pixelvi
...
Use Vector2i instead of Vector2 for Image get_pixelv and set_pixelv
2020-11-23 10:04:49 +01:00
Rémi Verschelde
4ed42bfc29
Merge pull request #43725 from vnen/gdscript-typed-vm-2
...
GDScript: Typed VM Take 2
2020-11-23 09:59:20 +01:00
George Marques
15b085e8db
Add extra functions to VariantInternal
...
- Allow getting an opaque pointer, no matter the type (for ptrcall).
- Allow setting object pointer and id directly.
- Allow initializing the data given a type, to allow properly setting
return types on ptrcalls.
2020-11-21 13:24:49 -03:00
Aaron Franke
2c53e8b0e9
Use Vector2i instead of Vector2 for Image get_pixelv and set_pixelv
...
Co-authored-by: Andrii Doroshenko <xrayez@gmail.com>
2020-11-21 02:42:29 -05:00
George Marques
c8e3fb8b05
Variant: Merge get() and validated_get()
...
Since they do pretty much the same thing. The validated_get() was
renamed to get() since that is more performant.
2020-11-20 17:26:19 -03:00
George Marques
8a9e3524a9
Fix variant getters not setting return type
...
The validated getters were only setting the value without changing the
type, leading to wrong results. This uses the same path used for
methods to the same purpose.
2020-11-20 15:55:17 -03:00
Rémi Verschelde
6a683f8016
Merge pull request #43591 from madmiraal/fix-43520
...
Update joy button and stick names, enums and documentation
2020-11-19 20:43:44 +01:00
Marcel Admiraal
20f2b71e21
Update joy button and stick names, enums and documentation
2020-11-19 15:28:31 +00:00
Rémi Verschelde
b4f81e7b88
Merge pull request #43662 from EricEzaM/PR/INP3-command_serialization_optional
...
Made serialization of Command toggleable when saving InputEvents.
2020-11-19 13:38:55 +01:00
Rémi Verschelde
8cc01be213
Merge pull request #43682 from RandomShaper/warn_reference_singleton
...
Warn about singleton being a Reference
2020-11-19 13:37:45 +01:00
Eric M
c92f83d3ca
Made serialization of Command toggleable when saving InputEvents.
...
Made serialization of Command optional. If command is serialized, Control (On Win/Linux) or Meta (on Mac) are not.
Example use case: You are on Windows and you set a shortcut to be Control + E. This would serialize as Command=true and Control=true. If you then run this project on Mac, you would need to press Command AND Control to activate the shortcut - which is not what is intended. Now, you can set store_command to true, and it will only serialize to Command = true (no Control serialized). On Windows, this means Control. On Mac, it means only command.
2020-11-19 21:05:45 +10:00
Pedro J. Estébanez
e1150bd912
Warn about singleton being a Reference
2020-11-19 12:01:54 +01:00
Rémi Verschelde
2ca1c17a5c
Merge pull request #43661 from EricEzaM/PR/INP2-rename_load_from_globals
...
load_from_globals() -> load_from_project_settings()
2020-11-19 07:40:21 +01:00
Eric M
e5376fb129
load_from_globals() -> load_from_project_settings()
2020-11-19 09:21:21 +10:00
Pedro J. Estébanez
e99cf6bfe5
Fix crash duplicating local-to-scene resources
2020-11-18 23:45:30 +01:00
George Marques
bd93547c83
Fix return type on builtin validated calls
...
Before it was being set to the base type instead of the actual return
type.
2020-11-18 10:35:16 -03:00
Rafał Mikrut
03f89a4481
Fix crash when printing leaked nodes
2020-11-17 22:10:05 +01:00
Rémi Verschelde
408effa688
Merge pull request #43612 from akien-mga/variant-utils-doc
...
doc: Sync classref with Variant utility methods
2020-11-17 13:50:08 +01:00
Rémi Verschelde
c6dcf3310d
doc: Sync classref with Variant utility methods
...
Copied relevant documentation from the original `@GDScript` built-ins,
which will likely be removed in a future commit.
Various fixups to `variant_utility.cpp` while working on this.
2020-11-17 11:26:24 +01:00
Rémi Verschelde
386ee52978
Merge pull request #43610 from RandomShaper/fix_res_duplicate
...
Fix crash in resoure duplicate
2020-11-17 11:21:53 +01:00
Pedro J. Estébanez
9450717571
Fix crash in resoure duplicate
2020-11-17 10:13:41 +01:00
Aaron Franke
02161aad5a
Remove empty lines around braces with the formatting script
2020-11-16 23:38:11 -05:00
Danil Alexeev
01d0addf56
Unified named colors in RichTextLabel
...
Now the BB tag `[color]` uses the color names from the `Color` class.
Also, the use of the `#` symbol in an HTML color code has become optional.
2020-11-17 02:55:36 +03:00
Rémi Verschelde
fbe0386c65
Merge pull request #43233 from madmiraal/fix-42876
...
Remove unneeded filter on joy_axis()
2020-11-16 22:41:14 +01:00
Fabio Alessandrelli
efe3eaf6a4
Merge pull request #43493 from timothyqiu/request-absolute-authority
...
Allow HTTPClient to talk to a proxy server
2020-11-16 16:00:26 +01:00
Rémi Verschelde
6c2db73937
Merge pull request #43566 from Calinou/remove-pause-mode-script-property-groups
...
Remove property groups for Pause Mode and Script
2020-11-16 12:53:31 +01:00
Rémi Verschelde
19f27ab486
Merge pull request #42976 from aaronfranke/input-get-axis
...
Allow getting Input "axis" and "vector" values by specifying multiple actions
2020-11-16 09:30:34 +01:00
Rémi Verschelde
a6150eb267
Merge pull request #43289 from KoBeWi/removelease_action
...
Release pressed action if event is removed
2020-11-16 09:29:04 +01:00
Hugo Locurcio
5770e08c2a
Remove property groups for Pause Mode and Script
...
Each of those only grouped 1 property, making them useless.
This closes https://github.com/godotengine/godot-proposals/issues/1840 .
2020-11-15 16:01:10 +01:00
Zae
fa3e0bdd73
fix custom loader/saver broken
2020-11-15 22:14:06 +08:00
Haoyu Qiu
d92ca6fbb1
Allows HTTPClient to talk to proxy server
...
* Makes request uri accept absolute URL and authority
* Adds Host header only when missing
2020-11-14 21:25:15 +08:00
Tomasz Chabora
b7c612bd54
Release pressed action if event is removed
2020-11-12 16:54:16 +01:00
reduz
635d33dc6c
Refactor variant built-in methods yet again.
...
* Using C-style function pointers now, InternalMethod is gone.
* This ensures much better performance in typed code.
* Renamed builtin_funcs to utility_funcs, to avoid naming confusion
2020-11-11 16:36:36 -03:00
Rémi Verschelde
fb2151089c
Merge pull request #43372 from aaronfranke/clamp-fixes
...
Minor clamp and float fixes
2020-11-11 13:20:19 +01:00
Aaron Franke
4abf189e36
Allow getting Input axis/vector values by specifying multiple actions
...
For get_vector, use raw values and handle deadzones appropriately
2020-11-11 06:02:44 -05:00
Aaron Franke
195d58be0f
Add raw strength value for internal use
2020-11-11 05:58:21 -05:00
reduz
5288ff538d
Create Variant built-in functions.
...
-Moved Expression to use this, removed its own.
-Eventually GDScript/VisualScript/GDNative need to be moved to this.
-Given the JSON functions were hacked-in, removed them and created a new JSONParser class
-Made sure these functions appear properly in documentation, since they will be removed from GDScript
2020-11-10 19:31:10 -03:00
Aaron Franke
ee79fc627c
Minor clamp and float fixes
2020-11-10 14:30:07 -05:00
Rémi Verschelde
03ae26bb74
Merge pull request #43398 from KoBeWi/add_an_array_to_another_array_but_with_a_method
...
Add append_array() method to Array class
2020-11-10 13:53:58 +01:00
Rémi Verschelde
32464e569f
Merge pull request #40748 from RandomShaper/improve_packed_fs_api
...
Improve/fix packed data API
2020-11-10 10:59:34 +01:00
Rémi Verschelde
0f249f5c0a
Variant: Sync docs with new constructors, fixups after #43403
...
Change DocData comparators for MethodDoc and ArgumentDoc to get a better
ordering of constructors.
2020-11-09 23:39:53 +01:00
reduz
9979abce74
Change how no-arg constructor is handled internally in Variant.
2020-11-09 16:28:15 -03:00
Rémi Verschelde
b4a0661885
Merge pull request #43419 from reduz/document-operators
...
Make sure operators appear in the docs too
2020-11-09 19:54:34 +01:00
Rémi Verschelde
aa6a1094a5
Merge pull request #43415 from bruvzg/var_ctr_af32
...
Fix duplicate variant constructor typo.
2020-11-09 19:21:20 +01:00
reduz
11bf2ec6d1
Make sure operators appear in the docs too
...
Add "operator" and "constructor" qualifiers to make it easier to
see in the docs.
2020-11-09 14:12:01 -03:00
bruvzg
a4a21654b1
Fix duplicate variant constructor typo.
2020-11-09 18:34:17 +02:00
Andrii Doroshenko (Xrayez)
1e6b684d44
Expose PROPERTY_HINT_TYPE_STRING
to scripting
2020-11-09 18:12:04 +02:00
Rémi Verschelde
9d2e8f2f27
Variant: Rename Type::_RID to Type::RID
...
The underscore prefix was used to avoid the conflict between the `RID` class
name and the matching enum value in `Variant::Type`.
This can be fixed differently by prefixing uses of the `RID` class in `Variant`
with the scope resolution operator, as done already for `AABB`.
2020-11-09 16:29:04 +01:00
Rémi Verschelde
8a318fe1dd
Merge pull request #43404 from akien-mga/color-fix-clamp-uint32_t-warning
...
Color: Fix -Wtype-limits GCC warning after refactoring
2020-11-09 14:59:11 +01:00
Rémi Verschelde
771b3c583d
Color: Fix -Wtype-limits GCC warning after refactoring
...
Warning from GCC 10.2.0 with `warnings=extra`:
```
./core/math/color.h: In member function 'int32_t Color::get_r8() const':
./core/typedefs.h:107:42: error: comparison of unsigned expression in '< 0' is always false [-Werror=type-limits]
107 | #define CLAMP(m_a, m_min, m_max) (((m_a) < (m_min)) ? (m_min) : (((m_a) > (m_max)) ? m_max : m_a))
| ~~~~~~^~~~~~~~~
./core/math/color.h:201:49: note: in expansion of macro 'CLAMP'
201 | _FORCE_INLINE_ int32_t get_r8() const { return CLAMP(uint32_t(r * 255.0), 0, 255); }
| ^~~~~
```
Also some code consistency changes while at it.
2020-11-09 14:11:21 +01:00
reduz
221a2a1742
Refactored variant constructor logic
2020-11-09 08:54:43 -03:00
Tomasz Chabora
9f23a94b8a
Add append_array() method to Array class
2020-11-08 21:09:45 +01:00
Michael Alexsander
4f08174413
Make translation change notification when setting the locale of a Translation resource only happen when loaded in the server
2020-11-08 11:48:50 -03:00
reduz
127458ed17
Reorganized core/ directory, it was too fatty already
...
-Removed FuncRef, since Callable makes it obsolete
-Removed int_types.h as its obsolete in c++11+
-Changed color names code
2020-11-07 20:17:12 -03:00
reduz
05de7ce6ca
Refactored variant setters/getters
...
-Discern between named, indexed and keyed
-Get direct access to functions for typed GDScript and GDNative bindings
-Small changes to some classes in order to work with the new setget binder
2020-11-07 15:16:15 -03:00
Rémi Verschelde
709964849f
Merge pull request #42896 from Calinou/httprequest-increase-chunk-size
...
Increase the default HTTPClient download chunk size to 64 KiB
2020-11-07 16:38:28 +01:00
Rémi Verschelde
329d2c1ced
Merge pull request #42947 from Calinou/image-load-bmp-from-buffer
...
Add `Image.load_bmp_from_buffer()` for run-time BMP image loading
2020-11-07 16:38:09 +01:00
Hugo Locurcio
13357095ee
Increase the default HTTPClient download chunk size to 64 KiB
...
This improves download speeds at the cost of increased memory usage.
This change also effects HTTPRequest automatically.
See #32807 and #33862 .
2020-11-07 16:11:04 +01:00
reduz
f2397809a8
Refactored Variant Operators.
...
-Using classes to call and a table
-For typed code (GDS or GDNative), can obtain functions to call prevalidated or ptr.
2020-11-06 12:45:50 -03:00
Yuri Roubinsky
38fb26794b
Exposed randi_range to global funcs + renamed rand_range to randf_range
2020-11-06 17:06:26 +03:00
Rémi Verschelde
52c1b5fc41
Merge pull request #43283 from Calinou/color-remove-contrasted
...
Remove `Color.contrasted()` as its behavior is barely useful
2020-11-06 10:17:12 +01:00
Andrii Doroshenko (Xrayez)
34ca426851
Remove unused PHI
define in math funcs
2020-11-05 18:05:58 +02:00
Rémi Verschelde
35e6070a35
doc: Override default value for RandomNumberGenerator.seed
...
It's non-deterministic so it's better to show a fixed value like 0 instead of
having it potentially change whenever `randomize()` is called.
Fixes #43317 .
2020-11-05 00:41:24 +01:00
Rémi Verschelde
424cd00f8b
doc: Sync classref with current source + fixup some bindings
...
Includes various changes triggered by the refactoring of method bindings.
2020-11-04 15:38:26 +01:00
reduz
f123981a96
Implement DirectionalLight2D
...
Also separated Light2D in PointLight2D and DirectionalLight2D.
Used PointLight2D because its more of a point, and it does not work
the same as OmniLight (as shape depends on texture).
Added a few utility methods to Rect2D I needed.
2020-11-04 10:03:01 -03:00
Hugo Locurcio
7adb6b91b3
Remove Color.contrasted()
as its behavior is barely useful
...
Returning the most contrasting color isn't a trivial task, as there
are often many possible choices. It's usually best left for the user
to implement using a script.
2020-11-03 04:46:08 -05:00
Rémi Verschelde
873d461785
Merge pull request #40364 from marstaik/alpha2coverage_up
...
Alpha Hash and Alpha2Coverage Implementation
2020-11-03 07:50:49 +01:00
Marios Staikopoulos
e5d7c7d5fc
Alpha Hash and Alpha2Coverage Implementation
2020-11-02 20:11:20 -08:00
Rémi Verschelde
e8794b24bd
Merge pull request #43260 from HaSa1002/mainloop-remove-deprecated-methods
...
MainLoop: Remove deprecated methods
2020-11-02 14:26:49 +01:00
Lyuma
37b6a36cc4
Avoid reentrant OBJTYPE_RLOCK in ClassDB
...
Fixes #43020 when a thread uses ClassDB while main thread calls is_parent_class().
2020-11-01 03:40:06 -08:00
HaSa1002
f8ac4c4d75
MainLoop: Remove deprecated methods
2020-11-01 12:38:30 +01:00
Marcel Admiraal
f9bb8de3fc
Remove unneeded filter on joy_axis()
2020-10-31 09:13:17 +00:00
Rémi Verschelde
f98db723b9
Merge pull request #43184 from Chaosus/fix_randi_range_biased
...
Fix biased output of randi_range
2020-10-30 15:00:44 +01:00
reduz
0e6664539d
Refactor pixel snapping.
...
-Rename pixel_snap to snap_2d_to_vertices
-Added snap_2d_to_transforms which is more useful
Fixes #41814
Solves proposal https://github.com/godotengine/godot-proposals/issues/1666
Supersedes #35606 , supersedes #41535 , supersedes #41534
2020-10-30 08:57:32 -03:00
Yuri Roubinsky
31faa1f226
Fix biased output of randi_range
2020-10-29 15:41:00 +03:00
Rémi Verschelde
54e6338c9b
Vulkan: Make validation layers optional
...
They're now disabled by default, and can be enabled with the command line
argument `--vk-layers`.
When enabled, the errors about them being missing are now warnings, as
users were confused and thought this meant Vulkan is broken for them.
Fix crash in `~VulkanContext` when validation layers are disabled (exposed by
this PR since before they could not be disabled without source modification).
Also moved VulkanContext member initializations to header.
Fixes #37102 .
2020-10-27 16:19:15 +01:00
Rémi Verschelde
fddbfdba91
Merge pull request #43100 from madmiraal/apply-upstream-391
...
Apply upstream gamecontrollerdb patch 391.
2020-10-27 08:56:13 +01:00
Andrii Doroshenko (Xrayez)
1923f0d302
Make randbase
member protected in RandomNumberGenerator
...
Allows to extend `RandomNumberGenerator` via C++ modules.
2020-10-27 01:52:15 +02:00
Marcel Admiraal
afc9e5923e
Apply upstream gamecontrollerdb patch 391.
...
Co-authored-by: SalvoB <salvob41@users.noreply.github.com>
2020-10-26 16:47:48 +00:00
Marcel Admiraal
0c0c36be44
Provide support for buttons and D-pads mapped to half axes, and
...
fix axes mapped to buttons and D-pads.
2020-10-26 07:52:24 +00:00
Yuri Roubinsky
4c65dc975c
Shows ColorRect in Color constants autocompletion
2020-10-23 19:03:50 +03:00
Rafał Mikrut
742251e90a
Fix invalid method names
2020-10-22 19:50:25 +02:00
George Marques
c8716734eb
Merge pull request #43000 from vnen/variant-internal-method-name
...
Add name and base type to Variant::InternalMethod (on debug)
2020-10-22 09:55:18 -03:00
George Marques
8b3271563f
Add name and base type to Variant::InternalMethod (on debug)
...
This is useful to showing error messages when a pointer to an
InternalMethod is the only information available.
2020-10-22 09:07:25 -03:00
Tomasz Chabora
37d515e99c
Favor project.binary over project.godot
2020-10-22 00:12:18 +02:00
Hugo Locurcio
0209e3790e
Add Image.load_bmp_from_buffer()
for run-time BMP image loading
...
This partially addresses
https://github.com/godotengine/godot-proposals/issues/676 .
2020-10-20 23:52:45 +02:00
reduz
ee06a70ea6
Refactor MethodBind to use variadic templates
...
Removed make_binders and the old style generated binders.
2020-10-18 12:28:44 +02:00
Rémi Verschelde
88a3db5bff
Merge pull request #42315 from lyuma/command_queue_fix
...
core/command_queue_mt.h: Fix crash/hang when buffer fills up
2020-10-15 22:35:44 +02:00
reduz
b8c64184c6
Refactored binding system for core types
...
Moved to a system using variadic templates, shared with CallableBind.
New code is cleaner, faster and allows for much better optimization of core
type functions from GDScript and GDNative.
Added Variant::InternalMethod function for direct call access.
2020-10-14 15:24:30 +02:00
Lyuma
9f654b441f
core/command_queue_mt: Fix crash/hang when buffer fills up
...
This patch fixes two related issues. One is the race condition in issue #42107..
The other is a crash which happens when the reader is lapped near the end of the buffer.
2020-10-12 08:41:13 -07:00
Lyuma
48e8da4aac
core/command_queue_mt: Customizable size and tests
...
Adds unit tests for command_queue_mt.h/cpp
In this revision, some unit tests will fail due to issue #42107 .
2020-10-12 08:24:08 -07:00
Fabio Alessandrelli
ab0907c1ba
Merge pull request #42684 from timothyqiu/conn-self-assign
...
Fix HTTPClient::poll crash after connection is self-assigned
2020-10-12 12:40:22 +02:00
Haoyu Qiu
8226cee8d8
Fixes HTTPClient::poll crash after connection is self-assigned
2020-10-10 10:10:30 +08:00
reduz
351a122029
Add ability to bind an unbind arguments to Callable.
2020-10-09 19:43:22 -03:00
Rémi Verschelde
7c4d1e9c65
Merge pull request #42660 from Chaosus/remove_get_uv84_normal_bit
...
Removed unused method Geometry3D.get_uv84_normal_bit
2020-10-09 19:31:24 +02:00
reduz
26f5bd245c
Implement GPU Particle Collisions
...
-Sphere Attractor
-Box Attractor
-Vector Field
-Sphere Collider
-Box Collider
-Baked SDF Collider
-Heightmap Collider
2020-10-09 13:25:47 -03:00
Yuri Roubinsky
66c2aaf749
Removed unused method Geometry.get_uv84_normal_bit
2020-10-09 10:22:26 +03:00
Tomasz Chabora
bb2684f4a7
Cancel rename if file does not exist
2020-10-08 13:00:23 +02:00
Rémi Verschelde
0d8bd93e40
Fix build after merge of #40097
...
CI had passed back then but this would have needed a rebase to
take into account recent changes to String.
2020-10-07 14:23:44 +02:00
Rémi Verschelde
cb77e8d6cf
Merge pull request #40097 from mrushyendra/file_sort_master
...
Fix natural sort comparison for strings with large numbers
2020-10-07 13:59:14 +02:00
Aaron Franke
1ca501d7d4
Check for global script class information before clearing it
2020-10-05 15:45:54 -04:00
Rémi Verschelde
e35bb04c53
Improve format version mismatch error in binary loader
2020-10-05 14:49:41 +02:00
Aaron Franke
3163611f0c
Don't write global script class information if there is none
2020-10-03 04:36:07 -04:00
Serhat
9f2cdfea82
Fixed padding bug of sprintf function
2020-10-02 00:25:42 +03:00
Wilson E. Alvarez
b4e7edabf3
Make "function" a property of FuncRef
2020-09-30 06:57:59 -04:00
Craig-Stoneham
46519ba52c
Removed unnecessary keyword, fix comment style
...
The privacy here is already private
2020-09-29 10:30:02 +02:00
Rémi Verschelde
b07f020c99
Merge pull request #42133 from vnen/variant-op-consistency
...
Allow commutative multiplication in Variant
2020-09-28 15:56:29 +02:00
Aaron Franke
5fbcd8f9df
Rename the ".import" folder to ".godot/imported"
2020-09-28 05:23:45 -04:00
Rémi Verschelde
1a8dfcd97b
Merge pull request #42304 from akien-mga/os-drop-get_splash_tick_msec
...
OS: Remove unused get_splash_tick_msec
2020-09-28 10:13:37 +02:00
Rémi Verschelde
545da82427
Merge pull request #42340 from Rubonnek/get-funcref-function
...
Allow retrieval of FuncRef function string
2020-09-27 10:08:25 +02:00
Rémi Verschelde
fc481db1c3
Merge pull request #37403 from aaronfranke/basis_equal_approx
...
Change Basis is_equal_approx to use instance method
2020-09-27 08:46:37 +02:00
Wilson E. Alvarez
75154e64a9
Allow retrieval of FuncRef function string
2020-09-25 11:54:51 -04:00
Rémi Verschelde
819c3524a5
OS: Remove unused get_splash_tick_msec
...
It was added in 3e20391bf6
but it doesn't seem
particularly useful, and it was only implemented for the custom splash branch
and not the default one, so it could return an uninitialized int.
2020-09-24 15:40:30 +02:00
Rémi Verschelde
9c9f3365b2
Merge pull request #42296 from akien-mga/messagequeue-default-size-4096-kb
...
MessageQueue: Change default queue size to 4096 KB
2020-09-24 15:11:17 +02:00
Tomasz Chabora
7b1ad6fbe0
Remove unnecessary empty line from Dictionaries
2020-09-24 13:23:06 +02:00
Rémi Verschelde
5009ba54b2
MessageQueue: Change default queue size to 4096 KB
...
1024 KB was low enough that many users seem to hit it, which can lead to the
editor freezing.
The proper fixed as described in #35653 would be to implement a page allocator
to prevent this overflow, but as a stop-gap measure, we can increase the
default value to a more lenient 4096 KB which should be high enough for the
vast majority of use cases.
The default size can be brought down again if/when #35653 is properly fixed,
and if it's actually relevant from a memory point of view.
2020-09-24 09:05:12 +02:00
Tomasz Chabora
f4e34ac353
Check for null in InputMap::_find_event
2020-09-23 15:39:06 +02:00
Aaron Franke
9394c057b8
Remove redundant is_equal_approx_ratio method
...
is_equal_approx is able to handle values of any size, and is_equal_approx_ratio is no longer used in any exposed APIs, so we don't need is_equal_approx_ratio anymore. Also, add #ifdef MATH_CHECKS for a method that is only used when MATH_CHECKS is defined.
2020-09-23 00:28:49 -04:00
Aaron Franke
23dabcd2d0
Change Basis is_equal_approx to use instance method
2020-09-23 00:28:49 -04:00
Hugo Locurcio
0b65342fd2
Fix crash when opening a ZIP data pack
...
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2020-09-19 15:45:00 +02:00
Rémi Verschelde
914591c9ae
zstd: Update to upstream version 1.4.5
2020-09-18 21:47:12 +02:00
Rémi Verschelde
3e78963bb9
Fix typos with codespell
...
Using codespell 1.17.1.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2020-09-18 13:44:25 +02:00
Rémi Verschelde
5f4d64f4f3
Linux/BSD: Fix support for NetBSD
...
Add __NetBSD__ to `platform_config.h` so that it can find `alloca`
and use the proper `pthread_setname_np` format.
Rename RANDOM_MAX to avoid conflict with NetBSD stdlib.
Fixes #42145 .
2020-09-18 10:27:55 +02:00
George Marques
e4942e4a96
Allow commutative multiplication in Variant
...
Also allow quaternions to be multiplied by integers.
2020-09-17 09:02:53 -03:00
Rémi Verschelde
6ac7b90097
Merge pull request #42013 from Xrayez/fix-list-swap
...
Fix `List` swap behavior on front, back and adjacent elements
2020-09-16 17:39:43 +02:00
Andrii Doroshenko (Xrayez)
cfead57d1d
Make Object::to_string
virtual
...
Allows to override printing via C++, not only via script.
2020-09-15 18:14:45 +03:00
Andrii Doroshenko (Xrayez)
ac69f092fc
Fix List
swap behavior on front, back and adjacent elements
...
- immediately return if A == B;
- first and last elements (front, back) are updated upon relinking;
- handles a special case of forward and backward adjacent elements.
2020-09-12 23:58:56 +03:00
George Marques
49e0cadcca
Fix Vector{2,3}i casting on Variant multiplication with numbers
2020-09-12 17:23:34 -03:00
Marcel Admiraal
4feba93630
Add missing reference to const T Vector::get().
2020-09-11 11:58:47 +01:00
Marcel Admiraal
e3d698dae9
Remove unused Python imports.
2020-09-10 11:38:52 +01:00
reduz
a674da4eec
Implement 3D textures as import and resource format.
2020-09-09 13:50:21 -03:00
Aaron Franke
d0a1399a1b
Change inequality comparison operators to use exact equality
2020-09-08 18:10:58 -04:00
Marcel Admiraal
9149fb760c
Initialise Basis elements with a default Basis in the declaration.
...
Ensures a valid Basis is created with all constructors.
2020-09-08 12:15:08 +01:00
Rémi Verschelde
3c42d5789f
Merge pull request #38308 from bruvzg/sad_security_circus
...
Adds PCK encryption support (using script encryption key for export).
2020-09-07 17:12:01 +02:00
Fabio Alessandrelli
2cb6b2ac6f
Merge pull request #38944 from Wavesonics/http-gzip
...
HttpRequest now handles gzipping response bodies
2020-09-07 17:03:19 +02:00
bruvzg
f043eabdd8
Adds PCK encryption support (using script encryption key for export).
...
Change default encryption mode from ECB to CFB.
2020-09-05 14:53:39 +03:00
Adam Brown
8f1a6d7489
Fixed PackedByteArray GDScript functions
...
p_self._data.packed_array needs to be used instead of p_self._data._mem
printline
2020-09-04 12:43:00 -07:00
Marcel Admiraal
ce263c4ff6
Ensure assignment operators return by reference to avoid unnecessary copies.
2020-09-04 09:18:19 +01:00
bruvzg
80b8eff6aa
[Complex Test Layouts] Change String
to use UTF-32 encoding on all platforms.
2020-09-03 19:56:24 +03:00
Marcel Admiraal
f6ad1954f7
Ensure header guards enclose entire header.
2020-09-03 11:29:42 +01:00
Rémi Verschelde
f57ade8f80
Merge pull request #41460 from Calinou/improve-resource-load-fail-message
...
Improve the resource loading error message to mention the need to import
2020-09-03 11:31:27 +02:00
Rémi Verschelde
4a5138bb99
Merge pull request #40400 from Arivval/load-resourcepack-with-offset
...
Added PCK file loading with offset feature
2020-09-03 07:33:19 +02:00
Yilin Ma
c524d50444
added load resource pack with offset feature
...
updated variables to use size_t
removed line break to make code style more consistent
added conditional check to return an error if offset field is used when loading a ZIP package
fixed typo
formatted file
added commit regarding self contained exe files
handled error loging for load zip file with offset
spelling tweak
updated conditional statement for magic check
udpated error message when load Zip file with offset is called
fix CI
Trying to fix CI
fix CI done
Added error message for loading self-contained exe with offset.
Updated documentation.
Fix indent
final fix indent
Updated documentation.
fix indents
Updated doc based on suggestion
Final fix
fixed format
2020-09-02 17:57:01 -05:00
Adam Brown
6584db1538
HTTPRequest now accepts gzip
...
Added request_raw to HttpRequest
Added decompress_dynamic to Compression class
Added decompress_dynamic to BytePoolArray
Merge doc fix
revert
2020-09-02 12:59:59 -07:00
George Marques
1a29e94c52
Add VariantInternal class
...
This is used to get a direct pointer for the data inside a Variant.
Added as another class instead of in Variant directly because this
should only be used in special cases, so use must be explicit.
2020-09-02 16:23:57 -03:00
Andrii Doroshenko (Xrayez)
0cc05c5a31
Register GDScript test tools as test commands to run via command-line
2020-09-02 01:43:26 +03:00
Rémi Verschelde
1e49a86884
Fix invalid CSV in SDL2 controller mappings DB
...
Follow-up to a61cae1469
.
2020-09-01 20:53:51 +02:00
Rémi Verschelde
8ce02caf40
Merge pull request #41669 from strank/hardcoded-op-max
...
Fix hard-coded OP_MAX in variant_op.cpp
2020-09-01 19:51:23 +02:00
Rémi Verschelde
eac32f082a
Merge pull request #40868 from aaronfranke/color-html-rgba
...
Change Color HTML conversion from ARGB to RGBA
2020-09-01 10:44:36 +02:00
Rémi Verschelde
a61cae1469
Sync controller mappings DB with SDL2 community repo
...
Synced with gabomdq/SDL_GameControllerDB@d148c6ce49 .
2020-09-01 10:23:16 +02:00
strank
447b140671
Fix hard-coded OP_MAX in variant_op.cpp
2020-09-01 03:17:42 -04:00
Aaron Franke
a6ff389a55
Simplify html_is_valid and allow it to work with 3 and 4 hex digits
2020-09-01 02:07:35 -04:00
Aaron Franke
ecd6a893b4
Change Color HTML conversion from ARGB to RGBA
...
Also add support for 3 and 4 digit values in C#. Now it actually matches the HTML/CSS spec.
2020-09-01 02:07:35 -04:00
Rémi Verschelde
37443bf04d
Merge pull request #41635 from jkb0o/master
...
Clear missed remaps on deinitialization
2020-08-31 15:29:17 +02:00
Yakov Borevich
604bd75438
[funexpected] clear missed remaps on deinitialization, fixes godotengine/godot#34221
2020-08-31 16:04:46 +03:00
Rémi Verschelde
a276e6fc36
Merge pull request #40955 from Calinou/test-add-expression
...
Add a test suite for Expression
2020-08-31 11:12:34 +02:00
Hugo Locurcio
d5ffa42cd2
Add a test suite for Expression
...
This also makes the first parameter of `Expression::execute()` optional
from C++. Previously, it was only optional in the scripting API.
2020-08-27 15:16:09 +02:00
simpu
ea2eaf8c27
Added debugger plugin support
...
Changes:
* EngineDebugger is exposed to gdscript. Game side of communication can be implemented through it.
* EditorDebuggerPlugin is added which handles the editor side of communication.
2020-08-26 11:24:51 +05:30
Rémi Verschelde
f13207254c
Revert "Check if global class file still exists before registering it"
...
And revert follow-up regression fix "Remap script path when registering class."
After the regression fix, the original issue is valid again so it's better
to go back to the previous state.
This reverts commits e264ae20d2
and
fceb64827e
.
2020-08-25 13:02:03 +02:00
Rémi Verschelde
9d8f3496e8
Merge pull request #40443 from SkyLucilfer/PluralsSupport
...
Added plurals and context support to Translation
2020-08-25 12:11:56 +02:00
Hugo Locurcio
58ed3037c0
Improve the resource loading error message to mention the need to import
...
This is a common pitfall when setting up projects in a headless
environment.
2020-08-22 22:19:08 +02:00
Marcel Admiraal
5f092cf7bb
Fix new black style check failures in various files.
2020-08-21 16:51:30 +01:00
Rémi Verschelde
989a4deb2f
Fix warning using ERR_FAIL_INDEX on unsigned int
...
This method starting being used in 079ca220e1
,
which now triggers this warning from GCC 10:
```
./core/error_macros.h:151:25: error: comparison of unsigned expression in '< 0' is always false [-Werror=type-limits]
```
2020-08-19 14:41:46 +02:00
SkyJJ
ce3461dc88
Update GDScriptTranslationParserPlugin to use GDSriptParser instead of RegEx.
2020-08-19 03:10:51 +02:00
SkyJJ
0ef758eaee
Updated Translation architecture to have TranslationPO, did some commit fixes and updated class Reference.
2020-08-19 03:01:53 +02:00
SkyJJ
c0d837a2ea
Added plurals and context support to Translation
2020-08-19 03:01:51 +02:00
Eric M
8f54e8bfb5
Fixed issues with adding custom project settings and added confirmation dialog when deleting settings.
2020-08-18 09:12:02 +10:00
Rémi Verschelde
d2d4c1c957
Update AUTHORS and DONORS list
...
New contributors added to AUTHORS:
@hinlopen, @naithar, @rrcore, @SkyLucilfer, @TwistedTwigleg
Thanks to all contributors and donors for making Godot possible!
---
Also changes to relevant code that parses the DONORS.md to match
the new tiers.
2020-08-14 00:06:51 +02:00
Juan Linietsky
079ca220e1
Added volumetric fog effect.
2020-08-13 11:28:45 -03:00
Rémi Verschelde
d3b5c0948c
Merge pull request #41025 from Faless/gdscript/fix_class_name
...
Remap script path when registering class.
2020-08-11 20:02:35 +02:00
Rémi Verschelde
a32b427f99
Merge pull request #41043 from ShivamMukherjee/fix-variant-call
...
Fix Vector3i and Vector2i AXIS_* constants
2020-08-10 19:30:39 +02:00
Stijn Hinlopen
5563722628
Rewrite ProjectSettings editor advanced options
...
- New layout: advanced options hidden by default, error labels added.
- Disallow adding invalid new settings, or overwriting built-in settings.
2020-08-10 17:32:01 +02:00
Vivraan
8629cfdb08
Fix Vector3i and Vector2i AXIS_* constants
2020-08-05 14:15:28 +05:30
Fabio Alessandrelli
fceb64827e
Remap script path when registering class.
...
Was causing `class_name`-defined scripts to not being loaded in exported
games due to the remap from `*.gd` to `*.gdc`/`*.gde`.
2020-08-04 15:46:40 +02:00
Andrea Catania
9fb587b702
Fixes issue with LocalVector remove function
2020-07-31 13:49:15 +02:00
Wilson E. Alvarez
e264ae20d2
Check if global class file still exists before registering it
2020-07-28 09:25:34 -04:00
Aaron Franke
56e2c6c704
Make all String float conversion methods be 64-bit
2020-07-27 18:38:53 -04:00
Andrii Doroshenko (Xrayez)
d86de6c98e
SCons: Refactor running commands through builders
...
A new `env.Run` method is added which allows to control the verbosity
of builders output automatically depending on whether the "verbose"
option is set. It also allows to optionally run any SCons commands in a
subprocess using the existing `run_in_subprocess` method, unifying
the interface. `Action` objects wrap all builder functions to include a
short build message associated with any action.
Notably, this removes quite verbose output generated by `make_doc_header`
and `make_editor_icons_action` builders.
2020-07-28 00:09:21 +03:00
Pedro J. Estébanez
f38949a44d
Improve/fix packed data API
...
- Enhance directory API
- Fix `FileAccess::exists()` not checking for PackedData being disabled
- Fix moving to the parent directory (`..`)
- Allow absolute paths in existence checks
2020-07-27 12:06:40 +02:00
Rémi Verschelde
33d423e240
Merge pull request #39898 from Meriipu/master_gdscript
...
GDScript: Clarified/fixed inaccuracies in the built-in function docs.
2020-07-26 17:12:13 +02:00
Rémi Verschelde
b2096ba53e
Merge pull request #40670 from vnen/remove-multilevel-call
...
Remove multilevel calls
2020-07-26 17:09:41 +02:00
Sergey Minakov
7ee268c2c7
Core Variant: switch from 'real' to 'float' to allow building with NEED_LONG_INT
2020-07-25 21:55:10 +02:00
Sergey Minakov
8e9a07c401
Core Callable: fixed variant call caster
...
Use same call to VariantCaster in release build as used in VariantCasterAndValidate::call method
2020-07-25 21:55:08 +02:00
Meriipu
7f9bfee0ac
GDScript: Clarified/fixed inaccuracies in the built-in function docs.
...
The input to smoothstep is not actually a weight, and the decscription
of smoothstep was pretty hard to understand and easy to misinterpret.
Clarified what it means to be approximately equal.
nearest_po2 does not do what the descriptions says it does. For one,
it returns the same power if the input is a power of 2. Second, it
returns 0 if the input is negative or 0, while the smallest possible
integral power of 2 actually is 1 (2^0 = 1). Due to the implementation
and how it is used in a lot of places, it does not seem wise to change
such a core function however, and I decided it is better to alter the
description of the built-in.
Added a few examples/clarifications/edge-cases.
2020-07-25 20:26:02 +02:00
Rémi Verschelde
6f292f906e
Merge pull request #38900 from bruvzg/docs_ignore_os_spec_def_vals
...
Docs: Ignore OS specific values (constants, project settings, properties)
2020-07-25 18:54:25 +02:00
Wilson E. Alvarez
1cd02ef600
Show errors on Object.call_deferred
2020-07-24 21:47:01 -04:00
George Marques
2b9d9bc364
Remove multilevel calls
...
In general they are more confusing to users because they expect
inheritance to fully override parent methods. This behavior can be
enabled by script writers using a simple super() call.
2020-07-24 14:13:58 -03:00
RevoluPowered
579342810f
t Add unit testing to Godot using DocTest and added to GitHub Actions CI
...
Implements exit codes into the engine so tests can return their statuses.
Ideally we don't do this, and we use FIXUP logic to 'begin' and 'end' the engine execution for tests specifically.
Since realistically we're initialising the engine here we don't want to do that, since String should not require an engine startup to test a single header.
This lowers the complexity of running the unit tests and even for
physics should be possible to implement such a fix.
2020-07-24 13:05:33 +01:00
Rémi Verschelde
3811fb919e
Merge pull request #40598 from vnen/gdscript-2.0
...
GDScript 2.0 (again)
2020-07-24 01:04:57 +02:00
Adam Bates
8f84dfa91d
issue-40396 - Added missing error strings to JSON parsing when array or object is never closed.
2020-07-22 15:06:57 -04:00
Rémi Verschelde
a5fb445121
Merge pull request #40450 from asmaloney/spelling
...
Fix spelling & grammar in comments, docs, and messages
2020-07-21 22:14:04 +02:00
Andy Maloney
4dda62f591
Fix spelling & grammar in comments, docs, and messages
2020-07-21 15:17:23 -04:00
Aaron Franke
83e324d670
Update core documentation to match recent C# changes
...
Also a few minor API changes like adding AABB.abs()
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2020-07-21 14:44:53 -04:00
George Marques
95c0909290
Add warning checks in GDScript analyzer
...
Reenable checking those when validating code.
2020-07-20 11:38:40 -03:00
Rémi Verschelde
818bfbc5b5
Merge pull request #40161 from vnen/classdb-info-methods
...
Add methods in ClassDB to get property/method/constant/enum info
2020-07-20 16:29:33 +02:00
Rémi Verschelde
0e1c235d95
Merge pull request #40468 from asmaloney/spelling-code
...
Fix spelling of a var, a struct, and some message output
2020-07-20 15:51:05 +02:00
Nathan Franke
210ccb3a75
Fix Directory make_dir and make_dir_recursive
2020-07-20 06:38:10 -05:00
Andy Maloney
8b949918b1
Fix spelling of a var, a struct, and message output
2020-07-17 12:02:06 -04:00
bruvzg
0181c3dde1
Docs: Ignore OS specific values (constants, project settings, properties).
2020-07-15 12:24:59 +03:00
Rémi Verschelde
9bdcfc4e87
Merge pull request #40374 from Faless/udp/server_abstraction
...
UDPServer uses single socket, abstract clients.
2020-07-14 16:31:19 +02:00
Fabio Alessandrelli
147bbe2155
UDPServer handles PacketPeerUDP-client association
...
UDPServer now uses a single socket which is shared with the
PacketPeerUDP it creates and has a new `poll` function to read incoming
packets on that socket and delivers them to the appropriate peer.
PacketPeerUDP created this way never reads from the socket, but are
allowed to write on it using sendto.
This is needed because Windows (unlike Linux/BSD) does not support
packet routing when multiple sockets are bound on the same address/port.
2020-07-14 14:10:18 +02:00
Rémi Verschelde
47cc202972
PO loader: Fix unclosed files and error messages
...
Trying to get `f->get_path()` after deleting `f` was not super clever :)
Fixes #40324 .
2020-07-14 13:39:46 +02:00
Rémi Verschelde
ca5958d180
Merge pull request #38440 from Paulb23/syntax_highlighter_refactor
...
Syntax highlighter refactor
2020-07-14 09:49:02 +02:00
Aaron Franke
9986439352
Commit other files changed by file_format.sh
2020-07-13 14:14:11 -04:00
Andrii Doroshenko (Xrayez)
1f73469b50
Fix overriding compression related settings
2020-07-13 14:38:35 +03:00
Paulb23
bc4cee4458
Extract Syntax highlighting from TextEdit and add EditorSyntaxHighlighter
...
- Extacted all syntax highlighting code from text edit
- Removed enable syntax highlighting from text edit
- Added line_edited_from signal to text_edit
- Renamed get/set_syntax_highlighting to get/set_syntax_highlighter
- Added EditorSyntaxHighligher
2020-07-11 17:09:58 +01:00
Paulb23
be119c5c47
Add core types to ScriptLanguage
2020-07-11 15:19:02 +01:00
Marcel Admiraal
26fcf2b04c
Add override keywords.
2020-07-10 13:56:54 +01:00
Rémi Verschelde
aeccd1e287
Merge pull request #40121 from Calinou/enable-file-logging
...
Enable file logging by default on desktops to help with troubleshooting
2020-07-10 11:02:57 +02:00
Nathan Franke
6952458538
Follow-Up Fix Directory Open
2020-07-10 02:56:37 -05:00
PouleyKetchoupp
b2d27214aa
Keep debug & verbose options after loading project from project manager
2020-07-09 09:51:32 +02:00
Hugo Locurcio
20af28ec06
Enable file logging by default on desktops to help with troubleshooting
...
- Use the `.log` file extension (recognized on Windows out of the box)
to better hint that generated files are logs. Some editors provide
dedicated syntax highlighting for those files.
- Use an underscore to separate the basename from the date and
the date from the time in log filenames. This makes the filename
easier to read.
- Keep only 5 log files by default to decrease disk usage in case
messages are spammed.
2020-07-08 18:57:25 +02:00
Aaron Franke
af80bcd2f8
Add sort and has methods to PackedArrays
2020-07-06 22:16:39 -04:00
Rémi Verschelde
141ce4d1f9
Merge pull request #40151 from nathanfranke/fix-directory-open-check
...
Fix Directory Open Check
2020-07-07 01:28:11 +02:00
George Marques
14e85b762e
Add methods in ClassDB to get property/method/constant/enum info
...
Without the need to iterate the whole list.
2020-07-06 19:27:05 -03:00
Nathan Franke
09aeb7706b
Fix Directory Open Check
2020-07-06 11:32:05 -05:00
George Marques
9654365547
Add a map of autoloads to ProjectSettings
...
So places that need to look into it can use the list instead of parsing
ProjectSettings details (like checking "*" in path for testing if it's
singleton).
2020-07-06 12:35:51 -03:00
Rémi Verschelde
7e38e8fdb0
Merge pull request #40138 from neikeq/error-macros-use-bool-literals
...
Fix 'modernize-use-bool-literals' clang-tidy warnings in error macros
2020-07-05 22:33:13 +02:00
Ignacio Etcheverry
ea632a5007
Fix 'modernize-use-bool-literals' clang-tidy warnings in error macros
2020-07-05 19:22:26 +02:00
Jummit
d4c4d2db4c
add root_node as property of MultiplayerAPI
2020-07-05 16:15:04 +02:00
Maganty Rushyendra
de46c92711
Fix natural sort comparison for strings with large numbers
...
Fix errors when comparing strings with large numbers (> INT64_MAX).
Comparisons now occur by comparing individual digits, instead of
converting to int64_t first.
2020-07-04 07:42:02 +08:00
Rémi Verschelde
c020eea184
Merge pull request #40092 from hinlopen/remove-find-last
...
Remove String::find_last (same as rfind)
2020-07-04 01:38:01 +02:00
Stijn Hinlopen
929b98d24b
Remove String::find_last (same as rfind)
2020-07-03 15:26:22 +02:00
Rémi Verschelde
b5488def47
Image: Improve error messages for invalid creation size
2020-07-03 12:57:23 +02:00
Rémi Verschelde
fd5b6e1db2
Merge pull request #40009 from mrushyendra/ustring_overflow_master
...
Fix overflow and underflow checks for string conversion to int
2020-07-02 16:32:27 +02:00
Rémi Verschelde
c069f5f5ca
Merge pull request #34028 from nekomatata/list-erase-not-found
...
Removed errors when List::erase() can't find the value
2020-07-02 13:32:57 +02:00
Maganty Rushyendra
687b127fc5
Fix overflow and underflow checks for string conversion to int
...
Current error checks for to_int and to_int64 do not issue overflow error
messages for INT64_MAX + 1, INT64_MAX + 2, and other numbers close to the
integer limits. Likewise, error checks for hex_to_int, hex_to_int64 and
bin_to_int64 issue false positive error messages for INT64_MIN or INT32_MIN.
This commit fixes these error checks.
2020-07-02 09:58:23 +08:00
Rémi Verschelde
6cf416dafc
Merge pull request #33061 from madmiraal/nullpointerdereference
...
Call CRASH_COND_MSG if key not found in HashMap get(key) functions.
2020-07-01 18:20:23 +02:00
Rémi Verschelde
a8a2769bb6
Merge pull request #38713 from aaronfranke/string-64bit
...
Make all String integer conversion methods be 64-bit
2020-07-01 16:01:05 +02:00
Marcel Admiraal
1b05f449f0
Call CRASH_COND_MSG if key not found in HashMap get function.
2020-07-01 10:50:13 +01:00
PouleyKetchoupp
45445e1b31
Removed errors when List::erase() can't find the value
...
This change makes the behavior consistent when the value
is not found between erasing from an empty list
(no error, just returning false) and erasing from a non-empty list
(previously displaying triggering an error and returning false).
Error message previously triggered:
ERROR: erase: Condition ' !p_I ' is true. returned: false
At: ./core/list.h:157.
2020-07-01 10:17:27 +02:00
Fabio Alessandrelli
1b6e3458b2
Move frame delaying functions from Main to OS.
...
Will allow specific platforms to override it and avoid blocking on the
main/GUI thread.
2020-06-30 19:39:09 +02:00
Rémi Verschelde
5f2295f2df
Merge pull request #39986 from reduz/app-inout-notification
...
Add a separate application focus/in notification
2020-06-30 16:58:46 +02:00
Rémi Verschelde
f3c5f12e39
Merge pull request #38920 from paulherman/tga
...
Expose loading TGA images in Image.
2020-06-30 16:40:28 +02:00
Juan Linietsky
438c380458
Add a separate application focus/in notification out from Window focus notification.
2020-06-30 10:40:06 -03:00
simpu
bfadb882b1
Added Custom Performance Monitor and feature to read intermediate values of Monitor
...
Custom monitors can be added/removed/checked using `Performance.add_custom_monitor`/`Performance.remove_custom_monitor`/`Performance.has_custom_monitor`
The value can be viewed in the `Monitor` tab of Debugger.
Text before `/` is used to categorize the custom monitor.
`EditorPerformanceProfiler` class is created to separate logic from `ScriptEditorDebugger`
User can click on the graph of monitors to read the value at that point.
Graph includes intermediate base lines.
2020-06-29 17:20:29 +05:30
Maganty Rushyendra
aae5f246ff
Fix weekday calculation in get_datetime_from_unix_time for negative times
...
Fix calculation for negative times to ensure Sundays are wrapped around to '0'
instead of '7', making it consistent with the output for positive times.
2020-06-29 14:27:10 +08:00
Juan Linietsky
201d606b3d
Addition of SDFGI for open world global illumination
...
Move GI to a deferred pass
2020-06-26 11:06:48 -03:00
Rémi Verschelde
23f7f86914
Style: Fix copyright headers
2020-06-25 16:33:44 +02:00
Rémi Verschelde
850134aff9
Merge pull request #39617 from mrushyendra/bilinear_interpolation
...
Fix upscaling image with bilinear interpolation option specified
2020-06-24 21:58:43 +02:00
Rémi Verschelde
42c4a701dd
Merge pull request #39755 from Faless/crypto/encryption_pr_4.0
...
Crypto enhancements, AESContext, RSA public key, signature, verification.
2020-06-22 23:31:58 +02:00
Rémi Verschelde
35414f1dec
Merge pull request #39053 from timoschwarzer/static-assert-variant-arg-max
...
Add static_assert checks where code assumes VARIANT_ARG_MAX == 5
2020-06-19 23:51:22 +02:00
Andy Maloney
37a2a5a997
Ensure FileAccessBuffered structs are properly initialized
2020-06-19 11:36:28 -04:00
Maganty Rushyendra
f24ec3878e
Fix upscaling image with bilinear interpolation option specified
...
Fix error in calculation of 4 nearest points in source image when
resizing image with bilinear interpolation.
2020-06-19 09:38:42 +08:00
Fabio Alessandrelli
8e3f9aa681
Implement RSA encryption/decryption.
2020-06-18 15:29:39 +02:00
Fabio Alessandrelli
dfcc11fa52
Implement sign and verify in crypto.
2020-06-18 15:29:39 +02:00
Fabio Alessandrelli
788f18086e
CryptoKey supports public keys.
2020-06-18 15:29:39 +02:00
Fabio Alessandrelli
9a462e07a4
Add AESContext.
...
GDScript interface to CryptoCore::AESContext.
Also add CBC mode in CryptoCore::AESContext and expose it.
2020-06-18 15:26:24 +02:00
Aaron Franke
0fa478a050
Simplify Transform2D get_rotation
2020-06-17 01:00:42 -04:00
Rémi Verschelde
309adb93cd
Merge pull request #39484 from hbina/use_nullptr_in_macros
...
Check pointers against nullptr.
2020-06-16 10:42:56 +02:00