Commit Graph

545 Commits

Author SHA1 Message Date
Yaohua Xiong ed3d311687 Add antialias support for CanvasItem draw primitives
including
- rect, circle; both filled and unfilled.
- polyline, multiline
2024-05-13 19:03:31 +08:00
Mitten Orvan 829c33aed1
Create a GDB pretty printing file for String, StringName, and Vector
GDB supports custom pretty-printers implemented in Python.
When debugging Godot, checking the values of Strings and StringNames
in the debugger was very inconvenient as the data is fairly deep
in the structure. This makes the values immediately visible.

The custom pretty printer can be taken into use manually by calling
`source misc/scripts/godot_gdb_pretty_print.py` in the GDB console.
In VS code, it can be activated by default by adding the source
command to the `setupCommands` of the configuration in launch.json.

Like this:
```json
// launch.json
{
    "configurations": [
        {
            "name": "C/C++: debug,
            "type": "cppdbg",
	    ...
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "Load custom pretty-printers for Godot types.",
                    "text": "source ${workspaceRoot}/misc/scripts/godot_gdb_pretty_print.py"
                }
            ],
            "miDebuggerPath": "gdb"
        }
    ],
    "version": "2.0.0"
}
```

Extended the pretty-printer python script to support Vectors.
The printer needs to be uncomfortably aware of CowData
implementation details, but I don't think there is any
way around that.
2024-05-11 12:33:35 +02:00
Rémi Verschelde 4778b24366
Merge pull request #91597 from Repiteo/ci/pre-commit-handle-everything
CI: Overhaul static checks to use `pre-commit`
2024-05-08 18:22:59 +02:00
Thaddeus Crews df969ff742
CI: Overhaul static checks to use `pre-commit` 2024-05-08 10:30:24 -05:00
Rémi Verschelde 7d03b1de0b
Style: Trim trailing whitespace and ensure newline at EOF
Found by apply the file_format checks again via #91597.
2024-05-08 10:12:46 +02:00
Rémi Verschelde 4b070e8031
Fix various typos with codespell
Using 2.2.7.dev217+g10c2abcf.

Had to add `colour` to the ignore list as we used it as an alias/keyword for the
documentation of color-related APIs.
Also ignore recommendations to change `thirdparty` to either `third-party` or
`third party`, which are correct but we use the former fairly consistently.
2024-05-07 10:08:42 +02:00
Radiant 789c6ebdfd Implement `amplitude` to Input.vibrate_handheld
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: m4gr3d <m4gr3d@users.noreply.github.com>
2024-05-02 19:09:42 +03:00
bruvzg 360d365b33
[RTL] Adds extra argument to `remove_paragraph` to skip cache invalidation and a method for manual cache invalidation. 2024-05-02 14:03:21 +03:00
Yaohua Xiong 1f2aa17d14
Extend `CanvasItem::draw_circle()` with filled, width, and antialiased options
Make it possible to draw unfilled circle, like draw_rect(). Antialising is only implemented for unfilled version.
2024-05-02 10:42:24 +02:00
Rémi Verschelde b1da4b2a84
Merge pull request #91128 from patwork/splash-image-in-web-export
Splash image support and new progress bar for HTML5 Web Export
2024-04-30 17:03:21 +02:00
Rémi Verschelde e19b808a7a
Merge pull request #86978 from kitbdev/multicaret-overhaul
Overhaul multicaret editing and selection in TextEdit
2024-04-30 17:03:04 +02:00
Rémi Verschelde bdeed8e750
Merge pull request #90375 from bruvzg/ios_privacy
[iOS export] Add support for privacy manifest configuration.
2024-04-29 10:09:38 +02:00
kit 773a473807 Overhaul multiple caret editing in TextEdit.
Use a multicaret edit to delay merging overlapping carets until the end.
2024-04-26 14:26:10 -04:00
patwork 7c8a4a9dab Added splash image support and new progress bar for web export 2024-04-25 11:12:55 +02:00
bruvzg a116801ec7
Improve TextEdit/LineEdit word selection. 2024-04-22 14:02:07 +03:00
Rémi Verschelde bffaa98b13
Merge pull request #90645 from Malcolmnixon/unified-xr-trackers
Rework XR Trackers to have a common ancestor
2024-04-22 12:52:07 +02:00
Malcolm Nixon 823ae7b3fa Rework XR Trackers to have a common ancestor. Allow creation of XRNode3D to drive node positions and visibility. 2024-04-18 20:04:01 -04:00
Rémi Verschelde 2d884ba70c
Merge pull request #90797 from Geometror/vsnode-comment-compat
[Compatibility] Add stub for VisualShaderNodeComment
2024-04-18 12:24:50 +02:00
Lyuma cb7ef2b8de Add SkeletonIK3D get/set_interpolation compat from #87888 2024-04-18 01:49:12 -07:00
Hendrik Brucker 735c45dc8e [Compatibility] Add stub for VisualShaderNodeComment 2024-04-18 02:39:29 +02:00
Rémi Verschelde 36bdab4ddd
Merge pull request #90759 from dsnopek/openxr-hand-revert
Revert `OpenXRHand` to its pre-`SkeletonModifier3D` state
2024-04-17 10:59:10 +02:00
smix8 df66a55ef3 Remove experimental constrain_avoidance from NavigationRegion2D
Removes experimental constrain_avoidance feature from NavigationRegion2D.
2024-04-16 18:02:53 +02:00
David Snopek dfca388d75 Revert `OpenXRHand` to its pre-`SkeletonModifier3D` state 2024-04-16 10:36:43 -05:00
bruvzg 7446826ab9 [iOS export] Add support for privacy manifest configuration. 2024-04-16 12:10:12 +03:00
Rémi Verschelde 673e770a8d
Merge pull request #90575 from TokageItLab/boneattachment-performance
Remove `bone_pose_updated` signal and replace it with the `skeleton_updated` signal
2024-04-15 10:00:26 +02:00
Silc Lizard (Tokage) Renew 78a5ef4158 replace bone_pose_updated to skeleton_updated signal 2024-04-13 05:48:42 +09:00
ajreckof d3d4b2e25e Fix infinite while loop on empty added file. 2024-04-12 19:38:37 +02:00
Andreia Gaita 536ca28ea9 Ensure all Visual Studio files are generated with CRLF 2024-04-10 17:26:36 +02:00
ajreckof 248e5bfba2
Revert what needs to be reverted 2024-04-10 09:49:30 +08:00
Rémi Verschelde 1f71d491d0
Merge pull request #88244 from shana/vs-improve-settings
Visual Studio: Don't override user options. Add additional vs hint information
2024-04-08 11:19:58 +02:00
Silc Lizard (Tokage) Renew 04dd299cba Skeleton3D: Add SkeletonModifier / Deprecate Override / Separate PB 2024-04-05 01:28:26 +09:00
Hendrik Brucker a81561cbd9 Add GraphFrame and integrate it in VisualShader 2024-04-04 15:11:00 +02:00
Rémi Verschelde 1dacd6a527
Merge pull request #89179 from groud/expose_tile_map_layer
Expose TileMapLayer
2024-04-04 14:31:16 +02:00
ashley aa1bbe1542 add partial path return option for astar
* AStar2D, AStar3D and AStarGrid2D now can return a partial path if the destination point isn't reachable but still in the map. This option is available for both get_point_path and get_id_path
2024-04-03 22:27:33 -07:00
ajreckof ae472865d0 fix node duplication in update after external changes. 2024-04-03 12:19:38 +02:00
Gilles Roudière 3cd4b2859c Expose TileMapLayer 2024-04-03 11:02:34 +02:00
A Thousand Ships 4933fa8bf5
[Buildsystem] Fix encoding when reading files 2024-03-24 18:02:56 +01:00
MewPurPur 35a569478f Follow up to blue robot icons optimization 2024-03-20 15:28:57 +02:00
Rémi Verschelde e520359147
Pre-commit: Fix `copyright_headers.py` to run on all relevant files
It was only running on the first file passed by pre-commit, instead of all.
Fixes compatibility with Windows paths to get the basename.
2024-03-15 15:32:50 +01:00
kobewi a7b6bcb988 Fix some AcceptDialog argument types 2024-03-12 14:33:43 +01:00
Thaddeus Crews fb299d0fb1
SCons: Ensure `with` statement where applicable 2024-03-10 12:57:57 -05:00
Thaddeus Crews d9fa40f2df
Enforce `\n` eol for Python writes
• Ensure utf-8 encoding if previously unspecified
2024-03-09 14:29:24 -06:00
Hugo Locurcio 8221e7546b
Add editor shortcuts to toggle bottom panel visibility
Default shortcuts use the first or second letter of each word.

This also adds a new shortcut to toggle the last opened bottom panel.
On editor startup, this defaults to the first panel in the list
(which is the Output panel).
2024-03-05 15:53:15 +01:00
Rémi Verschelde f2045ba822
Merge pull request #88933 from raulsntos/dotnet/pre-commit
Move dotnet-format script to pre-commit
2024-03-02 10:48:25 +01:00
Raul Santos 97851f0340
Move dotnet-format script to pre-commit
Co-authored-by: Paul Joannon <437025+paulloz@users.noreply.github.com>
2024-03-02 08:25:48 +01:00
bruvzg 2a3de7adc3
[RTL] Add optional `push_meta` argument to control how meta underline is drawn. 2024-03-01 12:07:06 +02:00
Aarni Koskela 20c563de40
Replace hand-written pre-commit hooks with `pre-commit` Python tool
`pre-commit` can be installed with pip, and configured in the Godot repo with
`pre-commit install`. It can then easily be run both locally with
`pre-commit run`, and on CI, in a cross-platform way.

This makes it much easier for contributors to set up pre-commit hooks,
without having to manually copy files to their git folder.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-02-26 14:57:53 +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
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 5fd9d0891f
SCons: Add proper MinGW support to D3D12 deps install script
Fix a couple GCC warnings.
2024-02-23 22:13:22 +01:00