Commit Graph

33006 Commits

Author SHA1 Message Date
bruvzg 6c9e608a34
Use get_char_size(' ') to calculate space width. 2021-02-12 15:06:50 +02:00
Rémi Verschelde bc55238408
Merge pull request #45907 from reduz/improved-inspector-subresources
Improved Inspector Sub-Resource Editing
2021-02-12 13:47:54 +01:00
reduz b9b68b755c Improved Inspector Sub-Resource Editing
-Better margins
-Colors to delimit subresources better.
2021-02-12 09:31:47 -03:00
Rémi Verschelde d3867b2dab
Merge pull request #45785 from Calinou/project-manager-add-loading-text
Display loading text while the project manager is loading
2021-02-12 13:01:17 +01:00
Rémi Verschelde dbddf52c12
Merge pull request #45920 from Faless/js/4.x_dpi
[HTML5] Detect screen scale and DPI.
2021-02-12 12:53:14 +01:00
Fabio Alessandrelli 6cff589b5b [HTML5] Detect screen scale and DPI.
`OS.get_screen_scale` will now return the `window.devicePixelRatio`
value, `OS.get_screen_dpi` uses CSS media queries to find approximate
DPI value for the current display.
`OS.get_screen_size` also return the actual screen size (not the CSS
pixel size).
2021-02-12 12:01:44 +01:00
Rémi Verschelde 4912258839
Merge pull request #45903 from reduz/improve-resoucre-load-cache
Improve resource load cache
2021-02-12 11:58:19 +01:00
Rémi Verschelde 44e291a250
Merge pull request #45909 from ShatReal/master
Fixed typo in PackedScene documentation
2021-02-12 11:11:23 +01:00
Rémi Verschelde e9a25b8552
Merge pull request #45859 from Kayomn/master
Accomodate blend shape ranges of -1 to +1 for Vulkan
2021-02-12 09:26:14 +01:00
Ansraer 466cf0b466 Adjust auto scale on high res displays 2021-02-12 01:12:25 +01:00
Emily 7368bc534a fixed typo in packedscene 2021-02-11 13:22:44 -08: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
hoontee fbb1ef759c Implement CollisionPolygon3D margin 2021-02-11 11:58:37 -06:00
Rémi Verschelde e5bb89cdd5
Merge pull request #45901 from akien-mga/scons-fix-custom_modules-is_engine
SCons: Fix Godot detection in custom modules logic
2021-02-11 18:13:23 +01:00
Rémi Verschelde 75910d1e9b
SCons: Fix Godot detection in custom modules logic
`exec()` was not a good idea as it assumes a certain type of `version.py` file
similar to Godot's own file, which is not always a reliable assumption (see
https://github.com/godotengine/godot/pull/43057#issuecomment-777632900).

Also restores Python 2 support for the 3.2 branch.
2021-02-11 17:54:41 +01:00
Rémi Verschelde 68624f32b0
Merge pull request #44698 from Chaosus/shader_varying_fragment_to_light
Allow to pass varying from fragment to light shader function
2021-02-11 15:28:14 +01:00
Rémi Verschelde 5f05e5d904
Merge pull request #45882 from HenryWConklin/broken-gdnative-test
Fix broken gdnative variant test
2021-02-11 15:27:36 +01:00
Henry Conklin 6575e4c1ba Fix broken gdnative variant test 2021-02-11 07:14:28 -06:00
Yuri Roubinsky dd0874e717 Allow passing varying from fragment to light shader function 2021-02-11 15:59:21 +03:00
Rémi Verschelde b9863e157e
Merge pull request #45891 from Faless/js/4.x_editor_focus
[HTML5] Editor: ensure canvas focus when switching tabs.
2021-02-11 13:16:40 +01:00
Rémi Verschelde b8fab45ddb
Merge pull request #45835 from sps1112/add-test-variant
Add Unit Tests for Variant Class
2021-02-11 13:15:49 +01:00
Rémi Verschelde 604188c411
Merge pull request #45870 from gongpha/graphedit-connection-update
Update GraphEdit when GraphNode's slot is updated
2021-02-11 13:11:50 +01:00
Fabio Alessandrelli b148ea2a64 [HTML5] Editor: ensure canvas focus when switching tabs. 2021-02-11 13:10:18 +01:00
sps1112 f71f8c8c0b Add Unit Tests for Variant Assignment 2021-02-11 17:27:24 +05:30
Rémi Verschelde dca3ce441a
Merge pull request #45846 from rcorre/importplugin_doc
Improve EditorImportPlugin docs.
2021-02-11 12:24:48 +01:00
MarvinFF 4c528e76e7 Fix `Node::rpc_config` return error
Fix StringName type checks in other `_rpc*_bind` methods.
2021-02-11 11:52:52 +01:00
Ryan Roden-Corrent 9676650f2f Clarify EditorImportPlugin.get_visible_name.
According to the docs at
https://docs.godotengine.org/en/stable/tutorials/plugins/editor/import_plugins.html#the-editorimportplugin-class

> The get_visible_name() method is responsible for returning the name of
> the type it imports and it will be shown to the user in the Import dock.
> You should choose this name as a continuation to "Import as", e.g.
> "Import as Silly Material"

I've verified Godot's behavior reflects this, so the code examples
should reflect this.

Also document propagating save error in EditorImportPlugin.

It seems that the suggested code ignores any error from
`ResourceSaver.save`, but I think we should return it.
2021-02-11 11:13:17 +01: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
Rémi Verschelde ab4c3ddf32
Merge pull request #45888 from Faless/js/4.x_xhr_fix
[HTML5] Fix HTTPClient request_raw.
2021-02-11 11:08:08 +01:00
Rémi Verschelde b3c7e38f4d
Merge pull request #45885 from Faless/js/4.x_editor_clean_fix
[HTML5] Fix web editor "clear persistent data".
2021-02-11 10:54:03 +01:00
Rémi Verschelde 5d5ed27173
Merge pull request #45883 from Faless/js/4.x_more_handlers
[HTML5] Handle contextmenu, webglcontextlost internally.
2021-02-11 10:53:22 +01:00
Fabio Alessandrelli 75c4e2c5fa [HTML5] Fix HTTPClient request_raw.
Now send data according to the spec, properly handle null data.
Simplify JS code since we are at it.
2021-02-11 10:03:36 +01:00
Fabio Alessandrelli 7866cd5881 [HTML5] Fix web editor "clear persistent data".
Was broken after update to new persistent path "/home/web_user".
2021-02-11 08:25:19 +01:00
Fabio Alessandrelli 3366122e1a [HTML5] Handle contextmenu, webglcontextlost internally.
This way they are automatically cleaned up when the engine exits,
landing a hand to browsers garbage collectors.
2021-02-11 07:56:10 +01:00
Fabio Alessandrelli e9e2dedb76 Sync and cleanup Rasterizer Dummy.
Code diverged too much, removing disabled code too as it's unlikely it
can be reused now.
2021-02-11 07:55:57 +01:00
Juan Linietsky ad293a82f1
Merge pull request #45879 from reduz/remove-change-notify
Removed _change_notify(property)
2021-02-10 20:06:14 -03: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
Rémi Verschelde e8f73124a7
Merge pull request #45845 from qarmin/cppcheck_scene_2
Initialize class variables with default values in scene/ [2/2]
2021-02-10 20:06:12 +01:00
Rémi Verschelde 3c39aa8302
Merge pull request #45854 from nekomatata/cylinder-support
Cylinder support in Godot Physics 3D
2021-02-10 19:09:19 +01:00
Kongfa Waroros fe6c8d48e6 Update GraphEdit when GraphNode's slot is updated 2021-02-11 01:07:54 +07:00
PouleyKetchoupp 333f184734 Cylinder support in Godot Physics 3D
Cylinder collision detection uses a mix of SAT and GJKEPA.
GJKEPA is used to find the best separation axis in cases where finding
it analytically is too complex.

Changes in SAT solver:
Added support for generating separation axes for cylinder shape.
Added support for generating contact points with circle feature.

Changes in GJKEPA solver:
Updated from latest Bullet version which includes EPA fixes in some
scenarios.
Setting a lower EPA_ACCURACY to fix accuracy problems with cylinder vs.
cylinder in some cases.
2021-02-10 10:00:53 -07:00
Rémi Verschelde 1808f1d76d
Merge pull request #45852 from reduz/make-servers-truly-thread-safe
Make Servers truly Thread Safe
2021-02-10 17:39:53 +01: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
Rémi Verschelde f3d15771bf
Merge pull request #45771 from CherokeeLanguage/master
Fix joystick axis mapping issues with NVIDIA shield. Probably others.
2021-02-10 17:03:42 +01:00
Rémi Verschelde 1c58514c18
Update AUTHORS and DONORS list
New contributors added to AUTHORS:
@lyuma, @nathanfranke, @pycbouh
2021-02-10 16:11:18 +01:00
Rémi Verschelde b1c60c757f
Merge pull request #31747 from KoBeWi/scene_stalking
Detect external modification of scenes
2021-02-10 14:31:29 +01:00
Juan Linietsky bad2998fea
Merge pull request #45811 from reduz/sdfgi-improve-feedback
Improve SDFGI indirect light feedback loop
2021-02-10 07:32:32 -03:00
Rémi Verschelde 844caafa4b
Merge pull request #45861 from nekomatata/physics-3d-contact-points-debug
Fix contact points debug for 3D Physics
2021-02-10 10:32:04 +01:00
PouleyKetchoupp e5e9be8355 Fix contact points debug for 3D Physics
Setting each point's position was missing for 3D. Now enabling collision
render debug will display contact points for 3D physics, the same way it
does for 2D physics.

Note: Multimesh rendering seems not to work in this scenario on master,
but it's working fine on 3.2.
2021-02-09 18:36:38 -07:00
Kayomn ca945421a0 Accomodate blend shape ranges of -1 to +1 2021-02-09 23:09:54 +00:00