Commit graph

4988 commits

Author SHA1 Message Date
Ellen Poe
936767deca Fail mp3 loading when attempting to load invalid mp3s
This also adds a warning for unspecified MP3 loading error codes
2021-02-15 10:02:19 -08:00
bruvzg
bee718f1af
[Text Server] Restores bitmap font dynamic construction functions. 2021-02-15 10:46:49 +02:00
bruvzg
f4d095cdd3
[TextServer] Restore character and space extra spacing support. 2021-02-15 10:46:23 +02:00
bruvzg
2f391bd9c3
[CTL] Fix scaling of the underline position and size. 2021-02-14 14:11:48 +02:00
Rémi Verschelde
b9aa2d0dfb
Merge pull request #45953 from BastiaanOlij/no_unload_non_reloadable
Only unload the library if the reloadable flag is true
2021-02-14 12:17:14 +01:00
Rémi Verschelde
4eae532921
Merge pull request #46009 from qarmin/xatlas_leak
Fix memory leak in Xatlas module
2021-02-14 12:16:46 +01:00
Rafał Mikrut
e57b8d79ec Fix memory leak in Xatlas module 2021-02-14 11:59:57 +01:00
Bastiaan Olij
ae7675065a Only unload the library when no NativeScript objects exist if the reloadable flag is true. If it is false it is likely the library does other things and can't be unloaded 2021-02-14 15:47:49 +11:00
Xartorx
8e1da2e0e5 Fix Mono build after resource load cache changes 2021-02-13 22:13:45 +03:00
reduz
28537d8c84 Fix LineEdit minimum width
-Changed theme setting name to make more sense of what it does
-Reduced amount of minimum characters, so minimum size is smaller.
2021-02-12 17:04:38 +01:00
reduz
f8d03b98e7 Improve resource load cache
-Added a new method in Resource: reset_state , used for reloading the same resource from disk
-Added a new cache mode "replace" in ResourceLoader, which reuses existing loaded sub-resources but resets their data from disk (or replaces them if they chaged type)
-Because the correct sub-resource paths are always loaded now, this fixes bugs with subresource folding or subresource ordering when saving.
2021-02-11 15:44:28 -03:00
Henry Conklin
6575e4c1ba Fix broken gdnative variant test 2021-02-11 07:14:28 -06:00
Rémi Verschelde
94cba993bf
Merge pull request #45847 from vnen/gdnative-bindings
Improve GDNative API and JSON generation further
2021-02-11 11:11:29 +01:00
reduz
1aa2823fa3 Removed _change_notify
-For inspector refresh, the inspector now detects if a property change by polling a few times per second and then does update the control if so. This process is very cheap.
-For property list refresh, a new signal (property_list_changed) was added to Object. _change_notify() is replaced by notify_property_list_changed()
-Changed all objects using the old method to the signal, or just deleted the calls to _change_notify(<property>) since they are unnecesary now.
2021-02-10 19:31:24 -03:00
reduz
8b19ffd810 Make Servers truly Thread Safe
-Rendering server now uses a split RID allocate/initialize internally, this allows generating RIDs immediately but initialization to happen later on the proper thread (as rendering APIs generally requiere to call on the right thread).
-RenderingServerWrapMT is no more, multithreading is done in RenderingServerDefault.
-Some functions like texture or mesh creation, when renderer supports it, can register and return immediately (so no waiting for server API to flush, and saving staging and command buffer memory).
-3D physics server changed to be made multithread friendly.
-Added PhysicsServer3DWrapMT to use 3D physics server from multiple threads.
-Disablet Bullet (too much effort to make multithread friendly, this needs to be fixed eventually).
2021-02-10 13:21:46 -03:00
George Marques
0b3819d213
Improve GDNative api.json generator
- Add indexed type to the builtin types output, which is useful for
  bindings implementing array-like access.
- Use getter type instead of hint for property types, as the hint can be
  unreliable and include multiple comma-separated possible types.
2021-02-09 11:37:15 -03:00
George Marques
66ed69edb3
Further changes to GDNative API
- Moved Variant struct definition to its own file so it can be used
  without include cycles (like on Dictionary).
- Add `index` operator function so bindings like C++ can implement the
  operator[] overload (which needs a reference to the actual value).
- Added missing new/destroy functions to Vector3i array.
- Added print error/warning functions as helpers so bindings can print
  messages in the same manner as Godot itself does.
2021-02-09 11:33:35 -03:00
Rafał Mikrut
f7209b459b Initialize class/struct variables with default values in modules/ 2021-02-08 10:57:18 +01:00
jfons
99e1ce0690 Invert spotlight angle attenuation
Inverted the spotlight angle attenuation so a higher value results in
a dimmer light, this makes it more consistent with the distance
attenuation.

Also changed the way spotlighs are computed in SDFGI
and GIPorbes and GPU lightmapper, now it matches the falloff used in the scene rendering
code.
2021-02-07 20:10:33 +01:00
Kanabenki
07fb7f9888 Snap VisualScript comment to grid when resizing 2021-02-06 21:39:35 +01:00
Rémi Verschelde
3723d71de4
Merge pull request #45667 from Calinou/doc-gridmap-no-visual-layers
Document that GridMap doesn't support visual layers or cull masks
2021-02-05 10:25:04 +01:00
bruvzg
e304f716c7
[Mono] Use the same search logic for both MSBuild and dotnet, add custom search paths on macOS. 2021-02-04 22:39:38 +02:00
Hein-Pieter van Braam-Stewart
403e4fd08b Fix a crash in the TGA loader with malformed input 2021-02-04 13:09:21 +01:00
Hugo Locurcio
95fda7e881
Document that GridMap doesn't support visual layers or cull masks
See #40245.
2021-02-02 19:30:55 +01:00
Miguel de Icaza
f02252e37d C conformance: Include stdbool.h to define bool
`bool` is otherwise not defined in C.
2021-02-02 18:11:00 +01:00
Aaron Franke
f55445079a
Replace ColorN and from HTML with a string constructor 2021-02-01 17:27:19 -05:00
Rémi Verschelde
d2e1216504
Merge pull request #37547 from aaronfranke/tau
Use Math_TAU and deg2rad/etc in more places and optimize code
2021-02-01 20:55:25 +01:00
Rémi Verschelde
0db77315fe
Merge pull request #45608 from bruvzg/font_int_coords
Use integer coordinates for the font glyphs rendering.
2021-02-01 20:42:52 +01:00
zaevi
baac70c27e
Fix C# string.Hash() 2021-02-01 04:12:00 -05:00
bruvzg
c75923498e
Use integer coordinates for the font glyphs rendering. 2021-01-31 20:10:50 +02:00
Rémi Verschelde
5525cd85c6
Merge pull request #45315 from RandomShaper/modernize_thread
Modernize Thread
2021-01-31 15:24:56 +01:00
Hugo Locurcio
3434074933
Fix WebXRInterface code sample in the class reference
This also fixes the code sample's indentation to look correct in the
editor help.
2021-01-30 23:59:52 +01:00
Rémi Verschelde
46de553473
Merge pull request #45519 from aaronfranke/physics-real_t
Use real_t in physics code
2021-01-29 16:31:47 +01:00
George Marques
8a8dbd76b1
Add GDNative JSON generator for the builtin API
Which can be used by language bindings to generate code statically. This
is generated as a different file from the class API because it has
different requirements (the builtin types have constructors and don't
have signals), so bindings can better make use of each JSON file without
extra parsing.

This also cleans up a bit the old API generator, mainly initializing
structs and renaming "instanciable" to the more correct "instantiable".

The argument description in help text was updated to better reflect how
it should be used. The <path> argument is mandatory.
2021-01-29 11:40:37 -03:00
Pedro J. Estébanez
99fe462452 Modernize Thread
- Based on C++11's `thread` and `thread_local`
- No more need to allocate-deallocate or check for null
- No pointer anymore, just a member variable
- Platform-specific implementations no longer needed (except for the few cases of non-portable functions)
- Simpler for `NO_THREADS`
- Thread ids are now the same across platforms (main is 1; others follow)
2021-01-29 12:02:13 +01:00
David Snopek
f6e8da3661 Remove reference to CanvasLayer in WebXR example, because it can cause rendering issues in AR. 2021-01-28 19:24:27 -06:00
Aaron Franke
cb9fc117d1
Use real_t in physics code 2021-01-28 18:15:42 -05:00
Rémi Verschelde
329d4796ae
Merge pull request #45525 from van800/rider-line
Navigating to error line number in Rider from Godot editor debugger console is off-by-one.
2021-01-28 23:39:52 +01:00
Ivan Shakhov
deef9a73a5 Fix off by one error navigating to line number in Rider
Fixes https://github.com/JetBrains/godot-support/issues/61
2021-01-28 22:41:12 +01:00
Aaron Franke
e829b7aee4
Unify URI encoding/decoding and add to C#
http_escape and percent_encode have been unified into uri_encode, and http_unescape and percent_decode have been unified into uri_decode.
2021-01-28 07:45:01 -05:00
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
David Snopek
a23fc126eb Prevent fatal error in WebXR when 'immersize-ar' loses and regains tracking 2021-01-27 20:48:11 -06:00
Rémi Verschelde
9d3a9b3e7d
Merge pull request #45444 from dsnopek/webxr-master-mono
Support mono devices in WebXR
2021-01-27 21:11:31 +01:00
Gordon MacPherson
86c7faa169 Fix zero scaling and material mappings being mapped to wrong fields
- fixes scale values of 0.0013 (det == 0.00004) not rendering, they should render even at small values, but not at zero like the editor grid plugin supplies zero exactly.
- fixes node_3d_editor_plugin visibility bug when scale is zero
- fix culling with small scaling values - which are still valid to be rendered like 0.00004

note: grid is still not fixed, it has det == 0 issues but this fixes one of them.
2021-01-26 19:48:18 +00: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
Juan Linietsky
cc4388d0f3
Merge pull request #45466 from reduz/reorganize-rendering-device-layers
Reorganize RenderingDevice barriers
2021-01-26 12:34:46 -03:00
Rémi Verschelde
0991c63fba
Merge pull request #45479 from lucasvanmol/highlight-patch
Fix highlight color for class attributes that are also keywords
2021-01-26 15:56:13 +01:00
Rémi Verschelde
f7dd6975fb
Merge pull request #44617 from geekrelief/gdnative_unload
free library when no nativescripts reference it
2021-01-26 15:52:33 +01:00
Rémi Verschelde
9f6a2aa321
Merge pull request #45029 from neikeq/issue-40023
C#: Fix System.Collections.Generic.List marshalling
2021-01-26 15:30:44 +01:00
Lucas Van Mol
749d0c708c Fix highlight color for class attributes that are also keywords 2021-01-26 15:17:18 +01:00
Rémi Verschelde
de9c9007c2
Merge pull request #45252 from naithar/feature/plugins-migration
[4.0] [iOS] iOS Plugins Migration
2021-01-26 14:53:06 +01:00
reduz
280f334f81 Reorganize RenderingDevice barriers
-Removed sync to draw, now everything syncs to draw by default.
-Fixed many validation layer errors.
-Added support for VkImageViewUsageCreateInfo to fix validation layer warnings.
-Texture, buffer, raster and compute functions now all allow spcifying which barriers will be used.
2021-01-26 10:24:12 -03:00
Rémi Verschelde
7f863df67e
Merge pull request #45435 from fire/gltf-node-anim-export
Restore gltf node animation export.
2021-01-26 10:01:32 +01:00
Marcel Admiraal
8b983bddfb Remove Quat set methods in favour of constructors 2021-01-26 06:52:04 +00:00
Rémi Verschelde
78661d1a43
Merge pull request #45375 from aaronfranke/gltf-csg-gridmap
Make GLTF not depend on CSG or GridMap
2021-01-26 00:08:45 +01: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
7f0b5a373a
Merge pull request #44989 from vnen/gdnative-new-api
New API for GDNative
2021-01-25 21:26:07 +01:00
Rémi Verschelde
d7aea6ff6c
Merge pull request #45447 from pycbouh/graphedit-minimap-active-invisible
Fix minimap capturing events and improve its theme and editor settings
2021-01-25 20:32:46 +01:00
Yuri Sizov
9d9d0f0bc9 Fix minimap capturing events and improve its theme
Add an editor setting for minimap opacity in visual editors
2021-01-25 21:49:07 +03:00
David Snopek
39e022e01c Support mono devices in WebXR 2021-01-25 08:39:50 -06:00
George Marques
29e5dd06c7
GDNative: Remove print functions
Those are now utilities so the function pointer can be fetched when
needed.
2021-01-25 09:28:32 -03:00
George Marques
030d1d6a17
GDNative: New core API
This API now uses the discovery functions present in Variant instead of
wrapping every built-in function. Users now need to query for function
pointers and use those.
2021-01-25 09:28:02 -03:00
bruvzg
eeced6d6f2
[CTL] Do not break line on the span (e.g. RTL BBCode tag) edges. 2021-01-25 09:45:29 +02:00
K. S. Ernest (iFire) Lee
294c2996e3 Restore gltf node animation export.
Misc style changes.
2021-01-24 19:02:57 -08:00
Aaron Franke
abd06567a7
Make GLTF not depend on CSG or GridMap 2021-01-22 17:20:07 -05: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
Rémi Verschelde
76c6007aa6
Cleanup: Remove executable bit from files which don't need it
Drop unused xpmfix.sh script.
2021-01-19 23:36:42 +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
magian1127
da234cdbc6 C # mono supports Unicode code 2021-01-19 21:44:07 +08:00
Sergey Minakov
13a6a83b44 [iOS] Remove plugins from modules. 2021-01-17 14:33:39 +03:00
Fabio Alessandrelli
9a2f848855
Merge pull request #45171 from Calinou/doc-enet-udp-only
Mention that NetworkedMultiplayerENet uses UDP only
2021-01-15 15:52:29 +01:00
Rémi Verschelde
011d201046
Merge pull request #43923 from madmiraal/fix-43588
Fix cast_motion sometimes failing
2021-01-14 20:44:19 +01:00
Fabian Stiewitz
934277bad2 fix gltf not importing files w/o bufferViews or accessors 2021-01-14 19:13:47 +01:00
Hugo Locurcio
7b33498995
Mention that NetworkedMultiplayerENet uses UDP only
This is important to clarify for those doing port forwarding.
2021-01-14 17:15:20 +01:00
Rémi Verschelde
8d4698db36
Merge pull request #45159 from madmiraal/fix-45145
Only remove Bullet's body constraints when removing body from space
2021-01-13 17:15:45 +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
Marcel Admiraal
797a7fc6cc Only remove Bullet's body constraints when removing body from space 2021-01-13 13:32:46 +00:00
Marcel Admiraal
3ee860e3d1 Update Mono module to use new execute method. 2021-01-13 09:34:14 +00: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
K. S. Ernest (iFire) Lee
59b61a1f64 Scale error in mesh optimizer so it uses absolute scale.
Switch to simplify sloppy for another try.

Update to meshoptimizer e3f53f66e7a35b9b8764bee478589d79e34fa698.
2021-01-11 06:07:54 -08:00
Rémi Verschelde
51992250e6
Merge pull request #43176 from mateosss/crash-uninit-const
Fix crash by adding nullcheck for uninitialized constants
2021-01-11 14:00:54 +01:00
Rémi Verschelde
6d48943768
Merge pull request #43980 from gvekan/fix-missing-function-hints
Fix missing function hints
2021-01-11 13:54:22 +01:00
Rémi Verschelde
c17413f159
Merge pull request #44104 from nekomatata/coroutine-await-fix
Fix error when calling coroutine with await in _ready
2021-01-11 13:54:04 +01:00
Rémi Verschelde
813bdb4941
Merge pull request #44005 from RandomShaper/gds_needless_check
Remove useless check in GDScript
2021-01-11 13:53:52 +01:00
Rémi Verschelde
3e9a40cdc0
Merge pull request #44604 from lyuma/gdscript_dictionary_crash
GDScript: Fix crash when iterating through empty dictionary.
2021-01-11 13:53:12 +01:00
Rémi Verschelde
8363c44265
Merge pull request #44719 from ThakeeNathees/assert-argument-bug-fixed
GDScript assert message parsing bug fixed
2021-01-11 13:51:44 +01:00
Rémi Verschelde
a2021588ca
Merge pull request #44672 from ThakeeNathees/array-dict-const-fold-bug-fix
Array/Dictionary marked as not safe to const fold
2021-01-11 13:51:31 +01:00
Rémi Verschelde
bcfb698fb4
Merge pull request #44818 from ThakeeNathees/const-crash-fix
GDScript crash at incomplete const bug fix
2021-01-11 13:51:18 +01:00
Rémi Verschelde
aaf6725150
Merge pull request #44889 from ThakeeNathees/builtin-invalid-call-crash-fix
GDScript invalid method call on built-in crash fix
2021-01-11 13:51:07 +01:00
Rémi Verschelde
0dba21a4d1
Merge pull request #45076 from ThakeeNathees/gdscript-operator-precedence-bug-fix
GDScript operator `+` `-` precedence bug fix
2021-01-11 13:50:00 +01:00
Rémi Verschelde
29db5bd25e
Merge pull request #45075 from VedatGunel/reserved-keyword
Change reserved keyword in Regex documentation code
2021-01-11 12:01:54 +01:00
Rémi Verschelde
c3b23f0203
Merge pull request #45054 from dsnopek/webxr-yaxis-master
Invert the Y-axis on thumbsticks and trackpads in WebXR
2021-01-10 20:25:14 +01:00
Thakee Nathees
0889f14af9 GDScript operator + - precedence bug fix
Fix: #43265
2021-01-10 18:33:05 +05:30
Vedat Günel
446a3f8ff2 Change reserved keyword in Regex documentation code 2021-01-10 15:56:51 +03:00
Fabio Alessandrelli
eb5304842a Fix WebXR module.
Some functions and enums were renamed in 4.0 but not updated in the
WebXR code.
2021-01-10 12:04:09 +01:00
David Snopek
7a0d4275a2 Invert the Y-axis on thumbsticks and trackpads in WebXR 2021-01-09 15:02:22 -06:00
Aaron Franke
1d5042c9e2
Use Math_TAU and deg2rad/rad2deg in more places and optimize code 2021-01-09 03:47:14 -05:00
Ignacio Etcheverry
fafdc0b0c1 Add ClassDB tests to look for core API deps on editor API
The ClassDB tests will detect when the core API has dependencies on
the editor API, which is not allowed.

This should prevent or warn early about issues like #44856
2021-01-09 00:18:03 +01:00
Ignacio Etcheverry
da90364adf C#: Fix System.Collections.Generic.List marshalling 2021-01-08 21:51:25 +01:00