Commit Graph

36023 Commits

Author SHA1 Message Date
Fabio Alessandrelli
31142ac3ee [Net] Remove most multiplayer hooks from SceneTree.
Use `multiplayer` or `get_multiplayer()` instead of `get_tree()`.
2021-07-12 15:28:01 +02:00
K. S. Ernest (iFire) Lee
bea8d68a8d
Merge pull request #50393 from Calinou/preview-sun-sky-add-to-beginning
Add the preview sun and sky to the beginning of the scene tree
2021-07-12 09:25:04 -04:00
Rémi Verschelde
5226fa11b5
Merge pull request #50392 from TaskManagerCZ/master
Explicit error message when setting active a Viewport that is already active
2021-07-12 14:52:28 +02:00
Rémi Verschelde
8dccf0f9b5
Merge pull request #50394 from HaSa1002/make-rst-code-blocks-less-redundant
Makerst: Remove redundant GDScript from code blocks
2021-07-12 13:35:37 +02:00
TaskManagerCZ
e3be0913d7 Explicit error message when setting active a Viewport that is already active.
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2021-07-12 13:27:45 +02:00
Johannes Witt
fa573efa1c
Makerst: Remove redundant GDScript from code blocks 2021-07-12 12:57:31 +02:00
Hugo Locurcio
8844bb7855
Add the preview sun and sky to the beginning of the scene tree
This generally looks better when adding more nodes to the scene
in the future.
2021-07-12 12:08:58 +02:00
Hugo Locurcio
2708fcf13d
Automatically display the installer after downloading an asset
- To make things easier to follow, display the asset name in
  confirmation dialogs.
- Display the number of conflicting files in the asset extraction dialog.

This reduces the number of clicks required to install an asset.
2021-07-12 11:47:43 +02:00
Yuri Roubinsky
7d34701d63 Auto-set a first compatible uniform on dragging to create a UniformRef 2021-07-12 11:19:42 +03:00
Rémi Verschelde
b27683111b
Merge pull request #50385 from Geometror/vsyncmode-int-enum
Change VSync mode project setting enum type from string to integer
2021-07-12 08:50:19 +02:00
Rémi Verschelde
514c8d586a
Merge pull request #50356 from Calinou/ormmaterial3d-tweak-editor-icon
Tweak the ORMMaterial3D editor icon to follow the Godot design guidelines
2021-07-12 08:48:50 +02:00
K. S. Ernest (iFire) Lee
7594150f65
Merge pull request #50354 from Calinou/immediatemesh-add-editor-icon
Add an editor icon for the ImmediateMesh resource
2021-07-12 01:49:40 -04:00
Hendrik Brucker
74ab336fe3 Change VSync mode project setting enum type from string to integer 2021-07-12 03:35:51 +02:00
Lightning_A
ec67266af3 Add the ability to reorder arrays from the inspector 2021-07-11 16:09:39 -06:00
Rémi Verschelde
d1f25bb5fc
Merge pull request #50325 from reduz/implement-specialization-constants
Implement specialization constants
2021-07-11 23:57:08 +02:00
reduz
b2f6db7aa8
Implement Specialization Constants
* Added support to our local copy of SpirV Reflect (which does not support it).
* Pass them on render or compute pipeline creation.
* Not implemented in our shaders yet.
2021-07-11 23:16:09 +02:00
Hugo Locurcio
b1b1176b74
Add an editor icon for the ImmediateMesh resource 2021-07-11 20:40:11 +02:00
Hugo Locurcio
3a56d8d3ac
Tweak the ORMMaterial3D editor icon to follow the Godot design guidelines 2021-07-11 20:26:01 +02:00
QbieShay
9058367d14 This commits adds a new emitter type for particles material
and 3D CPU particles. The new emitter is called "ring"
and it can emit either in a ring or cylinder fashion.
This adds the following properties for the emitter:
1. emission_ring_axis: the axis along which the ring/cylinder
    will be constructed
2. emission_ring_radius: outer radius of the ring/cylinder
3. emission_ring_inner_radius: inner radius of the cylinder.
    when set to zero, particles will emit in the full volume.
4. emission_ring_height: height of the ring/cylinder emitter.
2021-07-11 17:30:47 +02:00
Eric M
f65dfd4895 Added validation to plugin creation.
Improved plugin creation dialog by adding form error reporting and restricting the user from overwriting an existing folder.
2021-07-12 00:18:52 +10:00
Rémi Verschelde
fb3961b2ef
Merge pull request #48764 from QbieShay/4-plane-offset
Added a center_offset property to both plane primitive and quad primitive
2021-07-11 15:33:13 +02:00
QbieShay
c4d8eecfe5 added offset for plane mesh and quad mesh 2021-07-11 14:33:08 +02:00
Yuri Roubinsky
9d4afa8b75
Merge pull request #50149 from Chaosus/vs_curve3d 2021-07-11 12:36:56 +03:00
Rémi Verschelde
9bd221d24c
Merge pull request #50364 from Faless/mp/fix_rpc_crash
[Net] Fix crash when receiving RPC on node without a script.
2021-07-11 10:53:10 +02:00
Fabio Alessandrelli
d3ba0aa3e0 [Net] Fix crash when receiving RPC on node without a script. 2021-07-11 10:18:32 +02:00
Rémi Verschelde
a0d800e967
Merge pull request #50362 from timothyqiu/http-eof
Fix unicode invalid skip error in AssetLib
2021-07-11 09:33:51 +02:00
Rémi Verschelde
88e35c88a1
Merge pull request #50361 from timothyqiu/inflate-buf-error
Handle Z_BUF_ERROR in decompress_dynamic
2021-07-11 09:33:06 +02:00
Haoyu Qiu
0caaaf4018 Fix unicode invalid skip error in AssetLib 2021-07-11 12:14:08 +08:00
Haoyu Qiu
293050a919 Handle Z_BUF_ERROR in decompress_dynamic 2021-07-11 11:05:12 +08:00
Rémi Verschelde
374ffbe2d2
Merge pull request #50347 from timothyqiu/httpclient-request-doc
Fix doc description of HTTPClient::request
2021-07-10 20:41:57 +02:00
Haoyu Qiu
422f821be9 Fix doc description of HTTPClient::request 2021-07-11 00:52:21 +08:00
Hugo Locurcio
43f9699a26
Improve 2D editor zoom logic
- Add 1-5 shortcuts to zoom between 100% and 1600% quickly
  (similar to GIMP).
- When holding down Alt, go through integer zoom values if above 100%
  or fractional zoom values with integer denominators if below 100%
  (50%, ~33.3%, 25%, …).
2021-07-10 17:32:40 +02:00
Hugo Locurcio
f0a145bbf5
Add a method to set the number of physics solver iterations in 3D
This is only for GodotPhysics, and adds a 3D counterpart to the 2D
method that was recently added.
2021-07-10 16:28:34 +02:00
Rémi Verschelde
7c432c923b
Merge pull request #50342 from Chaosus/vs_fix_function
Fix creating a new function in visual scripts
2021-07-10 15:13:33 +02:00
Yuri Roubinsky
f9ab70eb60 Fix creating a new function in visual scripts 2021-07-10 14:45:53 +03:00
Andrii Doroshenko (Xrayez)
0fce7aea88 Set minimum size for "Version Control" diff bottom panel
Allows to see version diffs without having to expand the bottom panel
manually when clicking on a changed file in the "Commit" dock.
2021-07-10 14:26:16 +03:00
Rémi Verschelde
6f4ffb3461
Merge pull request #33339 from Calinou/editor-improve-export-all-ux
Improve the Export All button display in the export dialog
2021-07-10 08:56:43 +02:00
Hugo Locurcio
0da942c6bf
Improve the Export All button display in the export dialog
- Update the disabled status when changing an export path.
- Display a tooltip that states why the button is disabled.
- Update the Export All dialog message to have a more friendly tone.
- Suffix button texts with "...", as they display another dialog
  when clicked.

This closes #33293.
2021-07-10 02:32:54 +02:00
Hugo Locurcio
a2d5f191d8
Merge pull request #48622 from Geometror/reimplement-disableable-vsync 2021-07-10 01:02:23 +02:00
Rémi Verschelde
0ee235822d
Merge pull request #50317 from bruvzg/mono_force_ent
[macOS, Mono] Automatically enable JIT entitlements for the Mono exports.
2021-07-09 23:37:11 +02:00
Rémi Verschelde
ca2fda629f
Merge pull request #50290 from reduz/redo-instance-bindings
Redo how instance bindings work
2021-07-09 23:25:33 +02:00
Rémi Verschelde
96e17e4ea1
Merge pull request #50284 from reduz/implement-range-iterators
Implement Range Iterators
2021-07-09 23:09:02 +02:00
bruvzg
f37981b83f [macOS, Mono] Automatically enable JIT entitlements for the Mono exports. 2021-07-09 22:47:43 +03:00
PouleyKetchoupp
ff40c3f3c8 Optimize NodePath update when renaming or deleting nodes in the editor
Now the process uses a Map to lookup node pointers instead of iterating
over all modified node paths in a list and comparing them for each
property to check.

The process also avoids checking properties with empty node paths and
does an early exit on deleted nodes to avoid checking the node and its
descendants.

Also made a minor change in NodePath::rel_path_to() to avoid resizing a
Vector many times for long paths (with copy-on-write each time). Now
it's down to 2 resize calls in any case.
2021-07-09 11:42:39 -07:00
Haoyu Qiu
542d7d6460 Fix memfree parameter name 2021-07-09 14:41:00 +08:00
Rémi Verschelde
a5b2988a01
Merge pull request #50291 from Calinou/improve-makerst-usability
Make makerst.py create folders automatically, print a message when done
2021-07-09 08:09:14 +02:00
Rémi Verschelde
fb4b73ff0a
Merge pull request #50301 from likeich/master
Fix use after free in Free desktop screensaver::inhibit()
2021-07-09 08:07:13 +02:00
likeich
0314e04939 Fix linux use after free
Fixes #50032
2021-07-08 22:34:07 -04:00
reduz
a9c943bef9 Implement Range Iterators
This PR implements range iterators in the base containers (Vector, Map, List, Pair Set).
Given several of these data structures will be replaced by more efficient versions, having a common iterator API will make this simpler.
Iterating can be done as follows (examples):

```C++
//Vector<String>
for(const String& I: vector) {

}
//List<String>
for(const String& I: list) {

}
//Map<String,int>
for(const KeyValue<String,int>&I : map) {
	print_line("key: "+I.key+" value: "+itos(I.value));

}

//if intending to write the elements, reference can be used

//Map<String,int>
for(KeyValue<String,int>& I: map) {
	I.value = 25;
	//this will fail because key is always const
	//I.key = "hello"
}

```

The containers are (for now) not STL compatible, since this would mean changing how they work internally (STL uses a special head/tail allocation for end(), while Godot Map/Set/List do not).
The idea is to change the Godot versions to be more compatible with STL, but this will happen after conversion to new iterators have taken place.
2021-07-08 23:27:27 -03:00
Michael Alexsander
fe5605334a Fix Window's wrap_controls not actually doing anything 2021-07-08 20:06:16 -03:00