Commit Graph

25901 Commits

Author SHA1 Message Date
Hugo Locurcio 9e3393a624
Optimize the editor icon generation
Icons are no longer upsampled when using an integer editor scale.
This makes some icons slightly less crisp, but the icons themselves
can be adjusted to mitigate this. When using a non-integer editor
scale setting, upsampling is kept as it improves crispness in a
far more visible manner.

When upsampling is disabled, this speeds up the theme generation
by about 100 ms on average, making the project manager and editor
start slightly faster. This also speeds up switching between themes.
2020-01-20 00:31:04 +01:00
Rémi Verschelde 62d656ea06
Merge pull request #35327 from KoBeWi/globalization
Mention that KinematicCollisions use global coords
2020-01-19 22:25:10 +01:00
Rémi Verschelde 8cc9bb2539
Merge pull request #35326 from neikeq/issue-30496
Fix ClassDB API portability with some android and editor classes
2020-01-19 22:24:23 +01:00
Rémi Verschelde 5358254b6c
Merge pull request #35325 from Calinou/optimize-editor-theme-creation
Only create the editor theme once
2020-01-19 22:20:16 +01:00
Rémi Verschelde cb088e391e
Merge pull request #35300 from Feniks-Gaming/GraphNodeDesc
Improve Description of GraphNode
2020-01-19 22:19:41 +01:00
Hugo Locurcio d72f5e0938
Only create the editor theme once
This prevents the editor theme from being created twice.
This speeds up the project editor and editor startup
significantly; startup is now 1.3 times faster on average
(tested on a debug build). RAM usage was also lowered by 7.5 MB
on average.

This partially addresses #35321.
2020-01-19 21:51:21 +01:00
Tomasz Chabora 5a75c4a840 Mention that KinematicCollisions use global coords 2020-01-19 20:22:31 +01:00
Feniks 1ebf4c7fdc Improve Description of GraphNode
It mostly fixes issues I have listed in https://github.com/godotengine/godot-docs/issues/3065 where GraphNode description was rather lacking clarity. It was near impossible how to use the them or how to create new slots etc. 

I improved it quite a bit if anyone has idea how to reword original "A tuple of input and output slots is defined for each GUI element included in the GraphNode." I would love to hear it. I am unsure how to word it in more understandable way.
2020-01-19 19:21:30 +00:00
Ignacio Etcheverry a6105c8ea0 Fix ClassDB API portability with some android and editor classes
- `EditorNavigationMeshGenerator` was being registered as part of the Core API,
even after d3f48f88bb. We must make sure to
set Editor as the current ClassDB API type before creating an instance.

- The `VisualScriptEngineSingleton.constant` property has a property hint string
that's different between tools and non-tools builds. This commit makes the
hint string to no longer be set in `_bind_methods`, and to instead set it in
`_validate_property`. This way it's ignored when calculating the API hash.

- `JavaClassWrapper` is now registered in ClassDB on all platforms,
using a dummy implementation on platforms other than Android.
This fixes API portability between Android and other platforms.

- Updated `--class-db-json` command to ignore non-virtual methods that start
with an underscore (see: 4be87c6016).
2020-01-19 20:15:13 +01:00
Rémi Verschelde 90a224c6eb
Merge pull request #35310 from akien-mga/gles3-irradiance-small-optimization
GLES3: Slight optimization to irradiance compute
2020-01-19 18:55:51 +01:00
Yuri Roubinsky baa7d49c3a
Merge pull request #35317 from Chaosus/fix_shader
Clears completion_class in shaders (may cause troubles if not).
2020-01-19 19:00:39 +03:00
Rémi Verschelde d11d7dfe3e
Merge pull request #35312 from Faless/net/packet_peer_encode_buffer
PacketPeer use heap buffer for var encoding.
2020-01-19 14:45:03 +01:00
Yuri Roubinsky 3dea1c725e Clears completion_class in shaders (may cause troubles if not). 2020-01-19 16:35:54 +03:00
Rémi Verschelde 4d052e51a2
Merge pull request #35302 from clayjohn/GLES3-env-map
Reduce complexity of irradiance map generation
2020-01-19 12:39:36 +01:00
Fabio Alessandrelli 534bf89976 PacketPeer use heap buffer for var encoding.
Used to allocate in stack (via alloca) which causes crashes when trying
to encode big variables.
The buffer grows as needed up to `encode_buffer_max_size` (which is
8MiB by default) and always in power of 2.
2020-01-19 11:49:10 +01:00
Rémi Verschelde dc4db4ab45 GLES3: Slight optimization to irradiance compute
All the calculations leading up to `mipLevel` are only relevant for
Panorama mode. Similarly, the `source_resolution` uniform is only
needed for that mode.
2020-01-19 11:03:11 +01:00
Rémi Verschelde e8dc581bfc
Merge pull request #35303 from timothyqiu/hidpi-anitreeplayer
Fixes AnimationTreePlayer editor UI on HiDPI
2020-01-19 10:21:20 +01:00
Rémi Verschelde 05c8654390 doc: Timer.autostart resets to false on start
Fixes #35289.
2020-01-19 10:18:11 +01:00
Rémi Verschelde d7072e9cd4
Merge pull request #35273 from dankan1890/quick_fix
AssetLibrary layout fix
2020-01-19 10:13:31 +01:00
Rémi Verschelde 43caf83c09
Merge pull request #35284 from Ovnuniarchos/MidiNoReopen
Alsa MIDI input thread gets properly reinitialized on open_midi_input.
2020-01-19 09:34:38 +01:00
Rémi Verschelde 7522aa80c2
Merge pull request #35295 from N0hbdy/animation-editor-line-edit-fix
Fix AnimationTree Editor by using CONNECT_DEFERRED on LineEdit
2020-01-19 09:32:00 +01:00
Rémi Verschelde b2e2ce1643
Merge pull request #35297 from Calinou/2d-zoom-reset-clamp-editor-scale
Clamp the editor scale to 1 when resetting zoom in the 2D editor
2020-01-19 09:30:12 +01:00
Rémi Verschelde 78c2d41ffc
Merge pull request #35304 from raphael10241024/fix_audiobus_editor
fix audio buses layout editor save
2020-01-19 09:13:05 +01:00
RaphaelHunter 4b70985a1a fix audio buses editor not save, close #26683 2020-01-19 10:56:00 +08:00
Haoyu Qiu 2db685da09 Fixes AnimationTreePlayer editor on HiDPI
* The minimum editor size
* The position of buttons and status text
2020-01-19 10:20:53 +08:00
clayjohn 0979411cad reduce complexity of irradiance map generation 2020-01-18 16:51:52 -08:00
Hugo Locurcio c9aca9ef81
Clamp the editor scale to 1 when resetting zoom in the 2D editor
This closes #35294.
2020-01-18 22:26:21 +01:00
N0hbdy 3fffb1c031 Fix AnimationTree Editor by using CONNECT_DEFERRED on LineEdit
Not having this causes the LineEdit to be deleted while still processing
signals, which can cause a crash during focus changes.

Fixes 35293
2020-01-18 12:12:13 -08:00
dankan1890 29daba5b0c AssetLibrary when the download size is unknown:
hidden progress bar
added in the description the downloaded bytes
Fixes #35267
2020-01-18 21:07:51 +01:00
Ovnuniarchos af95554aff Alsa MIDI input thread gets properly reinitialized on open. 2020-01-18 15:59:59 +01:00
Rémi Verschelde d4a222cd9d
Merge pull request #35281 from timothyqiu/video-player-doc
Improves VideoPlayer's documentation
2020-01-18 15:27:28 +01:00
Rémi Verschelde b154bc8333
Merge pull request #35265 from zxcvdev/fix_crash_iphone_ios13
Fix iOS Crash on Application Exit
2020-01-18 15:23:38 +01:00
Rémi Verschelde e65736c25c
Merge pull request #35276 from Calinou/doc-configfile-comments
doc: Mention the limited comment support in ConfigFile
2020-01-18 15:22:58 +01:00
Haoyu Qiu ecf3d3fd84 Improves VideoPlayer's documentation 2020-01-18 21:51:17 +08:00
Hugo Locurcio 9914b6fc62
doc: Mention the limited comment support in ConfigFile 2020-01-18 13:58:36 +01:00
Rémi Verschelde bc4ce44d77
Merge pull request #35256 from Faless/js/callback_target_fix
HTML5 callbacks rework.
2020-01-18 11:38:26 +01:00
Rémi Verschelde f6a02b881a
Merge pull request #35268 from Chaosus/fix_shader_minimap
Fix minimap updating in shader tab
2020-01-18 10:47:50 +01:00
Yuri Roubinsky 41acb1f6ba Fix minimap updating in shader tab 2020-01-18 12:31:33 +03:00
Yuri Roubinsky 82482a7db8
Merge pull request #35266 from Chaosus/shader_fix_arrays
Added missing form of array constructor in shaders
2020-01-18 11:54:23 +03:00
zxcvdev 9a90ea1425 Fix crash when closing app on iphone 2020-01-18 09:54:07 +01:00
Yuri Roubinsky 1eb8d5e142 Added missing form of array constructor in shaders 2020-01-18 11:41:55 +03:00
Rémi Verschelde ea1da40d79
Merge pull request #35223 from Feniks-Gaming/MenueButtonDescription
Improved MenuButton Description
2020-01-18 09:25:49 +01:00
Feniks 156f5b7ce2 Improved MenuButton Description
I expanded description of MenueButton to explain how to create the items inside of the pop up as this is initially a mystery to many new people.
2020-01-18 07:22:19 +00:00
Fabio Alessandrelli 4a50f5ff65 HTML5 callbacks rework.
Fixes compatibility with emscripten 1.39.5+ .
Most input callbacks now require a target and no longer support NULL
defaults.

This commit changes all required null targets to the expected default in
the binding phase.
Since for canvas-related callbacks there is no default, the "#canvas"
selector is used instead.
Additionally, since canvasX and canvasY event properties are no longer
supported, event positions are computed from "clientX" and "clientY" and
the "#canvas" bounding client rect.
2020-01-17 21:42:36 +01:00
Rémi Verschelde 94a9cdb3b0
Merge pull request #35235 from akien-mga/android-launcher-icons-properties
Android: Improve name of icon export properties
2020-01-17 19:57:24 +01:00
Rémi Verschelde c6f0c0d12e
Merge pull request #35241 from Calinou/gles2-disable-alternate-viewport-modes
Mark alternate editor display modes as disabled in the GLES2 renderer
2020-01-17 16:33:19 +01:00
Hugo Locurcio 8bce0b6176
Mark alternate editor display modes as disabled in the GLES2 renderer
This partially addresses #27018.
2020-01-17 16:06:47 +01:00
Rémi Verschelde e7ee9e01a6
Merge pull request #35233 from akien-mga/scenetree-input_event-crash
Fix crash when confirming dialogs with Return key
2020-01-17 14:53:38 +01:00
Rémi Verschelde a6f3e1345c
Merge pull request #35237 from akien-mga/emscripten-1.39.5-timestamp-removal
HTML5: Address removal of 'timestamp' in Emscripten 1.39.5
2020-01-17 14:36:00 +01:00
Rémi Verschelde 435f86cf87 HTML5: Address removal of 'timestamp' in Emscripten 1.39.5
It was removed as noted in the changelog:
https://github.com/emscripten-core/emscripten/blob/1.39.5/ChangeLog.md#v1395-12202019

> Removed `timestamp` field from mouse, wheel, devicemotion and
> deviceorientation events. The presence of a `timestamp` on these
> events was slightly arbitrary, and populating this field caused
> a small profileable overhead that all users might not care about.
> It is easy to get a timestamp of an event by calling
> `emscripten_get_now()` or `emscripten_performance_now()` inside
> the event handler function of any event.

Fixes #34648.
2020-01-17 14:10:52 +01:00