Commit graph

36653 commits

Author SHA1 Message Date
Fabio Alessandrelli 9fcf3b5a9c [Net] Basic extensible MultiplayerAPI spawn/despawn.
`PackedScene`s can be configured to be spawnable via a new
`MultiplayerAPI.spawnable_config` method.
They can be configured either to be spawned automatically when coming
from the server or to always require verification.
Another method, `MultiplayerAPI.send_spawn` lets you request a spawn on
the remote peers.
When a peer receive a spawn request:
- If it comes from the server and the scene is configured as
  `SPAWN_MODE_SERVER`:
  - Spawn the scene (instantiate it, add it to tree).
  - Emit signal `network_spawn`.
- Else:
  - Emit signal `network_spawn_request`.

In a similar way, `despawn`s are handled automatically in
`SPAWN_MODE_SERVER`.

In `SPAWN_MODE_SERVER`, when a new client connects it will also receive,
from the server all the spawned (and not yet despawned) instances.
2021-08-09 16:34:40 +02:00
Fabio Alessandrelli 9798d08ac2 [Core] Expose ResourceLoader.get_resource_uid. 2021-08-09 16:26:56 +02:00
Rémi Verschelde 25fd4edd29
Merge pull request #51427 from omar-polo/platform-detect-openbsd
automatically detect openbsd as platform=linuxbsd
2021-08-09 15:35:36 +02:00
Omar Polo 78cd0ffdba automatically detect BSDs as platform=linuxbsd 2021-08-09 13:11:53 +00:00
Yuri Roubinsky 90870fd48f
Merge pull request #51431 from Chaosus/vs_cosmetic
Added small offset to the content of nodes in VisualShader
2021-08-09 16:03:24 +03:00
Max Hilbrunner a5c179e4f8 FileAccessWindows: Cosmetic improvements 2021-08-09 14:43:09 +02:00
Max Hilbrunner b48cbb5da9 Fix Windows platform file access
This restores Windows platform file handling back to open files non-exlusively by default, as was the case before October 2018. (See b902a2f2a7)
Back then, while fixing warnings for MSVC, the function used for opening files was changed from _wfopen() to _wfopen_s() as suggsted by the warning C4996. ("This function may be unsafe, consider using _wfopen_s instead.")

This new function
1. did parameter validation and thus avoided some possible security issues due to nil pointers or wrongly terminated strings
2. it also changed the default file sharing for opened files from _SH_DENYNO (which was the implicit default for the previous _wfopen()) to _SH_SECURE.

_SH_DENYNO means every opened file could be opened by other calls (like is the default on other operating systems).
_SH_SECURE means if the file is opened with READ access, others can still read the same file, but if it is opened with WRITE access, others can't open it at all, not even to read.

This led to rarely occuring bugs on Windows, i.e. due to random access by Antivirus processes, or Godot/Windows not closing a file handle fast enough while trying to open it again elsewhere (i.e. project.godot, instead showing the Project manager, or saving shaders/debugging the game).

What this PR does it change the file access to a third method, _wfsopen(). This is still secure, doing parameter validation and thus avoids the warning, but it allows us to actually SET the file sharing parameter. And we set it to _SH_DENYNO, as it was implicitely before the change. (And as it currently is on all non-Windows platforms, where file sharing restrictions don't exist by default.)

Warning C4996 should really have been pointing this out. It should've been _wfsopen() all along. Let's hope this banishes those annoying, rare errors for all eternity.

Fixes #28036.
2021-08-09 14:41:38 +02:00
Yuri Roubinsky 72a9ca1505 Added small offset to the content of nodes in VisualShader 2021-08-09 15:19:27 +03:00
Bhuvan Vemula a0a019a998 Added EditorCommandPalette 2021-08-09 17:41:50 +05:30
Yuri Roubinsky 504eb48214
Merge pull request #51422 from Chaosus/shader_dialog_fixes
Fix some bugs in shader creation dialog (continue)
2021-08-09 13:21:38 +03:00
Yuri Roubinsky a1dd51f5e6 Fix some bugs in shader creation dialog (continue) 2021-08-09 11:49:57 +03:00
Rémi Verschelde 6e11017401
Merge pull request #51338 from V-Sekai/gltf-lights
Continue when glTF2 lights fail to parse.
2021-08-09 09:31:31 +02:00
Rémi Verschelde 27d6bce33e
Merge pull request #51420 from Chaosus/shader_dialog_fixed_typo
[WIP] Fix some bugs in shader creation dialog
2021-08-09 09:24:50 +02:00
Rémi Verschelde fa1a66dd68
Merge pull request #51180 from RandomShaper/native_script_inherits
Implement inherits_script() for NativeScript and PluginScript
2021-08-09 09:18:57 +02:00
K. S. Ernest (iFire) Lee 0c79a8fa22 Continue when glTF2 lights fail to parse. 2021-08-09 00:09:19 -07:00
Yuri Roubinsky 617a9429de Fix some bugs in shader creation dialog 2021-08-09 10:03:54 +03:00
Rémi Verschelde 85399a9170
Merge pull request #51155 from Chaosus/shader_fix_specular_mode
Fix a default shader specular render mode to `SCHLICK_GGX`
2021-08-09 08:13:47 +02:00
Rémi Verschelde 57d4d0ac88
Merge pull request #51412 from YeldhamDev/property_track_desc
Make property description in the animation editor actually show it
2021-08-09 08:02:57 +02:00
clayjohn 7bdea93497 Add horizon specular occlusion 2021-08-08 19:43:48 -07:00
Michael Alexsander bea868f750 Make property description in the animation editor actually show it 2021-08-08 22:56:34 -03:00
Rémi Verschelde 2df1765fc2
Merge pull request #49587 from bruvzg/text_server_inline_align
[Text Server] Improve object (image/table) inline alignment.
2021-08-09 00:59:35 +02:00
Rémi Verschelde 7fc570b5ac
Merge pull request #51405 from bruvzg/macos_recenter_mouse
[macOS] Move captured mouse cursor to the center when window gain focus.
2021-08-09 00:18:09 +02:00
bruvzg 7c3c5603d0 [Text Server] Improve object (image/table) inline alignment. 2021-08-08 22:35:47 +03:00
bruvzg ae7dbb678c [macOS] Move captured mouse cursor to the center when window gain focus. 2021-08-08 22:27:57 +03:00
Rémi Verschelde e010e05b3d
Merge pull request #51217 from timothyqiu/more-i18n
Fix various i18n failures
2021-08-08 19:25:00 +02:00
Rémi Verschelde 73cd3f0b38
Merge pull request #51395 from angad-k/pseudolocalization-squashed
Add pseudolocalization to Godot. (GSoC'21)
2021-08-08 17:55:30 +02:00
Angad Kambli e79dde1cbb add pseudolocalization to Godot 2021-08-08 20:37:57 +05:30
Rémi Verschelde bd94aa3c9e
Merge pull request #51385 from RandomShaper/fix_thread_default_null
Fix logic to allow default null thread argument
2021-08-08 13:58:13 +02:00
Pedro J. Estébanez a6303b70a5 Fix logic to allow default null thread argument 2021-08-08 12:53:30 +02:00
Rémi Verschelde ff52996e58
Merge pull request #51379 from follower/patch-15
Fix Unicode URL link tags to render correctly.
2021-08-08 09:39:46 +02:00
follower b85688ac7d
Fix Unicode URL link tags to render correctly.
Change incorrect `[/code]` closing tags to `[/url]` tags.

The `url` tags for the links to the Unicode code points information use `[/code]` rather than `[/url]` to close them.

This results in the links being rendered incorrectly in the IDE--the entire rest of the documentation for each method gets turned into a giant underlined link.

This issue was introduced in a2271ba3bd.
2021-08-08 15:10:17 +12:00
Nathan Franke 051234e84e
Fix Gradient, Color Picker BG, Fix CanvasItem::draw_texture_rect p_tile 2021-08-07 16:40:50 -05:00
Rémi Verschelde 49309ac5fb
Merge pull request #51375 from Blackiris/fix-action-get-events
Fix action_get_events returning booleans instead of InputKey entries
2021-08-07 23:27:09 +02:00
Julien Nguyen daee3c316f Fix action_get_events returning booleans instead of InputKey entries 2021-08-07 21:17:55 +02:00
Yuri Roubinsky f860ee3091
Merge pull request #51356 from Chaosus/shader_dialog 2021-08-07 21:49:23 +03:00
Yuri Roubinsky 5e5cd2495d Added editor dialog for easily creating shaders. 2021-08-07 21:02:13 +03:00
Rémi Verschelde 4c2559df1d
Merge pull request #38547 from YeldhamDev/global_rate_scale_invert
Invert how `global_rate_scale` value works, and rename it to `playback_speed_scale`
2021-08-07 18:39:27 +02:00
Michael Alexsander 4bef900399 Invert how global_rate_scale value works, and rename it to playback_speed_scale 2021-08-07 12:32:42 -03:00
Rémi Verschelde 3177da1d05
Merge pull request #51360 from Paulb23/item-list-bg-colour-update 2021-08-07 14:14:08 +02:00
Rémi Verschelde a888f1492b
Merge pull request #51355 from lawnjelly/fix_plane_xform_4_new 2021-08-07 14:13:56 +02:00
Rémi Verschelde d6329c5f08
Merge pull request #51357 from raulsntos/fix-51342
Fix Path3D initial forward calculation
2021-08-07 13:30:19 +02:00
Paulb23 738b0fdae5 Redraw on item list custom bg/fg colour change 2021-08-07 12:08:46 +01:00
Rémi Verschelde a7f96e07d0
Merge pull request #51326 from LightningAA/minor_view_rotation_gizmo_improvements-4.0
Minor visual improvements to the viewport rotation gizmo (again)
2021-08-07 12:41:25 +02:00
Raul Santos 18f7acf611 Fix Path3D initial forward calculation 2021-08-07 12:39:34 +02:00
Rémi Verschelde cd68ef9ed0
Merge pull request #51328 from pycbouh/docs-inspector-plugins-classref
Improve the inspector plugin documentation and remove a confusing statement
2021-08-07 12:36:51 +02:00
Rémi Verschelde 35b08b7cbc
Merge pull request #51322 from raulsntos/fix-msbuild-exception
Ensure MSBuildPanel buttons are instantiated
2021-08-07 12:19:26 +02:00
lawnjelly dd0f54a368 Fix Transform::xform(Plane) functions
The Transform::xform and xform_inv are made safe for Planes when using non-uniform scaling.
Optimization of calling sites to prevent loss of performance from the changes to xform(Plane).
2021-08-07 11:10:50 +01:00
Rémi Verschelde 3c85ef14c3
Merge pull request #51353 from AndreaCatania/const_fix
Removes const from set functions on the Gizmos
2021-08-07 10:31:08 +02:00
AndreaCatania e4e4a02d3d Removes const from set functions on the Gizmos 2021-08-07 09:15:57 +02:00
Rémi Verschelde 9cb4fbe9d5
Merge pull request #47700 from Calinou/editor-mouse-wheel-change-scene-tabs
Allow using the mouse wheel to navigate scene tabs
2021-08-07 08:21:43 +02:00