Commit Graph

14443 Commits

Author SHA1 Message Date
Adam Scott fd3666298c
Add create folder icon 2024-02-26 09:04:24 -05:00
Pedro J. Estébanez 5e144022e7 Enhance cache modes in resource loading
- Unify documentation, hoping to clear misconcepctions about about propagation of the cache mode across dependant loads.
- Clarify in docs that `CACHE_MODE_REPLACE` now also works on the main resource (from #87008).
- Add two recursive modes, counterparts of `CACHE_MODE_REPLACE` and `CACHE_MODE_IGNORE`, since it seems some need them (see #59669, #82830).
- Let resources, even loaded with one of the ignore-cache modes, get a path, which is useful for tools.
2024-02-26 14:59:04 +01:00
Aaron Franke c399424db9
Move 3D-only resources to their own folder 2024-02-26 05:23:04 -06:00
Aaron Franke 1cb531ddb6
Move 2D-only resources to their own folder 2024-02-26 05:22:45 -06:00
Rémi Verschelde 785c69d5e2
Merge pull request #88791 from MajorMcDoom/add-bone-index
Make `Skeleton3D::add_bone` return the new bone index
2024-02-26 10:49:15 +01:00
Rémi Verschelde 10694ea027
Merge pull request #88755 from stoofin/debug-draw-enum-names
Add all `Viewport.debug_draw` enum options to dropdown
2024-02-26 10:49:12 +01:00
Rémi Verschelde 7e567c4777
Merge pull request #88615 from Rindbee/add-h_separation-between-icons-in-CheckButton-and-CheckBox
Add a `h_separation` between icons in `CheckButton`/`CheckBox`
2024-02-26 10:48:54 +01:00
Zi Ye 995bc8d049 Make Skeleton3D::add_bone return the new bone index right away, instead of requiring an additional call to get_bone_count. 2024-02-25 05:24:48 -06:00
Rémi Verschelde 81f3d43cc1
Merge pull request #88785 from KoBeWi/list_cringe
Fix inefficient list iteration in Node
2024-02-25 11:50:16 +01:00
kobewi 75ba837612 Fix inefficient list iteration in Node 2024-02-24 23:18:44 +01:00
stoofin b6c033fc39 Add all Viewport.debug_draw enum options to dropdown 2024-02-23 23:55:01 -08:00
clayjohn f267b2aa87 Properly calculate binormal when creating SurfaceTool from arrays 2024-02-23 21:19:21 -08:00
clayjohn 781cd27fe4 Avoid singularity when generated tangents and validate that tangents are good enough when using compression 2024-02-23 16:25:26 -08:00
Robert Yevdokimov 13e82094ee Remove word duplicates in comments and strings, and fix casing and punctuation 2024-02-23 17:28:28 -05:00
K. S. Ernest (iFire) Lee 04d43947bf
Add ufbx for FBX importing
This update introduces a new import method for FBX files using ufbx. If the fbx2gltf import fails, it will use the most recently cached scene from the ufbx import. The process is sped up by introducing threads to load the ufbx portion.

Key changes include:

- Support for importing geometry helper nodes in FBX files.
- Addition of cameras and lights with updated names.
- Removal of the fbx importer manager.
- Introduction of ModelDocument3D and updates to its methods.
- Changes to FBX import options and visibility.
- Updating the documentation and handling some errors.
- Store the original non-unique node, mesh and animation names in FBX and glTF.

Co-Authored-By: bqqbarbhg <bqqbarbhg@gmail.com>
2024-02-23 22:33:04 +01:00
Rémi Verschelde 080f20124a
Merge pull request #88704 from AThousandShips/no_3d_fix_2
Fix some additional errors with 3D disabled
2024-02-23 22:19:15 +01:00
Rémi Verschelde 0d83267923
Merge pull request #88639 from dsnopek/xrserver-hand-tracker
Provide generic interface for XR hand tracking
2024-02-23 22:19:05 +01:00
A Thousand Ships 3a707b1f54
Fix some additional errors with 3D disabled
* Disabled 2D navigation tests as they do not work
* Disabled tests for primitive meshes
* Unbound some `Mesh` methods that rely on 3D resources
* Unexposed `World3D` as it depends on physics (and isn't useful)
* Unexposed some `Viewport` vrs related properties that had unexposed
  methods
2024-02-23 20:58:56 +01:00
David Snopek 2184fa9698 Provide generic interface for XR hand tracking 2024-02-23 12:20:22 -06:00
Mounir Tohami 7884d63281 Fix PopupMenu doesn't respect it's ScrollContainer's margins 2024-02-23 15:51:47 +02:00
Rémi Verschelde 87d40ba743
Merge pull request #88701 from smix8/bake_rect_debug
Add debug visual for NavigationRegion2D bake rect
2024-02-23 13:14:05 +01:00
smix8 1cf407e7c9 Add debug visual for NavigationRegion2D bake rect
Adds debug visual for NavigationRegion2D bake rect.
2024-02-23 11:36:49 +01:00
Rémi Verschelde 0072a0ba31
Merge pull request #88684 from clayjohn/GLES3-visibility-notifier
Implement VisibilityNotifier3D in the compatibility backend
2024-02-23 11:29:50 +01:00
Rémi Verschelde 12817f2993
Merge pull request #87025 from bruvzg/button_wrap
[Button] Add autowrap feature.
2024-02-23 11:29:32 +01:00
Rémi Verschelde 42a15bcc49
Merge pull request #85477 from KoBeWi/submenus_that_shall_not_be_named
Add methods to add submenus without using names
2024-02-23 11:29:28 +01:00
Rémi Verschelde 3ce9ae71fc
Merge pull request #84906 from /fix-some-defvals 2024-02-23 11:29:22 +01:00
Raul Santos 5ba92e5a57
Fix some DEFVALs to use the right type
- Use `StringName()` in DEFVAL for StringNames.
- Use `Variant()` in DEFVAL for Variants.
2024-02-23 01:50:18 +01:00
Rémi Verschelde 213c835cde
Merge pull request #85017 from Geometror/vs-redesign
Redesign the graph editor for visual shaders
2024-02-22 23:34:19 +01:00
clayjohn 3c2f30ed23 Implement VisibilityNotifier3D in the compatibility backend 2024-02-22 12:35:24 -08:00
Hendrik Brucker 02a33b67a8 Redesign the graph editor for visual shaders 2024-02-22 20:40:09 +01:00
Rémi Verschelde 4b543ddbf8
Merge pull request #88668 from AThousandShips/no_3d_fix
[Physics] Fix exporting with 3D disabled
2024-02-22 16:39:47 +01:00
Rémi Verschelde c17f3d7c05
Merge pull request #88665 from KoBeWi/nice_help_bro
Fix implementation of `property_can_revert()` in PropertyListHelper
2024-02-22 16:39:44 +01:00
A Thousand Ships f06222e487
[Physics] Fix export with 3D disabled 2024-02-22 16:23:48 +01:00
kobewi aeec3c1309 Add methods to add submenus without using names 2024-02-22 15:13:53 +01:00
kobewi 5473c7e222 Fix implementation of property_can_revert() in PropertyListHelper 2024-02-22 15:05:19 +01:00
Rémi Verschelde 9c626b6236
Merge pull request #88661 from TokageItLab/fix-dominant-conv
Force non-numeric ValueTrack to use Discrete with Dominant
2024-02-22 14:39:21 +01:00
Rémi Verschelde de272fffe9
Merge pull request #88629 from groud/fix_runtime_update_mem_leak
Fix a memory leak with TileMap runtime updates
2024-02-22 14:39:14 +01:00
Rémi Verschelde a246a4b523
Merge pull request #87967 from jsjtxietian/set_item_submenu
Fix `set_item_submenu` infinite recursion crash
2024-02-22 14:39:06 +01:00
Rémi Verschelde 150f002092
Merge pull request #82984 from smix8/revert_blendshapes_4.x
Show revert button for MeshInstance3D blendshape values
2024-02-22 14:39:02 +01:00
Silc Lizard (Tokage) Renew 8423574a24 Force non-numeric ValueTrack use Discrete with Dominant 2024-02-22 21:43:35 +09:00
Rémi Verschelde 5ce436f624
Merge pull request #88643 from YeldhamDev/too_bad
Revert "Fix `NOTIFICATION_WM_SIZE_CHANGED` firing if the size hasn't changed"
2024-02-22 11:23:37 +01:00
Rémi Verschelde 0a3f162f17
Merge pull request #88494 from AThousandShips/tab_fix
Fix error spam when adding tabs to `TabBar` without deselect
2024-02-22 11:23:15 +01:00
Rémi Verschelde efa4d0aabf
Merge pull request #86321 from jsjtxietian/fix-blendnode-crash
Fix `blend_node` crash with invalid AnimationNode reference
2024-02-22 11:22:56 +01:00
bruvzg 00480fc818
[Button] Add autowrap feature. 2024-02-22 12:11:58 +02:00
jsjtxietian 65c8af53a1 Fix blend_node crash with invalid p_node 2024-02-22 12:56:21 +08:00
jsjtxietian 3525972bc7 Fix `set_item_submenu` infinite recursion crash 2024-02-22 12:37:50 +08:00
Michael Alexsander 584a6aeeb7
Revert "Fix `NOTIFICATION_WM_SIZE_CHANGED` firing if the size hasn't changed"
This reverts commit 957378a69e, reversing
changes made to 0d88840e81.
2024-02-21 15:37:53 -03:00
Wyxaldir 07b011aec7 Fixes #71243. Resources that have local_to_scene enabled now properly work inside arrays and dictionaries. 2024-02-21 09:35:31 -05:00
Gilles Roudière 33485e654e Fixes a memory leak with TileMap runtime updates 2024-02-21 13:18:21 +01:00
风青山 5de496d3b0
Add a `h_separation` between icons in `CheckButton`/`CheckBox`
Previously, the `h_separation` between internal elements and custom elements
was added when `text` was not empty. That is, this `h_separation` does not
exist when there is a valid custom `icon` but `text` is empty.

Now, the `h_separation` between the internal element and the custom element
is added when the internal element and any custom element exist (both width
are greater than `0`).
2024-02-21 17:53:07 +08:00
Rémi Verschelde 652438a395
Merge pull request #87360 from BastiaanOlij/gles_glow
Implement glow/bloom on compatibility renderer
2024-02-20 23:59:48 +01:00
Rémi Verschelde 292f4c7f97
Merge pull request #80214 from BastiaanOlij/rendering_effect
Implement hooks into renderer
2024-02-20 23:59:27 +01:00
A Thousand Ships a56c03d495
Fix error spam when adding tabs to `TabBar` without deselect
`current` was allowed to be `-1` when deselection was disabled, causing
errors in other methods when updating the size.
2024-02-20 23:38:20 +01:00
Rémi Verschelde 73d502fbc1
Merge pull request #88602 from puchik/remove-cpuparticle-custom-aabb-init
Remove unnecessary AABB initialization for CPUParticles
2024-02-20 19:34:57 +01:00
Rémi Verschelde 73758e093e
Merge pull request #88456 from sabslikesobs/master
Expose pixel snapping settings add pixel-art notes
2024-02-20 19:34:48 +01:00
Rémi Verschelde 4d6d2d1f8b
Merge pull request #87095 from TML233/expose_get_canvas_layer
Add `CanvasItem::get_canvas_layer_node()`
2024-02-20 19:34:44 +01:00
Rémi Verschelde 6037500219
Merge pull request #69032 from KoBeWi/check_every_changed_setting_in_every_group_everywhere()
Use `check_changed_settings_in_group()` everywhere
2024-02-20 19:34:30 +01:00
Arman Elgudzhyan c41725c9c6 Removed unnecessary AABB initialization for CPUParticles
Setting an AABB manually for CPUParticles unnecessarily registers as a custom AABB and can cause issues on some platforms and hardware.
2024-02-20 09:48:18 -08:00
TML 6a17f2a82d
Expose `CanvasLayer::get_canvas_layer_node()` 2024-02-20 18:14:47 +01:00
Michael Alexsander aa258c6c12
Fix `RichTextLabel`'s tag stack being overridden on translation change 2024-02-20 12:19:53 -03:00
Rémi Verschelde 8f1915eb90
Revert "Fix selecting popup menu items on mouse release" 2024-02-20 10:05:41 +01:00
kobewi a031911c82 Use check_changed_settings_in_group() everywhere 2024-02-19 21:34:45 +01:00
Rémi Verschelde fb10e67fef
Merge pull request #88557 from akien-mga/fix-animation-mixer-resolving-tracks
Fix AnimationMixer breaking animations with redundant check
2024-02-19 17:06:57 +01:00
Rémi Verschelde 56134e99da
Merge pull request #87830 from KoBeWi/internalization_aka_i15n
Fix wrong process method in AudioStreamPlayer
2024-02-19 17:06:32 +01:00
Travis Lange ae97cf2ff0
Fix AnimationMixer breaking animations with redundant check
Also change `Node::get_node_and_resource` to prevent it from printing an
error from `Node::get_node`, and just returns nullptr. This is what the
redundant check was trying to prevent.

Fixes #88428.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-02-19 16:50:19 +01:00
Rémi Verschelde a92921ae49
Merge pull request #88479 from passivestar/lineedit-delete-with-selection
Fix `LineEdit` delete all the way to the left/right when something is selected
2024-02-19 10:43:58 +01:00
Rémi Verschelde aa7ac130c0
Merge pull request #88312 from Malcolmnixon/face-tracker-provider
Add XR Face Tracking support
2024-02-19 10:43:45 +01:00
Rémi Verschelde 7d4e24dc78
Merge pull request #88009 from nikitalita/Skeleton3D-missing-pose
Fix converted 3.x `Skeleton3D` missing pose
2024-02-19 10:43:41 +01:00
Silc Lizard (Tokage) Renew 772a753960 Fix some animation state corruptions on activate and reset on save 2024-02-19 13:04:22 +09:00
Bastiaan Olij aa260e5f3d Implement glow/bloom on compatibility renderer 2024-02-19 13:29:43 +11:00
Rémi Verschelde da26ef2d3e
Merge pull request #88492 from TokageItLab/dominant-anim
Make `ANIMATION_CALLBACK_MODE_DISCRETE_DOMINANT` be default for AnimationPlayer
2024-02-19 01:25:10 +01:00
Rémi Verschelde ab4c5a594a
Merge pull request #88521 from YeldhamDev/atr_regression
Fix regression in auto translation overhaul
2024-02-19 00:09:22 +01:00
Rémi Verschelde af17187920
Merge pull request #88488 from TokageItLab/bezier-vs-value
Fix some conditions for BezierTrack to distinguish between ValueTrack
2024-02-19 00:08:51 +01:00
Rémi Verschelde 3b649d208f
Merge pull request #88477 from jsjtxietian/tab-down
Tweak property order in the inspector for TabBar
2024-02-19 00:08:44 +01:00
Rémi Verschelde 0c4d8d7a6c
Merge pull request #88473 from Sauermann/fix-mouse-event-global-position
Fix global position for `InputEventMouse` in `viewport::push_input`
2024-02-19 00:08:37 +01:00
Rémi Verschelde 0f0515a75f
Merge pull request #87743 from WhalesState/camera2d
Fix `Camera2D` is enabled when dragging scene files to the `CanvasItemEditor`
2024-02-19 00:07:57 +01:00
Rémi Verschelde dfcecb77bd
Merge pull request #79617 from sepTN/add-screensize-check-popup
Add size check to prevent popup bigger than the screen itself
2024-02-19 00:07:01 +01:00
Michael Alexsander b56774b5bf
Fix regression in auto translation overhaul 2024-02-18 19:33:08 -03:00
Mounir Tohami 451b198c40 Fix dragging scene files to the `CanvasItemEditor` 2024-02-18 21:55:14 +02:00
Septian 34210e812a Add screen size check on `popup` 2024-02-19 00:25:02 +07:00
Silc Lizard (Tokage) Renew 3d6d5a6a36 Make CallbackModeDiscrete.Dominant be default for AnimationPlayer 2024-02-18 20:02:20 +09:00
Bastiaan Olij 5a98845655 Implement hooks into renderer 2024-02-18 21:54:21 +11:00
Silc Lizard (Tokage) Renew c9fc29ae86 Fix some condition for BezierTrack to distinguish between ValueTrack 2024-02-18 19:42:46 +09:00
Rémi Verschelde e8755b380a
Merge pull request #84792 from scriptsengineer/distance-fog
Add optional depth fog to Environment
2024-02-18 11:23:29 +01:00
passivestar c2a4a0d4cb Fix `LineEdit` delete all the way to the left/right when something is selected 2024-02-18 11:58:37 +04:00
jsjtxietian b7028e5f94 Tweak property order in the inspector for TabBar 2024-02-18 12:54:51 +08:00
Markus Sauermann 8de39911c8 Fix global position for `InputEventMouse` in `viewport::push_input`
Global position doesn't get adjusted within `InputEventMouse::xformed_by()`.
2024-02-18 03:26:09 +01:00
Eidolon 08f4560e69 Add optional depth fog 2024-02-17 22:39:34 -03:00
Malcolm Nixon 7d1a1abe76 Initial XRFaceTrackingProvider and XRFaceTracker work.
Updated to XRFaceModifier3D.
2024-02-17 20:12:47 -05:00
Sabs, like Sobs 3475156ae3 Expose pixel snapping settings add pixel-art notes
This small in-engine documentation change aims to make it easier to
discover ways to handle pixel art aesthetics.

- I have moved 2D pixel snapping settings out of "Advanced." This now matches other pixel-art-friendly settings for
GUI Snapping and Default Texture filtering.
- I've added notes to the project settings and Sprite/AnimatedSprite sources to hint users towards better understanding of why pixelated sprites may not work correctly and what to do about it. This should help users make informed decisions for their needs.

Context: Proper handling of pixel art in Godot is routinely frustrating for new users: I, like others, assumed that Godot would act on pixels, not subpixels, when I was working a pixel art game. I was confused when my interpolations would appear blurry, and when pixel textures would be distorted for no apparent reason (this was because of centering).
I had naively thought that setting Linear interpolation would be the single "it's a pixel art game" toggle, but that only hid the underlying issues until later. I had no idea there was a snap-to-pixel option because it was hidden in the Advanced options, since my default assumption was that a pixel art game would want no subpixels at all.

Some references for the frustration:

- https://github.com/godotengine/godot/issues/82696
- https://www.reddit.com/r/godot/comments/fah25e/best_way_to_achieve_pixel_perfect_rendering/
- https://shaggydev.com/2021/09/21/project-setup-for-pixel-art/
2024-02-17 23:40:53 +00:00
Rémi Verschelde 92fcbe2f5c
Revert "Allow configuration warnings to refer to a property"
This reverts commit bf37a9bac6.
2024-02-17 19:04:18 +01:00
Rémi Verschelde 21f0529aa9
Revert "Update Node::get_configuration_warnings signature"
This reverts commit d3852deaa4.
2024-02-17 19:03:21 +01:00
Rémi Verschelde 02f4a66c1f
Merge pull request #88145 from Ratamacue9112/tweak-option-button-property-order
Tweak property order in the inspector for OptionButton
2024-02-17 18:31:47 +01:00
Silc Lizard (Tokage) Renew 4659090543 Make consistent the retrieval of audio tracks 2024-02-18 00:15:33 +09:00
Rémi Verschelde 2c5fa95aea
Merge pull request #87530 from YeldhamDev/atr_inheritance
Rework the auto translation system
2024-02-17 15:54:31 +01:00
Ratamacue9112 45b9cbd904 Tweak property order in the inspector for OptionButton 2024-02-17 11:03:16 +00:00
Silc Lizard (Tokage) Renew bc20fdf16f Add CallbackModeDiscrete to AnimationMixer 2024-02-17 18:25:56 +09:00
Rémi Verschelde cde454434f
Merge pull request #88403 from Mickeon/VisibleOnScreenNotifier-is-differently-abled
Allow VisibleOnScreenNotifier2D/3D to have empty `enable_node_path`
2024-02-17 00:27:17 +01:00
Rémi Verschelde d094b86d20
Merge pull request #88402 from mihe/double-soft-body
Fix `SoftBody3D` for double-precision builds
2024-02-17 00:27:11 +01:00
Rémi Verschelde 22ebfb72e2
Merge pull request #88378 from KoBeWi/internal_internal_children
Make TileMapLayers internal
2024-02-17 00:24:02 +01:00