Commit Graph

3988 Commits

Author SHA1 Message Date
Rindbee bd42d337df Fix the behavior of the resource property of the sub-scene root node on instantiation
The sub-scene root node will be set successively in the sub-scene and the main scene.

The PR is simply to determine intent from the record. Mainly the cases when
`resource_local_to_scene` is enabled in main scene.

When updating resources according to the records of the main scene, use the
`scene_unique_id` in the main scene to prevent the ID of the resource from
changing continuously when saving the scene.
2023-08-18 19:08:34 +08:00
Rémi Verschelde 446dfdbd87
Merge pull request #80329 from xiongyaohua/path3d_tilt_gizmo
Add handles to control Curve3D tilt
2023-08-17 12:29:55 +02:00
bitsawer 26e3443eef Fix Shader and ShaderInclude resource loading 2023-08-17 11:17:54 +03:00
Koyper e84588987a Enabled missing Tree title button font and font size theme settings. 2023-08-16 08:10:31 -05:00
Rémi Verschelde ed1180a97e
Merge pull request #80638 from sepTN/fix-particle-shader-rand
Fix particle shader deterministic random values
2023-08-16 09:16:14 +02:00
Septian cb7400d67a Fix particle shader deterministic random values 2023-08-15 15:06:37 +07:00
Daniel Roberts 46e395abb1 Add handles to control Curve3D tilt 2023-08-12 14:55:38 +08:00
Hugo Locurcio 8041cff865
Clamp Volumetric Fog Length property to prevent rendering issues
A length of 0 units doesn't make sense anyway.
2023-08-10 15:55:36 +02:00
Rémi Verschelde 7257d1667e
Merge pull request #80441 from Calinou/editor-torusmesh-inspector-hint-or-greater
Allow setting values greater than the maximum in TorusMesh inspector
2023-08-10 00:43:27 +02:00
Hugo Locurcio acd5dee478
Allow setting values greater than the maximum in TorusMesh inspector
This is consistent with other PrimitiveMeshes' behavior.
2023-08-09 10:14:00 +02:00
Michael Alexsander 98bdb56815
Further separate icon from text of buttons in both editor and default themes 2023-08-07 13:22:39 -03:00
Faolan b3b791350b
Move registration of `fallbacks` property in the base Font class 2023-08-07 13:46:44 +02:00
MewPurPur 09270f9624 Remove exp hint of a few properties 2023-08-06 12:18:27 +03:00
Yuri Sizov 8965e24dde Merge pull request #79874 from clayjohn/PlaceholderTexture-rid
Lazily allocate RIDs for PlaceholderTextures to avoid allocating GPU resources unless used
2023-08-01 17:25:37 +02:00
Yuri Sizov c9aa2131dc Merge pull request #79710 from AThousandShips/video_play
Fix incorrect virtual function in `VideoStream.set_paused`
2023-08-01 17:25:25 +02:00
detomon d275a7487d Initialize MSDF parameters in BaseMaterial3D with default 2023-07-28 13:24:44 +02:00
Yuri Sizov d49ea2b7d8 Merge pull request #79288 from BastiaanOlij/custom_texture_api
Add custom texture create function
2023-07-26 18:40:01 +02:00
Bastiaan Olij 63d6e9c557 Add custom texture create function 2023-07-26 20:46:34 +10:00
Patrick 65b0989f68 Additional Visual Shader Nodes
* RotationByAxis Visual Shader Node added
* WorldPositionFromDepth Visual Shader Node added
* ScreenNormalWorldSpace Visual Shader Node added
2023-07-26 00:39:12 +02:00
Yuri Sizov ee1be950a1 Merge pull request #79786 from smix8/navmesh_max_edge_len_4.x
Disable NavigationMesh `edge_max_length` property by default
2023-07-25 21:26:16 +02:00
Yuri Sizov 4b0d1026af Merge pull request #78365 from smix8/ps_navmap_default_up_4.x
Add ProjectSettings navigation map default up
2023-07-25 21:25:50 +02:00
clayjohn d61d498632 Lazily allocate RIDs for PlaceholderTextures to avoid allocating GPU resources unless used 2023-07-25 10:49:35 +02:00
Yuri Sizov beb9c3834d Merge pull request #79713 from smix8/legacy_navmesh_struct_4.x
Remove unused struct from NavigationMesh
2023-07-24 19:33:15 +02:00
Yuri Sizov fb2c3ae8f7 Merge pull request #79308 from Geometror/refactor-graphedit
Clean up/refactor GraphEdit
2023-07-24 19:32:33 +02:00
Yuri Sizov 52078dc994 Merge pull request #79157 from smix8/navmesh_clear_4.x
Add `clear` function to NavigationMesh / NavigationPolygon
2023-07-24 19:32:24 +02:00
Yuri Sizov d6bb6d42b2 Merge pull request #71394 from Ithamar/feat-imagetexlay-ser
Fix ImageTextureLayered serialisation issues
2023-07-24 19:32:06 +02:00
Hendrik Brucker a38fd09669 Clean up/refactor GraphEdit 2023-07-24 18:37:23 +02:00
Yuri Sizov 91258e52be
Merge pull request #79307 from Geometror/remove-graph-node-comment
Remove GraphNode's comment property and related functionality
2023-07-24 16:56:41 +02:00
Ithamar R. Adema f37c2b5be2 Fix ImageTextureLayered serialisation issues. 2023-07-23 13:54:04 +02:00
smix8 c63125c317 Disable NavigationMesh edge_max_length property by default
Disables NavigationMesh edge_max_length property by default.
2023-07-22 14:09:15 +02:00
Yuri Sizov 1843781918 Merge pull request #79640 from Calinou/default-theme-scale-fix-corner-radius
Fix corner radius not scaling with theme scale in the default theme
2023-07-21 17:54:54 +02:00
Yuri Sizov 7835d42971 Merge pull request #79618 from HolonProduction/deleting-terrains-crash
Fix crash when deleting tileset terrains
2023-07-21 17:15:48 +02:00
smix8 81930c6719 Remove unused struct from NavigationMesh
Removes unused struct from NavigationMesh.
2023-07-20 18:16:32 +02:00
Ninni Pipping 2284689b0e Fix incorrect virtual function in `VideoStream.set_paused` 2023-07-20 15:55:18 +02:00
Yuri Roubinski 01101134f4 Make the dragging connections more user-friendly in visual shaders 2023-07-20 15:00:19 +03:00
Hugo Locurcio 4198fc9827
Fix corner radius not scaling with theme scale in the default theme
This also uses rounding consistently for scale multipliers, so that
behavior is more predictable with non-integer scale factors like `1.25`
and `1.5`.
2023-07-19 00:00:40 +02:00
HolonProduction 89c39c7f9d Fix crash when deleting terrains 2023-07-18 17:52:32 +02:00
kobewi de4a3fa151 Unify and streamline connecting to Resource changes 2023-07-17 19:35:57 +02:00
Yuri Sizov 38ccab2ab3
Merge pull request #79138 from aaronfranke/camera-exposure-range-hint
Change property hint range for camera attributes exposure multiplier
2023-07-17 17:17:16 +02:00
Hendrik Brucker a29a680920 Extract StyleBoxFlat, StyleBoxTexture and StyleBoxLine in their own file 2023-07-17 13:25:00 +02:00
Yuri Sizov a7583881af Merge pull request #68460 from Geometror/split_texture_src
Extract and reorganize texture resource classes
2023-07-14 21:28:06 +02:00
Hendrik Brucker 7e21eb7e00 Extract and reorganize texture resource classes 2023-07-14 20:04:21 +02:00
Maxim Kulkin 058604f5b8 Fix crash when saving resources with circular references
When saving resources, marking of already seen resources was
done too late, causing infinite loop traversing referenced resources
and eventual stack overflow. The change marks traversed resource
before descending to it's children, thus when this resource is
encountered again, it is already marked as seen and traversal stops.
2023-07-14 19:20:04 +02:00
Yuri Sizov 16565fb630 Merge pull request #79426 from sepTN/fix-basis-tweening
Fix `tween_property` on "Basis" to properly update its value
2023-07-14 18:50:12 +02:00
Yuri Sizov d8c0d63f07 Merge pull request #79393 from Sauermann/fix-window-focux-indicator
Add a default theme for unfocused Windows
2023-07-14 18:50:01 +02:00
Yuri Sizov ead69eba96 Merge pull request #79287 from bitsawer/fix_shader_type_detection
Fix shader type detection
2023-07-14 18:49:44 +02:00
Yuri Sizov de14f09c1d Merge pull request #79279 from kleonc/animation-fix-transform-subtracting
Fix `Animation::subtract_variant` for affine transforms
2023-07-14 18:49:40 +02:00
Septian eb7f87e9a8 Fix `tween_property` on "Basis" to properly update its value 2023-07-13 23:07:23 +07:00
Markus Sauermann 576980f960 Add a default theme for unfocused Windows
At the moment it is impossible to distinguish between focused and
unfocused embedded Windows.
Add a new `theme_item` that is used for coloring the border of
unfocused Windows.
2023-07-12 22:35:03 +02:00
Yuri Sizov a927b22f65 Merge pull request #77257 from rakkarage/tile_animation_sync
Add `TileSetAtlasSource::TileAnimationMode` options and allow to shuffle tile animations
2023-07-12 21:02:31 +02:00
Yuri Sizov f53329d045 Merge pull request #78890 from KoBeWi/who_needs_restart_anyway
Allow change import type without restarting editor
2023-07-12 17:16:53 +02:00
Yuri Sizov 6960a1d0e8 Merge pull request #78248 from felaugmar/load-svg-adjustable-scale
Added `Image::load_svg_from_(buffer|string)`
2023-07-12 15:09:03 +02:00
Yuri Sizov b4a11294e6 Merge pull request #75460 from joao-pedro-braz/add_new_item_stylebox_to_the_tree_control
Add a new "inner_item_margin" Theme constant to the Tree control
2023-07-12 15:08:36 +02:00
Yuri Sizov 53d0e6c2d5 Merge pull request #73691 from Chaosus/vs_depth
Add DEPTH to the visual shader output (for spatial mode)
2023-07-12 14:18:41 +02:00
Hendrik Brucker 662d8c76b3 Remove GraphNode's comment property and related functionality
(this functionality will be reintroduced in a new and more flexible way)
2023-07-11 02:05:25 +02:00
bitsawer 905c10bc54 Fix shader type detection 2023-07-10 17:44:39 +03:00
kleonc 87935ca837 Fix Animation::subtract_variant for affine transforms 2023-07-10 13:49:30 +02:00
Rémi Verschelde dbec337532
Merge pull request #79155 from Owl-A/bugfix-57779
Add 3.x compatibility for animation loop mode
2023-07-10 13:17:37 +02:00
Chinmay Awale 1686a7a1a2 add 3.x compatibility for animation loop mode 2023-07-10 16:16:19 +05:30
Rindbee 22edef14c3 Fix `PackedScene::get_last_modified_time()` always returns `0`
The variables operated by `PackedScene::set_last_modified_time()`
and `PackedScene::get_last_modified_time()` are different.
2023-07-09 17:01:41 +08:00
Rémi Verschelde 43c0fa7f4b
Merge pull request #78797 from Calinou/remove-redundant-vformat
Remove uses of `vformat()` with no placeholders
2023-07-08 18:18:35 +02:00
smix8 d253cd7864 Add clear() function to NavigationMesh / NavigationPolygon
Adds clear() function to NavigationMesh / NavigationPolygon.
2023-07-07 16:27:39 +02:00
Rémi Verschelde 5d23586faf
Merge pull request #79049 from BastiaanOlij/fix_stereo_depth_paralax
Take eye offset into account for depth in StandardMaterial3D
2023-07-07 08:33:44 +02:00
Aaron Franke 59e7e8c795
Change property hint range for camera attributes exposure multiplier 2023-07-06 22:14:47 -05:00
Bastiaan Olij 581d081ded Take eye offset into account for depth in StandardMaterial3D 2023-07-06 21:13:46 +10:00
kobewi 244968c8d1 Allow change import type without restarting editor 2023-07-03 13:24:24 +02:00
Ben Rog-Wilhelm 7ee916a259 Fix: Incorrect property names in FontFile::_get_property_list(). 2023-07-01 07:57:47 -05:00
Hugo Locurcio dcc92c174e
Remove uses of `vformat()` with no placeholders
This is identical to passing the string directly.
2023-06-28 16:27:55 +02:00
kobewi 1a9739f591 Fix crash with failed compatibility tiles 2023-06-28 15:11:10 +02:00
Felipe Augusto Marques 26eb3db234 Added Image's `load_svg_from_(buffer|string)`
No core dependency to the svg module.
2023-06-23 00:43:43 -03:00
Rémi Verschelde cb73a6e9f9
Merge pull request #78490 from clayjohn/GLES3-particles-subemit
Add warnings and fallbacks for particles sub emitters when using the GL Compatibility rendering backend
2023-06-22 21:02:38 +02:00
clayjohn 8a5af8183a Add warnings and fallbacks for particles sub emitters when using the GL Compatibility rendering backend
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-06-21 12:56:52 -07:00
kobewi c1c5b0a435 Update indices after removing custom data layers 2023-06-21 03:12:53 +02:00
Gilles Roudière c54d407fa5 Fixes TileSet set as local to scene 2023-06-20 17:48:56 +02:00
Rémi Verschelde 73ac33342f
Merge pull request #78442 from smix8/navmesh_bake_geo_errors_4.x
Fix potential crashes in navmesh bake geometry functions
2023-06-20 09:22:03 +02:00
Rémi Verschelde ca3283b22b
Merge pull request #77278 from davthedev/stylebox-flat-polys-optimize
Remove useless polygons from StyleBoxFlat drawing
2023-06-20 09:20:27 +02:00
Rémi Verschelde 217a20a8a0
Merge pull request #78448 from akien-mga/black-23.3.0
CI: Update static checks to black 23.3.0
2023-06-20 00:05:39 +02:00
Rémi Verschelde 75ef6e486c
Merge pull request #77735 from AThousandShips/node_array_fix
Fix export of `Array[Node]`
2023-06-20 00:04:01 +02:00
Rémi Verschelde e4deaa2727
Merge pull request #76787 from RedworkDE/avoid-localvector-copy
Avoid making unnecessary copies of `LocalVector`
2023-06-20 00:01:55 +02:00
Rémi Verschelde c9c941e339
CI: Update static checks to black 23.3.0
And apply it to the codebase, removing empty lines at the start of blocks.
2023-06-19 23:33:02 +02:00
Ninni Pipping bbd4873eea Fix index in loading of `Array[Node]` 2023-06-19 23:19:38 +02:00
smix8 f3a6e04f8b Fix potential crashes in navmesh bake geometry functions
Fixes potential crashes in navmesh geometry functions.
2023-06-19 20:58:36 +02:00
Dominik 'dreamsComeTrue' Jasiński 6e6e296502
Set correct RW locks in AnimatedTexture 2023-06-19 15:21:52 +02:00
smix8 c4f544f802 Add ProjectSettings navigation map default up
Adds ProjectSettings navigation map default up.
2023-06-17 11:29:17 +02:00
Rémi Verschelde 2d90f66ac1
Merge pull request #78323 from kleonc/tile-compat-transposed-transform-fix
Fix transform for transposed tiles in compatibility mode (from 3.x)
2023-06-16 16:52:51 +02:00
kleonc 735e7d67ca Fix transform for transposed tiles in compatibility mode (from 3.x) 2023-06-16 13:31:01 +02:00
Rémi Verschelde 7734146060
Merge pull request #78256 from Calinou/animatedtexture-fix-property-hint
Fix outdated usage of `or_lesser` in AnimatedTexture property hint
2023-06-15 10:50:53 +02:00
Rémi Verschelde 41b34e3e56
Merge pull request #78240 from KoBeWi/nothing_valid_here,_keep_scrolling
Safe-guard against missing node arrays
2023-06-15 10:50:45 +02:00
Rémi Verschelde 0da20d019e
Merge pull request #77412 from smix8/fix_threaded_navmesh_baking_4.x
Fix for threaded NavigationMesh baking under new thread guards
2023-06-15 10:49:58 +02:00
Hugo Locurcio 7b4fd528ab
Fix outdated usage of `or_lesser` in AnimatedTexture property hint
The property hint was renamed to `or_less` in 4.0, so it had no effect.
2023-06-15 07:46:33 +02:00
kobewi 4d4fe94cf0 Safe-guard against missing node arrays 2023-06-14 22:02:39 +02:00
kleonc 77b8e0fcb7 Allow setting negative WorldBoundaryShape2D.distance through the editor 2023-06-14 14:54:00 +02:00
smix8 ee14b010ac Fix for threaded NavigationMesh baking under new thread guards
Fixes threaded NavigationMesh baking under new SceneTree thread guards that blocked the process.
2023-06-14 01:53:37 +02:00
smix8 180a5cded1 Fix `cell_height` for navigation meshes
Fixes `cell_height` for navigation meshes.
2023-06-13 23:24:32 +02:00
Rémi Verschelde ad935c4d93
Merge pull request #78172 from smix8/navpoly_cell_size_4.x
Add NavigationPolygon `cell_size` property
2023-06-13 13:53:06 +02:00
Rémi Verschelde ad85ecef8d
Merge pull request #77750 from RandomShaper/tidy_shader_data_items
Let editor workaround a case of inconsistency in compound scenes
2023-06-13 13:52:51 +02:00
kobewi 06eff95d64 Fix missing UID handling in Dependency Editor 2023-06-13 11:09:56 +02:00
Pedro J. Estébanez 96c469a138 Let editor workaround a case of inconsistency in compound scenes 2023-06-13 11:05:57 +02:00
smix8 9c8626bfd8 Add NavigationPolygon cell_size property
Adds NavigationPolygon cell_size property.
2023-06-13 10:53:07 +02:00
Rémi Verschelde 65969dd51a
Merge pull request #77945 from AThousandShips/null_check
Use NULL instead of COND checks when appropriate
2023-06-10 12:11:48 +02:00
Rémi Verschelde fe0ee24533
Merge pull request #77779 from KoBeWi/emit_changed()
Use `emit_changed()` consistently
2023-06-10 12:11:25 +02:00
Ninni Pipping dcd2b883eb Use NULL instead of COND checks when appropriate
Restricted to scene
2023-06-10 08:56:30 +02:00
Rémi Verschelde 082cfd501a
Merge pull request #78021 from clayjohn/Particles-size-rot-reset
Correctly reset particle size and rotation in ParticlesProcessMaterial
2023-06-09 11:07:13 +02:00
Rémi Verschelde 166643df32
Merge pull request #74937 from bitsawer/fix_uniform_storage
Fix shader uniform storage conversions and crash
2023-06-09 11:04:16 +02:00
Raffaele Picca 353a4e1e09 Correctly reset particle size and rotation in ParticlesProcessMaterial
Co-authored-by: clayjhn <claynjohn@gmail.com>
2023-06-08 14:39:14 -07:00
Kirill Diduk 566f78bc1e Fix parameters passing to `add_triangle_fan` method.
Pass `p_uvs` parameter properly (instead of passing `p_uv2s` twice).

This commit fixes #77542
2023-06-08 17:45:26 +02:00
Rémi Verschelde fad61679cc
Merge pull request #77969 from clayjohn/Material-ORM-key
Hash ORM flag in BaseMaterial to differentiate between ORM and Standard materials
2023-06-08 09:11:06 +02:00
clayjohn 86550ea3c5 Hash ORM flag in BaseMaterial to differentiate between ORM and Standard materials 2023-06-07 09:31:34 -07:00
Rémi Verschelde 803ad98303
Merge pull request #77958 from Calinou/editor-particle-damping-increase-step-precision
Increase precision in particle damping properties in the editor
2023-06-07 16:06:59 +02:00
Rémi Verschelde 27b402bf73
Merge pull request #77902 from dalexeev/doc-unify-deprecations
Documentation: Unify deprecations
2023-06-07 16:06:50 +02:00
Danil Alexeev b433020aa6
Documentation: Unify deprecations 2023-06-07 16:34:03 +03:00
Hugo Locurcio fc4ec42a09
Increase precision in particle damping properties in the editor 2023-06-07 15:26:02 +02:00
VolTer 995880e60b Optimize and fix the default theme SVGs 2023-06-07 05:40:58 +02:00
lawnjelly b69c8b4791 Single Compilation Unit build.
Adds support for simple SCU build (DEV_ENABLED only).
This speeds up compilation by compiling multiple cpp files within a single translation unit.
2023-06-06 15:36:51 +01:00
Rakka Rage 6dbae30000 Add tile_animation_mode option:
- to tile animation properties
- when "Default" each animation starts at time 0.
- when "Random Start Times" each animation starts at random time.
2023-06-06 09:31:18 -04:00
kobewi 5b85dabcc8 Use emit_changed() consistently 2023-06-02 22:45:18 +02:00
JoNax97 b998f7ceb7 Gradient: Check if interpolation mode and color space are different before firing notifications. 2023-06-02 10:40:13 -03:00
João Pedro Braz 670b7bec9a Add the "inner_item_margin" Theme constant to the Tree control
This PR adds the "inner_item_margin" Theme constant to the Tree Control.
It behaves like a horizontal padding (in CSS), but only in the active
writing direction (So on LTR it'll apply a left padding and on RTL right
padding).

The Editor Theme has been updated to make use of this and a result items
in Trees and ItemLists no longer "hugs" their border, expressing a proper
spacing instead.
2023-06-02 11:32:40 +02:00
Pedro J. Estébanez 4412c1d989 Fix external resource ids lost 2023-06-01 22:34:49 +02:00
Rémi Verschelde f77dee90a6
Merge pull request #76389 from ajreckof/editor-property-nodepath-for-node
Fix typed array export
2023-06-01 00:40:40 +02:00
Yuri Sizov c3e512eda4
Merge pull request #77692 from RandomShaper/fix_th_material_load
Fix materials' shaders not updated if loaded on a non-main thread
2023-05-31 14:35:05 +02:00
Pedro J. Estébanez 197b54370a Fix materials' shaders not updated if loaded on a non-main thread 2023-05-31 12:50:27 +02:00
Yuri Sizov 943e5b9019
Merge pull request #77631 from KdotJPG/issue-77491-fix-turbulence-noise-scale
Fix `turbulence_noise_scale` for Particle Turbulence
2023-05-31 12:49:49 +02:00
KdotJPG 9332a091e1 Fix `turbulence_noise_scale` regression.
Fixes #77491
2023-05-30 23:58:01 -04:00
Yuri Sizov c0ee762f46
Merge pull request #77655 from bitsawer/fix_strange_fragments
Fix suspicious code related to text rendering
2023-05-30 16:03:44 +02:00
Yuri Sizov faa73c9fcb
Merge pull request #77608 from bitsawer/fix_cyclic_includes
Fix shader preprocessor cyclic include handling
2023-05-30 15:32:04 +02:00
bitsawer 78361370ec Fix issues found by a static analyzer 2023-05-30 12:47:50 +03:00
Yuri Sizov c5e989209c
Merge pull request #76151 from MewPurPur/square-gradient2d
Add a square fill mode to GradientTexture2D
2023-05-29 17:17:16 +02:00
bitsawer 23c375d6b4 Fix shader uniform storage conversions and crash 2023-05-29 15:17:13 +03:00
bitsawer 67038471ff Fix shader preprocessor cyclic include handling 2023-05-29 12:05:22 +03:00
Rémi Verschelde c97201babc
Merge pull request #76545 from JoNax97/gradient_color_spaces
Add Linear SRGB and OKLab color spaces to Gradient.
2023-05-29 10:28:58 +02:00
Rémi Verschelde 990943782a
Merge pull request #74959 from MewPurPur/nice-curves
Overhaul the Curve Editor
2023-05-29 10:28:53 +02:00
VolTer a3c4a4b039 Overhaul the Curve Editor 2023-05-28 14:17:51 +02:00
JoNax97 c07b2fcf4d Add Linear SRGB and OKLab color spaces to Gradient. 2023-05-26 16:18:01 -03:00
smix8 66a8418a2d Remove unnecessary Clipper lib includes
Removes unnecessary Clipper lib includes.
2023-05-24 23:57:08 +02:00
Silc Renew 42aa5398d9 Fix Pathfollow direction
Co-authored-by: aaronfranke <arnfranke@yahoo.com>
2023-05-24 17:37:00 +09:00
bruvzg aaddec7cb8
[TextServer] Add support for retrieving OpenType name strings. 2023-05-22 18:08:34 +03:00
Rémi Verschelde 5dc093b19a
Merge pull request #77341 from RedworkDE/doctool-material-error-fix
Fix error in `BaseMaterial3D` when running doctool
2023-05-22 17:02:23 +02:00
RedworkDE 69f2bc2751 Improve `SelfList` and fix error in `BaseMaterial3D` when running doctool 2023-05-22 16:38:57 +02:00
Rémi Verschelde 65fa775ff6
Merge pull request #75469 from ibotha/fix/74259-sky-cover-not-reset-properly
Properly set sky_cover property of sky_material to Nil in setter
2023-05-22 14:13:16 +02:00
Isard Botha 74041e3705
Fix issue 74259 by setting the sky cover property back to nil when it is reset in the editor. 2023-05-21 18:35:33 +01:00
ajreckof 465742d904 Fix typed array export
Apply suggestions from code review to squash later

Revert "Fix typed array export... again"

This reverts commit da8d6734fb.

Co-Authored-By: Tomek <kobewi4e@gmail.com>
2023-05-21 08:40:11 +02:00
David Giardi 16f6f40669 Remove useless polygons from StyleBoxFlat drawing 2023-05-20 14:28:47 +02:00
Biggles Bristol c920a4f051 [Fixed] for "off-by-1" bug when sampling "baked" curve data towards the end of the curve.
[Fixed] Failing test "[Curve] Custom curve with free tangents" by setting the curve's `bake_resolution` to 11.
[Fixed] test messages in "[Curve] Custom curve with free tangents" to match sample offset used in each test
[Added] New test "[Curve] Straight line offset test" in response to pull request feedback.
Update tests/scene/test_curve.h

Co-authored-by: kleonc <9283098+kleonc@users.noreply.github.com>
2023-05-20 11:28:09 +01:00
KdotJPG 91bdd4073b Reworked Particle Turbulence - Rebased. 2023-05-17 14:25:21 +02:00
Rémi Verschelde 12b7a56202
Merge pull request #76713 from KoBeWi/TODO_is_now
Fix 2D audio in multiple viewports
2023-05-16 11:00:45 +02:00
bruvzg 9163d8c336
Expose TextServer justification flags to Label, Label3D, TextMesh and RTL. Add flags to control last/single line justification. 2023-05-15 19:23:54 +03:00
FranckRJ ab5462e386 Fixed width of CapsuleShape2D::get_rect + set center to center of shape
The width of the rect was only half of the width of the shape, and
the 0;0 coord was at the top left of the rect.
Now the width properly matches the width of the shape, and the 0;0
coord is at the center of the shape. It should match the behavior
of Godot 3.X.
2023-05-14 18:09:07 +02:00
Rémi Verschelde cc48827e4a
Merge pull request #76946 from AThousandShips/shadow_warning
Enable shadow warnings and fix raised errors
2023-05-12 10:04:09 +02:00
smix8 f986b52b3c Make navigation mesh edge connections optional
Makes navigation mesh edge connections optional.
2023-05-11 18:46:34 +02:00
Ninni Pipping 71ee65dc57 Enable shadow warnings and fix raised errors 2023-05-11 16:00:59 +02:00
Pedro J. Estébanez b6647a5808 Avoid sync issues in materials with scheduled shader updates 2023-05-10 18:53:41 +02:00
Pedro J. Estébanez 8983b20ccd Avoid interaction issues between resource loading threads 2023-05-10 18:53:41 +02:00
Rémi Verschelde c9f81045be
Merge pull request #76536 from AThousandShips/bit_poly_size
Fix size error in `BitMap.opaque_to_polygons`
2023-05-08 13:52:46 +02:00
Rémi Verschelde 3e6a731904
Merge pull request #76418 from reduz/method-bind-validated-call
Add ValidatedCall to MethodBind
2023-05-08 13:52:42 +02:00
Rémi Verschelde e70777260d
Merge pull request #70911 from Chaosus/vs_custom_gdextension_support
Add handling of custom visual shader nodes from GDExtension
2023-05-08 12:20:00 +02:00
RedworkDE 1324c7d06a Avoid making unnecessary copies of `LocalVector` 2023-05-06 20:39:03 +02:00
Yuri Rubinsky 998b48f722 Add handling of custom visual shader nodes from GDExtension 2023-05-06 08:19:12 +03:00
David Turner 43a7cb093c Explain why an image would be invalid for a texture 2023-05-05 14:33:01 -04:00
Clay John 12e4323f17
Merge pull request #75427 from Chaosus/shader_fix_groups_ordering
Fix shader uniform groups to prevent it sorting in alphabet order
2023-05-05 09:08:37 -07:00
kobewi 8a41eefb97 Fix 2D audio in multiple viewports 2023-05-03 23:09:40 +02:00
smix8 2dbc5d95eb Fix SurfaceTool::create_from_blend_shape()
Fixes SurfaceTool::create_from_blend_shape().
2023-05-02 08:48:48 +02:00
Juan Linietsky 1c93606e47 Add ValidatedCall to MethodBind
* This should optimize GDScript function calling _enormously_.
* It also should simplify the GDScript VM considerably.

NOTE: GDExtension calling performance has most likely been affected until going via ptrcall is fixed.
2023-04-30 20:01:26 +02:00
Ninni Pipping 249784ed53 Fix size error in `BitMap.opaque_to_polygons`
Previous estimate of upper limit on size was incorrect
2023-04-28 19:01:02 +02:00
bitsawer 35b06f05a2 Revert "Fix ShaderMaterial uniform type changes"
This reverts commit e55c6bfb7b.
2023-04-28 11:37:29 +03:00
Rémi Verschelde 5cc50c11d5
Merge pull request #76438 from bitsawer/fix_shader_uniform_typing
Fix ShaderMaterial uniform type changes
2023-04-27 23:55:43 +02:00
Rémi Verschelde cedd3378f5
Merge pull request #69053 from KoBeWi/grabbercentrism
Add center_grabber theme property to Slider
2023-04-27 08:18:37 +02:00
Rémi Verschelde bbecc8ae0d
Merge pull request #70234 from Rindbee/fix-uid-lost
Fix the uid field of the tscn/res file is lost when the external dependency is updated
2023-04-25 16:16:47 +02:00
bitsawer e55c6bfb7b Fix ShaderMaterial uniform type changes 2023-04-25 15:01:56 +03:00
Rémi Verschelde ed62d965eb
Merge pull request #75429 from MewPurPur/Literally-cant-have-a-functioning-level-editor-because-of-this-please-helppp
Fix PackedScenes created with PackedScene.pack() have their exported nodes become null
2023-04-25 09:58:41 +02:00
Silc Renew fac8a918f9 Expose interpolation methods for 3D track in Animation class 2023-04-25 01:45:14 +09:00
Rémi Verschelde dfee04ae2a
Merge pull request #74632 from davthedev/tabs-hover
Add theming support for hovered tabs
2023-04-24 16:42:38 +02:00
kobewi 14cb9b5b26 Add center_grabber property to Slider 2023-04-22 17:53:17 +02:00
Rémi Verschelde 77fc22d6e2
Merge pull request #76290 from JohanAR/light_is_directional_spatial
Add LIGHT_IS_DIRECTIONAL built-in for spatial shaders
2023-04-21 15:50:27 +02:00
VolTer 0a4a1bc4b8 Add a square fill mode to GradientTexture2D 2023-04-20 16:32:42 +02:00
Johan Aires Rastén 14a8124ffe Add LIGHT_IS_DIRECTIONAL built-in for spatial shaders 2023-04-20 14:33:30 +02:00
David Giardi 9f1e18e64c Add theming support for hovered tabs
Tabs can now be styled differently when hovered by the mouse pointer.
2023-04-19 01:38:09 +02:00
David Giardi 142990d60a Add hovered item style to ItemList 2023-04-18 22:52:39 +02:00
David Giardi 2ef20045b1 Fix blurry borders on antialiased FlatStyleBox
This is a fix of the antialiasing logic of FlatStyleBox.
It is now possible to have smooth rounded corners while keeping
the edges sharp on the pixels.

The antialiasing gradient positioning is ajusted so that the "hard"
border corresponds to the middle of that gradient instead of one end.
Checked against rendering of rounded rectangles in a vector graphics
software.
2023-04-17 20:23:03 +02:00
Yuri Sizov bd3286eed2
Merge pull request #75999 from clayjohn/Particles-angle-rand
Use angle_rand to calculate base_angle in particles process material
2023-04-14 13:14:34 +02:00
clayjohn 821917ba9f Use angle_rand to calculate base_angle in particles process material 2023-04-13 15:10:47 -07:00
VolTer 6c6c1302f3 Fix PackedScenes created with PackedScene.pack() have their exported nodes become null 2023-04-13 16:16:13 +02:00
Rémi Verschelde 13f2a4c7ae
Merge pull request #75993 from AThousandShips/autohide_theme
Don't apply scale to autohide theme property
2023-04-13 09:55:30 +02:00
clayjohn 9be0a73294 Add EXPOSURE built in to spatial shaders
This allows users to restore light values to pre-pre-exposure amounts
2023-04-12 10:35:13 -07:00
Ninni Pipping 722597aa97 Don't apply scale to autohide theme property 2023-04-12 17:40:40 +02:00
Rémi Verschelde d4dad2b2f8
Merge pull request #75957 from clayjohn/VS-default-modes
Write out render_mode even when mode is set to default in VisualShaders
2023-04-12 17:01:24 +02:00
kobewi 20261016a7 Fix typed array export
Co-authored-by: Guilherme Sousa <guilherme.sousa1994@gmail.com>
2023-04-12 12:19:17 +02:00
clayjohn 016946b552 Write out render_mode even when mode is set to default in VisualShaders 2023-04-11 18:03:00 -07:00
Rémi Verschelde fff0ee0fc4
Merge pull request #75822 from YeldhamDev/no_multi_zero
Remove unnecessary zero multiplications
2023-04-11 19:40:40 +02:00
Yuri Sizov 5243f5cece
Merge pull request #72152 from smix8/mcd_settings_4.x
Add Mesh ConvexDecompositionSettings wrapper
2023-04-10 12:52:23 +02:00
Yuri Sizov 8784f95e1f
Merge pull request #75777 from 3deathtoll/patch-1
Make `SyntaxHighlighter::get_text_edit` a const function
2023-04-10 12:49:04 +02:00
Michael Alexsander f057d755ab Remove unnecessary zero multiplications 2023-04-08 09:31:05 -03:00
smix8 1549aeaef8 Add Mesh ConvexDecompositionSettings wrapper
Adds wrapper MeshConvexDecompositionSettings to control parameters for Mesh ConvexDecomposition operations.
2023-04-07 22:39:25 +02:00
3deathtoll 3841c4a4b4 Make SyntaxHighlighter::get_text_edit a const function 2023-04-07 23:46:50 +05:30
Yuri Sizov b5f532094e
Merge pull request #56671 from Rgtemze/warn_if_concave
Warn when a concave polygon is assigned to ConvexPolygonShape2D
2023-04-07 14:39:41 +02:00
Haoyu Qiu 498d538578 Add scrollbar offset theme constants to Tree 2023-04-06 15:04:28 +08:00
Yuri Sizov 1522762dc9 Make icons of scripted and custom classes fit the editor UI
Also:
- Add an option to limit the icon size in PopupMenu.
This is similar to how this works in Tree and TreeItem.
- Add the same option to TabBar.
- Add a theme constant for Tree, PopupMenu, Button, and
TabBar to apply this limit on the control level.

Co-authored-by: Daylily-Zeleen <daylily-zeleen@foxmail.com>
2023-03-31 21:39:02 +02:00
bruvzg efa647bb17
[RTL] Fix fill align and trim with enabled dropcap. 2023-03-30 22:23:39 +03:00
Yuri Rubinsky 8ea4acee49 Fix shader uniform groups to prevent it sorting in alphabet order 2023-03-28 18:36:10 +03:00
Ninni Pipping 3795677f3d Make `Gradient` resort points on `reverse` 2023-03-22 19:32:00 +01:00
Yuri Sizov 7ca4ad8647
Merge pull request #75079 from mihe/shape-margin
Update property/documentation of shape margins
2023-03-20 16:30:10 +01:00
bruvzg 09465f3fe6
Remove (or make verbose only) various debug prints. 2023-03-20 08:14:18 +02:00
Mikael Hermansson ec6694ce3c Open up bounds of `Shape3D.margin` to support other physics engines 2023-03-18 20:52:13 +01:00
Yuri Sizov 98d95f3a0e
Merge pull request #74149 from bruvzg/get_char
[Font] Implement `get_char_from_glyph_index` function.
2023-03-16 13:07:11 +01:00
Yuri Sizov bdefdc866b
Merge pull request #74910 from paddy-exe/fix-ndc-depth-gles3
Fix ndc calculation for LinearSceneDepth VS node in GLES3
2023-03-16 12:01:07 +01:00
Rindbee 69f488e687 Property list changes are only notified when it did change in Curve
`Object::notify_property_list_changed()` should only be called when
the structure of the property has actually changed.

The structure of the property tree has not changed if the size of the
array has not changed, and the only possibility is that the element
value has changed.
2023-03-15 09:51:15 +08:00
Patrick e3802d5b6f Fix ndc calculation for LinearSceneDepth VS node in GLES3 2023-03-14 15:05:01 +01:00
Rémi Verschelde b31d00a914
Merge pull request #74740 from clayjohn/sky-filter
Use linear filtering without mipmaps for ProceduralSkyMaterial and PhysicalSkyMaterial
2023-03-10 22:49:29 +01:00
clayjohn 572ac91514 Use linear filtering without mipmaps for ProceduralSkyMaterial and PhysicalSkyMaterial 2023-03-10 10:48:45 -08:00
RedworkDE f540148072 Add dedicated setter for `ImageTextureLayered::_images` to fix `create_from_images` being hidden from the C# bindings 2023-03-09 17:53:36 +01:00
Yuri Sizov 64215ad119 Generate empty textures for theme icons if the SVG module is disabled 2023-03-07 15:31:19 +01:00
clayjohn e9d80a821d Set properties of ImageTexture3D when creating 2023-03-06 14:57:17 -08:00
Rémi Verschelde a2d449f22e
Merge pull request #74212 from bruvzg/bmp_def_out
[Bitmap font] Assume outline size is `1` if it's not set, but channel for outline is defined.
2023-03-03 11:07:28 +01:00
Rémi Verschelde f339f8e3d2
Merge pull request #73713 from SirQuartz/graph-node-close-button
Fix Graph Node close rect default position
2023-03-02 11:26:28 +01:00
bruvzg 67762ec4a6
[Bitmap font] Assume outline size is `1` if it's not set, but channel for outline is defined. 2023-03-02 08:36:17 +02:00
bruvzg 8459aeaab0
[Font] Implement `get_char_from_glyph_index` function. 2023-03-01 09:29:11 +02:00
clayjohn c69b14e96e Add warnings for unsupported features in mobile and gl_compatibility backends 2023-02-26 12:28:02 -08:00
Lyuma 51a4fe1d53 import: Fix uv2 by avoiding premature ImporterMesh::get_mesh()
Implements create_convex_shape in ImpoterMesh.
Note: ImporterMeshInstance3D::get_mesh() is safe.
The only dangerous function with side effects is ImpoterMesh::get_mesh()
2023-02-23 11:55:28 +01:00
Nicholas Huelin 961d6763fb Modify the default theme GraphNode close_h_offset
Modifies the close_h_offset to be 12 instead of 22. This better aligns the default position.
2023-02-22 14:51:15 -05:00
Rémi Verschelde 0a15f51617
Merge pull request #73741 from dalexeev/fix-sprite-frames-convert
Fix `SpriteFrames` data loss on 3-to-4 conversion
2023-02-22 10:13:57 +01:00
Danil Alexeev d49ac0466f
Fix `SpriteFrames` data loss on 3-to-4 conversion 2023-02-22 11:17:10 +03:00
kobewi a899f547ae Fix reset_state() in TileSet 2023-02-21 22:38:20 +01:00
Yuri Rubinsky faf62ba0cc Add DEPTH to the visual shader output (for spatial mode) 2023-02-21 20:19:37 +03:00
Juan Linietsky 34fd128723 Fix shader parameter assign
-Make sure the remap is created properly if never assigned before.

Fixes #72923. Supersedes #73066.
2023-02-18 13:13:54 +01:00
Yuri Sizov 0c4bdf443d
Merge pull request #65353 from QbieShay/qbee/fix-billboard-nonuniform-scale 2023-02-18 12:31:42 +03:00
Rémi Verschelde 1075931c64
Remove unexposed ProxyTexture, mark AnimatedTexture as deprecated
According to reduz:

> [AnimatedTexture] should be removed together with ProxyTexture, its just
> not efficient at all in Vulkan and causes invalidation of all descriptor
> sets depending on it
> it was needed mostly for animated tilemaps, but nowadays there is not a lot
> of reason for it

Marking AnimatedTexture as deprecated accordingly, until we reach consensus
for removing it completely.
2023-02-17 12:32:26 +01:00
Tecelli Akıntuğ 1ba05b4b3a
Fix AnimatedTexture inconsistency when setting frame 2023-02-16 22:34:10 +01:00
Haoyu Qiu ccc3bdebb3 Add missing i18n in tiles editor 2023-02-15 23:08:03 +08:00
Chris Hutchinson d842d215df Prevent crash in ImmediateMesh.create_outline by ensuring
that when no indices are specified, the number of vertices is
at least a factor of 3. Fixes #73201
2023-02-14 22:42:07 -05:00
QbieShay 7881422901 make particle billboard take into account non-uniform scale 2023-02-13 21:18:55 +01:00
Rémi Verschelde a90bbc3544
Merge pull request #72225 from MinusKube/shaped_text_invalidated_bug
Mark dirty flags when shaped texts are invalidated
2023-02-13 09:13:27 +01:00
Rémi Verschelde 77b415ab6d
Fix SurfaceTool crash with invalid bone/weight count
Fixes #53191.
2023-02-12 14:14:03 +01:00
Ziya Erkoc 6fb113f59f
Warn if a concave shape is assigned to ConvexPolygonShape2D 2023-02-11 21:58:35 +01:00
Aaron Franke be916233f9
Check for CanvasItem instead of Control and Node2D 2023-02-11 02:18:10 -06:00
Rémi Verschelde b12bf7ff02
Merge pull request #69550 from Rindbee/fix-script-editor-not-reload-via-lsp
Fix internal editor not updating when using external editor via LSP
2023-02-09 14:01:33 +01:00
clayjohn 04a9933f2e Mark fma function as high end so it isn't used with the gl_compatibility renderer 2023-02-08 12:56:15 -08:00
kobewi 095c805079 Fix sub-resource IDs resetting when preloaded 2023-02-07 14:13:22 +01:00
Patrick Dawson 80ae3feca7 Avoid returning self from `_get_base_font_or_default()` 2023-02-05 04:37:59 +01:00
Rémi Verschelde ea5cf7d4b8
Merge pull request #72655 from smix8/navigationmesh_bake_aabb_fix_4.x
Fix NavigationMesh baking AABB Editor handling and visuals
2023-02-04 00:21:33 +01:00
Yuri Rubinsky c0a3129210 Prevent preview error for the instance parameter in visual shader 2023-02-03 15:28:04 +03:00
smix8 7caf08ec75 Fix NavigationMesh baking AABB Editor handling and visuals
Fixes handling and visuals for Navigation Mesh baking AABB in the Editor.
2023-02-03 11:54:13 +01:00
Hugo Locurcio dc06575475
Add a property hint for PrimitiveMesh's `uv2_padding`
Negative values are not valid and will always cause lightmap bleeding
to occur.

This also improves the documentation for the `uv2_padding` property
in the class reference.
2023-02-02 14:55:51 +01:00
Rémi Verschelde e52213e2fa
More codespell fixes, do more changes from previous ignore list 2023-02-01 12:11:36 +01:00
Rémi Verschelde d9ade633b3
Merge pull request #71936 from akien-mga/remove-some-unused-signals
Remove some unused signals
2023-02-01 07:53:52 +01:00
Rémi Verschelde e8240031e7
Merge pull request #71479 from raulsntos/virtual-return-type
Use enum instead of int in virtual methods return type
2023-02-01 07:45:28 +01:00
Rémi Verschelde 64f0dad2dc
Merge pull request #70446 from akien-mga/meshoptimizer-4a287848f
meshoptimizer: Sync with upstream commit 4a287848f
2023-02-01 07:40:23 +01:00
Rémi Verschelde ab4d8df163
Merge pull request #72485 from BastiaanOlij/add_eye_matrix_access
Expose EYE_OFFSET to gdshader code
2023-02-01 07:33:18 +01:00
Rémi Verschelde df68909da4
Merge pull request #72459 from KoBeWi/debinds
Add unbinds to `scn`
2023-02-01 07:31:17 +01:00
Rémi Verschelde 3eb1ac9fd2
Merge pull request #72075 from Maran23/extents-to-size
Replace Extents with Size in VoxelGI, ReflectionProbe, FogVolume, Decal  and GPUParticles*3D
2023-02-01 07:30:09 +01:00
Rémi Verschelde cf9df3b5d4 meshoptimizer: Sync with upstream commit 4a287848f
4a287848fd
2023-01-31 22:27:49 -08:00
kobewi 7780b40a3a Add unbinds to scn 2023-02-01 03:03:55 +01:00
Bastiaan Olij 8c77aea9ab Expose EYE_OFFSET to gdshader code 2023-02-01 12:39:13 +11:00
Yuri Rubinsky 0810ecaafd
Merge pull request #72436 from Chaosus/vs_switch_improvement 2023-01-31 22:55:42 +03:00
Marius Hanl a59819630d Replace Extents with Size in VoxelGI, ReflectionProbe, FogVolume, Decal and GPUParticles*3D
- Extents are replaced by Size (Size is Extents * 2)
- The UI text displays 'Size'
- Snapping is adjusted to work with Size
- _set and _get handle extents for compatibility

Co-authored-by: ator-dev <dominic.codedeveloper@gmail.com>
2023-01-31 20:04:11 +01:00
Raul Santos 9e9eac4676
Use enum instead of int in virtual methods return type 2023-01-31 19:06:49 +01:00
Rémi Verschelde b342dcdf04
Remove some unused signals
Part of #37604.
2023-01-31 18:54:04 +01:00
smix8 026549db2e Create default World physics spaces on demand only
Changes that the default physics spaces of World resources are only created on first use.
2023-01-31 18:26:52 +01:00
Rémi Verschelde 5bcf016f11
Merge pull request #62737 from kidrigger/gdext_videodecoder
Updates VideoDecoder plugin API to GDExt.
2023-01-31 11:04:56 +01:00
Rémi Verschelde 99a44f8469
Merge pull request #69248 from vonagam/fixing-typed-arrays
GDScript: Fix typed arrays
2023-01-31 11:04:21 +01:00
Dmitrii Maganov 5909f9f075 GDScript: Fix issues with typed arrays 2023-01-31 11:54:41 +02:00
Rémi Verschelde d14d6033a5
Merge pull request #72441 from bruvzg/lbl3d_aaa
[Sprite3D/Label3D] Expose alpha antialiasing properties.
2023-01-31 10:54:13 +01:00
bruvzg b4fe514aa3
[Sprite3D/Label3D] Expose alpha antialiasing properties. 2023-01-31 10:46:38 +02:00
Yuri Rubinsky bcecb4fe37 Use mix for vector types in switch node in the visual shader 2023-01-31 09:45:27 +03:00
Lyuma 03692c715e Implement custom uvs for Static Lightmap imported gltf 2023-01-30 22:37:38 -08:00
anish bhobe 42a9c33fad Updates VideoDecoder plugin API to GDExtension.
Adds VideoStream and relevant resource loaders to migrate
external GDNative plugins to GDExtension.

Adds a VideoStreamLoader as a specialization of ResourceFormatLoader
as ClassDB::is_parent_class is inaccessible from GDExtension currently.

Using Object* instead of Ref<T> in order to avoid the refcount bug
(godotengine/godot-cpp#652)
Also another bug is in ResourceLoader in use on the extension side that
requires fixing.
2023-01-30 18:39:29 -08:00
Rémi Verschelde 6bdc4ea88c
Merge pull request #72344 from smix8/default_navmap_on_demand_only_4.x
Create default World navigation maps on demand only
2023-01-30 13:35:48 +01:00
Rémi Verschelde 38f8411ed8
Merge pull request #71964 from bruvzg/mat_key
Fix unsafe murmur3 hash use for the default material keys, expose alpha hash transparency mode for default materials and Label3D and Sprite3D.
2023-01-30 10:03:49 +01:00
Rémi Verschelde 62b0bfd343
Merge pull request #71657 from m4gr3d/increase_scroll_bar_size_for_touchscreen_main
Update the size of the scrollbar for the editor on touchscreen devices
2023-01-30 10:03:40 +01:00
smix8 1bc2c7cb12 Create default World navigation maps on demand only
Changes that the default navigation maps of World resources are only created on first use.
2023-01-30 02:51:14 +01:00
Danil Alexeev 5195f723b9
Improve stroke drawing on 2D collision shapes 2023-01-29 19:07:09 +03:00
Rémi Verschelde e5752fdfd3
Merge pull request #72233 from TokageItLab/audio-blending
Implement blending audio feature to AnimationTree
2023-01-28 15:58:24 +01:00
Silc Renew 75330887d7 Implement blending audio feature to AnimationTree 2023-01-28 20:08:29 +09:00
Fredia Huya-Kouadio 63c88df3f7 Add a theme usability setting which updates the touch area of UI elements (e.g: scrollbar) for the editor on touchscreen devices 2023-01-28 00:21:05 -08:00
Yuri Rubinsky 2afa175195
Merge pull request #72174 from bitsawer/shader_include_fixes
Close undefined
Fix undefined
2023-01-28 09:54:41 +03:00
MinusKube ba472bd29c Use correct prefix for TextMesh width property 2023-01-28 04:09:10 +01:00
MinusKube d59c221404 Mark dirty flags when shaped texts are invalidated 2023-01-28 03:31:55 +01:00
Rémi Verschelde a43db5afa4
Merge pull request #72186 from groud/improve_tileset_3to4_conversion
Improve TileSet 3to4 conversion, avoiding some data loss
2023-01-27 19:26:46 +01:00
Gilles Roudière 9a593fa1aa Improve TileSet 3to4 conversion, avoiding some data loss 2023-01-27 18:44:45 +01:00
Rémi Verschelde 1bf7b84fbf
Merge pull request #62123 from holgac/bugfix-62097
Fix infinite loop in animation compress
2023-01-27 15:42:05 +01:00
Rémi Verschelde 8a1369192e
Merge pull request #72173 from groud/warn_autotile_conversion
Warn that autotiles from 3.x cannot be converted automatically to 4.x
2023-01-27 15:41:52 +01:00
Rémi Verschelde f43fbb593e
Merge pull request #72148 from smix8/tileset_navigationlayers_bitmask_helpers_4.x
Add TileSet helper functions to set/get navigation layer bitmask values
2023-01-27 15:40:59 +01:00
Rémi Verschelde 525db733c8
Merge pull request #72129 from groud/unclamp_texture_origin
Rename texture_offset and unclamp it
2023-01-27 15:40:52 +01:00
bitsawer 0acaccebaf Fix several shader preprocessor include issues 2023-01-27 14:37:55 +02:00
Gilles Roudière 0d06ebff2f Warn that autotiles from 3.x cannot be converted automatically to 4.x 2023-01-27 13:34:57 +01:00
Rémi Verschelde 9d555f5c68
Merge pull request #62499 from fire/gltf-binary-img-compression
Handle gltf binary images
2023-01-27 11:35:55 +01:00
smix8 1809915bce Add TileSet helper functions to set/get navigation layer values
Adds helper functions to TileSet to set / get navigation layers bitmask values.
2023-01-27 11:23:34 +01:00
Gilles Roudière d7f3bd50bd Rename texture_offset and unclamp it 2023-01-27 11:04:45 +01:00
K. S. Ernest (iFire) Lee 39922d7167 Handle gltf binary
[ Ignore and Warn | Extract Textures (default) | Optimize Loading Embedded as Basisu ]

Enable compressed mip maps from Basis Universal for faster compressions.

Increase the quality of Basis to avoid corruption.

To keep compatibility use the first mip of the previous internal Godot format.

Because texture names may have invalid filename characters, adds String::validate_filename to sanitize filenames for import pipeline use.
2023-01-27 02:02:02 -08:00
Rémi Verschelde 91c0ed5e33
Merge pull request #71907 from TokageItLab/change-animated-sprite-api
Make `AnimatedSprite`'s playback API consistent with `AnimationPlayer`
2023-01-27 10:32:23 +01:00
kobewi b5fda06f20 Don't change region_rect when setting texture 2023-01-26 23:02:26 +01:00
Rémi Verschelde 5d18a0e829
Merge pull request #72124 from YuriSizov/gui-stylebox-texture-is-just-stylebox
Remove size restrictions from `StyleBoxTexture`
2023-01-26 22:59:41 +01:00
Rémi Verschelde 7cf21f296b
Merge pull request #68034 from Klowner/surfacetool-generate-normals
Make SurfaceTool.generate_normals() behave consistently with smoothing groups
2023-01-26 22:52:19 +01:00
Mark Riedesel da893c14cf Make SurfaceTool.generate_normals() behave in a consistent manner in regard to smoothing groups, imply group 0 is flat 2023-01-26 12:32:31 -06:00
Yuri Rubinsky 8c8c333bf2 Add derivative functions with precision to shaders 2023-01-26 20:53:46 +03:00
Yuri Sizov 9b7124b49c Remove size restrictions from StyleBoxTexture 2023-01-26 17:11:37 +01:00
bruvzg 2442f6c937
[SystemFont] Add missing MSDF properties. 2023-01-26 09:47:42 +02:00
Silc Renew 17bf6238fc Make AnimatedSprite's playback API consistent with AnimationPlayer 2023-01-26 12:40:19 +09:00
Aaron Franke 2bc0bcbd26
PropertyUsage: Rename "DO_NOT_SHARE_ON_DUPLICATE" to "ALWAYS_DUPLICATE" 2023-01-24 16:05:07 -06:00
bruvzg 1c774a6083
Fix unsafe murmur3 hash use for the default material keys, expose alpha hash transparency mode for default materials and Label3D and Sprite3D. 2023-01-24 12:24:53 +02:00
Rémi Verschelde 06c930caf1
Merge pull request #71878 from bitsawer/fix_shader_dependencies
Fix shader include dependency handling
2023-01-24 09:47:28 +01:00
Rémi Verschelde 1dfd236f15
Merge pull request #70377 from dsnopek/server-export-mk2
Add "dedicated server" export mode which can strip unneeded visual resources
2023-01-23 22:13:28 +01:00
David Snopek 74458b6e9b Add "dedicated server" export mode which can strip unneeded visual resources 2023-01-23 13:24:54 -06:00
Rémi Verschelde 11e2278844
Merge pull request #57606 from SaracenOne/update_on_reimport
Update instances of scenes which have been reimported.
2023-01-23 15:35:44 +01:00
Rémi Verschelde 1891d9fdf1
Merge pull request #71801 from akien-mga/codespell-en-GB-to-en-US
Convert en_GB spelling to en_US with codespell
2023-01-23 11:08:55 +01:00
Rémi Verschelde 809bd94394
Merge pull request #71906 from reduz/simplify-polyphonic-stream-player
Simplify AudioStreamPolyphonic
2023-01-23 11:07:32 +01:00
Rémi Verschelde 5b1df48c6c
Convert en_GB spelling to en_US with codespell 2023-01-23 11:02:20 +01:00
Juan Linietsky 4383b5ab1e Simplify AudioStreamPolyphonic
* Make AudioStreamPolyphonic not requre a polling thread (simpler, faster)
* Improve error reporting in AudioStreamPlayer*::get_stream_playback() error reporting to improve usability.
2023-01-23 10:47:01 +01:00
Rémi Verschelde 19b030263d
Merge pull request #71778 from vortexofdoom/fix-dof-blur-transition
allowed negative DoF blur transition in the editor
2023-01-23 10:24:24 +01:00
Rémi Verschelde 69a981fc62
Merge pull request #71214 from SekoiaTree/remove_mesh_surface_compat
Remove compatibility code for Mesh surfaces
2023-01-23 10:24:19 +01:00
bitsawer 81f9529a7e Fix shader include dependency handling 2023-01-22 22:19:52 +02:00
Rémi Verschelde 5068d82374
Merge pull request #71686 from YuriSizov/stylebox-min-size-but-better
Clean-up, harmonize, and improve StyleBox API
2023-01-22 17:53:04 +01:00
Rémi Verschelde 5432bad36f
Merge pull request #69619 from m4gr3d/address_android_editor_crashes_main
Address Android editor crashes
2023-01-22 17:52:31 +01:00
Juan Linietsky f18d408c08 Add AudioStreamPolyphonic to make it easier to play polyphonic sound from code
* This new audio stream allows to play multiple sounds and control them over time from code.
* It greatly simplifies tasks such as generative music (music generated from code) or audio.

This new type of stream was added with the goal of fixing audio blending in AnimationPlayer and AnimationTree, but can be used by others for their regular audio needs.

Does not fix anything currently, but should help implement #69758 properly.

Some demo code of how to use this:

```GDScript

var player = $SomeNode as AudioStreamPlayer
player.stream = AudioStreamPolyphonic.new()
var playback = player.get_stream_playback() as AudioStreamPlaybackPolyphonic
var id = playback.play_stream(preload("res://Clip1.ogg"))
await get_tree().create_timer(1).timeout
playback.set_stream_volume(id,-12) # Set volume to half after one second
await get_tree().create_timer(2).timeout
var id2 = playback.play_stream(preload("res://Clip2.ogg")) # 2 seconds later, start another clip
await get_tree().create_timer(1).timeout
playback.stop_stream(id) # 1 second later, kill the first clip
playback.set_stream_pitch_scale(id2,1.5) # Make the second clip go 50% faster

```
2023-01-22 16:22:45 +01:00
Rindbee 64edc7a5c2 Fix internal editor not updating when using external editor via LSP 2023-01-22 18:27:22 +08:00
Rindbee 41ac40c44c Fix the uid field of the tscn/res file is lost when the external dependency is updated 2023-01-22 09:53:46 +08:00
kobewi 615c517034 Use range iterators in LocalVector loops 2023-01-21 18:44:42 +01:00
Rémi Verschelde ebd0b40f6e
Merge pull request #71687 from reduz/support-script-class-name-in-efs
Support script global resource name in EditorFileSystem
2023-01-21 16:54:23 +01:00
Rémi Verschelde 145ab2e1fd
Merge pull request #71797 from reduz/cleanup-shader-parameter-remap
Clean up shader parameter remap
2023-01-21 16:53:29 +01:00
Juan Linietsky dddd8d43f6 Support script global resource name in EditorFileSystem
* Works for binary and text files.
* Makes EditorQuickOpen work with custom resources again.
* Information is cached and easily accessible.

Properly fixes #66179. Supersedes #66215 and supersedes #62417

**WARNING**: This required breaking backwards binary compatibility (.res and .scn files). Files saved after this PR is merged will no longer open in any earlier versions of Godot.
2023-01-21 14:19:27 +01:00
Juan Linietsky 7dbc458bb4 Clean up shader parameter remap
This PR is a follow up to #64092, which fixed important issues but it was implemented in an overly complex and inefficient way (because it forced the default code path to always go through string operations).
This cleans up all the shader parameter code.

This fixes #54336. Also fixes #56219 because, as the new code never queries the RenderingServer on load, potential deadlocks are avoided.

**NOTE**: materials saved between #62972 and #64092 will no longer work and will need to be resaved in an earlier version.
2023-01-21 12:56:28 +01:00
Rémi Verschelde 2ec0da1a75
Merge pull request #63667 from AntonioDell/bugfix/63549
fix(editor): Remove some MeshLibrary editor updates
2023-01-21 11:32:28 +01:00
Daniel Larson d7b61158fa allowed negative DoF blur transition in the editor 2023-01-20 20:39:49 -06:00
Yuri Rubinsky f9b5e9da37 Fix code generation for ProximityRange node in visual shader 2023-01-20 22:31:37 +03:00
Yuri Rubinsky 7cbe2b939e Some refactoring for visual shader texture functions 2023-01-20 12:54:20 +03:00
Rémi Verschelde fc5fafbb32
Merge pull request #70602 from Calinou/environment-no-sky-hide-ambient-light-properties
Hide Ambient Light properties in Environment inspector depending on mode
2023-01-19 21:53:02 +01:00
Rémi Verschelde 65883cc73b
Merge pull request #71598 from bruvzg/gdscript_bidi_override
Implement BiDi override mode for GDScript source.
2023-01-19 19:33:18 +01:00
Rémi Verschelde 4ca6a9809d
Merge pull request #44596 from KoBeWi/🧹🧹🧹
Cleanup unused engine code v2
2023-01-19 19:32:51 +01:00
Rémi Verschelde 8b92316368
Merge pull request #71565 from RedworkDE/doc-arraymesh-add-surface
Fix LOD sort order; checks in add_surface; and document all parameters of `ArrayMesh::add_surface_from_arrays`
2023-01-19 19:32:37 +01:00
Yuri Sizov 752402cf35 Clean-up, harmonize, and improve StyleBox API
- Make all margin properties follow the same naming convention (their getter and setter too).
- Remove a virtual counterpart of `get_style_margin` from API.
- Allow to override `get_minimum_size` from scripting and remove `get_center_size`.
2023-01-19 20:02:21 +03:00
kobewi c0083e431b Cleanup unused engine code v2 2023-01-19 13:02:18 +01:00
Life4gal d3612e039a
Fix using Resource objects as keys in the `tres` format
Fixes #57506.
2023-01-19 12:19:06 +01:00
RedworkDE be4eb3bbdd Fix LOD sort order; checks in add_surface; and document all parameters of `ArrayMesh::add_surface_from_arrays`
Also clarify some related documentation and expose the misssing `ArrayFormat::ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY`
2023-01-19 10:30:25 +01:00
clayjohn faea9f5c10 Remove SCREEN_TEXTURE, DEPTH_TEXTURE, and NORMAL_ROUGHNESS_TEXTURE
in favour of texture hints
2023-01-18 19:52:47 -08:00
bruvzg 5361ec9f43
Implement BiDi override mode for GDScript source. 2023-01-18 19:22:20 +02:00
Rémi Verschelde 63dfdf4f89
Merge pull request #71529 from clayjohn/IM-oct
Update ImmediateMesh to use octohedral encoded normals
2023-01-17 10:56:07 +01:00
Nong Van Tinh d6b923ae05 Fixes incorrect caption for TextureParameterTriplanar 2023-01-17 12:10:01 +07:00
clayjohn 267db8a504 Update ImmediateMesh to use octohedral encoded normals 2023-01-16 14:14:37 -08:00
SaracenOne 4628736894 Update instances of scenes which have been reimported. 2023-01-16 13:46:33 -08:00
Rémi Verschelde 7c00fdcf5d
Merge pull request #71507 from groud/fix_add_source_source_id
Fix TileDate::add_source accepting invalid ID values
2023-01-16 12:49:32 +01:00
Gilles Roudière 0dbcf8f735 Fixes TileDate::add_source accepting invalid ID values 2023-01-16 12:14:40 +01:00
Danil Alexeev a8cbb6245b
Fix scaling issue in `draw_line` and similar methods 2023-01-16 12:49:58 +03:00
Lyuma fd25bb50ab Remove SkeletonModificationStack3D, and Skeleton3D api cleanup
Removes all 3D modification resources. SkeletonIK3D is a node and still supported.
Remove deprecated Skeleton3D functionality for 4.0, so we can add it back in 4.x.
Remove local_pose_override feature from Skeleton3D and BoneAttachment3D.
Expose Skeleton3D::get_version() so IK scripts/extensions can cache bones.

Note: This change only affects 3D. SkeletonModification2D will work as before.
2023-01-12 12:04:53 -08:00
Yuri Rubinsky 5b627dec72
Merge pull request #71123 from Chaosus/vs_particle_randomness 2023-01-12 16:29:27 +03:00
SekoiaTree 05aaae747b Remove compatibility code for Mesh surfaces 2023-01-11 13:02:08 +01:00
Juan Linietsky eb3fa8eaa4 Text resource loader fixes
* Moved the order of progress update to after the actual resource loading to give better % numbers.
* Fix a bug introduced by #67714, which broke cache ignoring.
2023-01-10 18:59:55 +01:00
Rémi Verschelde 91713ced81
Merge pull request #70716 from Calinou/particles-tweak-animation-offset-property-hint
Tweak particles animation offset property hint to allow more precise values
2023-01-10 11:01:14 +01:00
Juan Linietsky 07a964fce3 Ability to change a resource UID from API
* Works for text, binary and imported resources
* Allows better clean up of duplicate files.

TODO (future PRs):

* Use this API for assigning new UIDs to copied files.
* Use this API for UID conflict on FS scanning (if more than one file has the same UID, the newer one(s) should get assigned a different UID).
2023-01-09 18:52:00 +01:00
Yuri Rubinsky 87eafe48b8 Add few improvements for `VisualShaderNodeParticleRandomness` 2023-01-09 20:33:45 +03:00
Rémi Verschelde 378d589e2d
Merge pull request #71037 from reduz/array-format-bitfield
Use BitField<> hint for Mesh.ArrayFormat and Control.SizeFlags
2023-01-08 22:51:03 +01:00
Juan Linietsky 47592927b3 Use BitField<> hint for ArrayFormat
This was missing in the conversion of bitflags to BitField<>.
2023-01-08 18:47:48 +01:00