Commit graph

583 commits

Author SHA1 Message Date
Matias N. Goldberg
364f916f3f
Add debug utilities for Vulkan
Features:
- Debug-only tracking of objects by type. See
get_driver_allocs_by_object_type et al.
 - Debug-only Breadcrumb info for debugging GPU crashes and device lost
 - Performance report per frame from get_perf_report
- Some VMA calls had to be modified in order to insert the necessary
memory callbacks

Functionality marked as "debug-only" is only available in debug or dev
builds.

Misc fixes:
 - Early break optimization in RenderingDevice::uniform_set_create

============================

The work was performed by collaboration of TheForge and Google. I am
merely splitting it up into smaller PRs and cleaning it up.
2024-08-21 23:48:08 +02:00
Stuart Carnie
41875d8aef
macOS/iOS: Fix various warnings when targeting newer SDKs 2024-08-20 11:55:21 +02:00
Raul Santos
e47ff98451
Expose ShapeCast{2D,3D}::get_collision_result 2024-08-15 16:20:13 +02:00
David Snopek
dd78ce4217 Update GDExtension related CI after Godot 4.3-stable's release 2024-08-15 07:38:49 -05:00
Rémi Verschelde
c2a4942850
Bump version to 4.4-dev
Mr. Godot still didn't show up...
2024-08-15 11:39:34 +02:00
Rémi Verschelde
18c1c25ca0
Merge pull request #94652 from shana/fix-header-guards
Fix `header_guards.py` so it detects the copyright header properly.
2024-07-23 16:19:15 +02:00
Andreia Gaita
09f2b9513c Fix header_guards so it detects the copyright header properly.
Having hardcoded offsets is a problem if the copyright header ever changes
or when running on forks with different copyright header formats.
2024-07-23 12:19:20 +02:00
Rémi Verschelde
4e5ed0bbfb
Merge pull request #93753 from Repiteo/scons/visual-studio-fixes
SCons: Fix output with `vsproj=yes`
2024-07-22 17:30:25 +02:00
Hugo Locurcio
0445ccf428
Fix Image CowData crash when baking large lightmaps
This switches to 64-bit integers in select locations of the Image
class, so that image resolutions of 16384×16384 (used by
lightmap texture arrays) can be used properly. Values that are larger
should also work.

VRAM compression is also supported, although most VRAM-compressed
formats are limited to individual slices of 16384×16384. WebP
is limited to 16383×16383 due to format limitations.
2024-07-19 16:04:30 +02:00
Silc Lizard (Tokage) Renew
9c1f23c3db Re-add Skeleton3D::animate_physical_bones 2024-07-14 14:24:25 +09:00
Pedro J. Estébanez
ee2c1584e4 D3D12: Get rid of DXIL.dll! 2024-07-11 17:56:45 +02:00
Silc Lizard (Tokage) Renew
59667f8ea2 Fix property type of Sprite3D frame_coords to Vector2i from Vector2 2024-07-06 05:36:45 +09:00
Kristopher A
fd2e13d9b1
Remove duplicate styling from editor
The \#status-notice styling had a duplicate visibility styling.
2024-07-03 12:32:03 -04:00
Thaddeus Crews
8a24f44fe5
SCons: Fix output with vsproj=yes 2024-06-29 13:11:19 -05:00
Rémi Verschelde
b7ba0b84ff
Merge pull request #93511 from Repiteo/style/relocate-pretty-print
Style: Relocate `godot_gdb_pretty_print.py`
2024-06-25 10:02:02 +02:00
Thaddeus Crews
47babe860e
Style: Relocate godot_gdb_pretty_print.py 2024-06-23 10:54:12 -05:00
Thaddeus Crews
cc6dd8d02c
Style: Optimize .svg files with svgo 2024-06-23 08:15:19 -05:00
Thaddeus Crews
4af1068688
CI: Add svgo pre-commit hook 2024-06-23 08:14:54 -05:00
Rémi Verschelde
19bf77f666
Merge pull request #91382 from adamscott/sample-player
Add sample playback support
2024-06-19 07:59:07 +02:00
Adam Scott
52fa4f05f3
Add samples playback support 2024-06-18 11:06:31 -04:00
Thaddeus Crews
576c9e4fe8
CI: Add pre-commit hook for clang-tidy
• Set to "manual" so it isn't invoked in normal workflow
• Modernize `.clang-tidy` file
2024-06-17 11:27:18 -05:00
Rémi Verschelde
62a056aa56
Fix extension API validation warning after #92861 2024-06-11 11:23:09 +02:00
Silc Lizard (Tokage) Renew
bea47d877b Fix seeking Animation immediate after playback for Discrete track 2024-06-08 22:09:37 +09:00
Adam Scott
2c3b871b3b
Make displayed Web errors more meaningful 2024-05-30 12:38:08 -04:00
bruvzg
c8ae9e9c76
[iOS] Change default iPad landscape orientation from "left" to "right". 2024-05-29 12:47:49 +03:00
Gilles Roudière
85eac45513 Display custom data name instead of indices in TileData inspector 2024-05-25 17:21:31 +02:00
patwork
1a89ae70eb Upgrade to eslint 9 2024-05-22 11:32:25 +02:00
Jakub Marcowski
d9f8ef68df
Update pre-commit hooks configuration to use ruff instead of black 2024-05-21 18:02:29 -05:00
Thaddeus Crews
96d1e61ee6
CI: Fix incorrect executable perms 2024-05-17 10:47:40 -05:00
Rémi Verschelde
e63b5ba9e4
Merge pull request #91416 from Calinou/d3d12-sdk-update-install-script
Update dependencies in D3D12 SDK installer script
2024-05-15 13:51:31 +02:00
Rémi Verschelde
44833c7995
Merge pull request #91954 from Repiteo/scons/pyproject.toml
CI: Consolidate pysettings via `pyproject.toml`
2024-05-15 12:09:59 +02:00
Rémi Verschelde
86b72d9215
Merge pull request #91377 from bruvzg/macos_privacy
[macOS export] Add support for privacy manifest configuration.
2024-05-15 12:09:34 +02:00
Thaddeus Crews
f4e58691c2
SCons: Consolidate pysettings via pyproject.toml 2024-05-14 12:01:48 -05:00
sgilissen
666aeac0b8 Add Dutch tranlsation for Linux desktop file 2024-05-14 06:55:36 +02:00
Rémi Verschelde
13a6df24fc
Merge pull request #91852 from patwork/fix-splash-bg-color
[Web] Fix splash screen background color in HTML shell
2024-05-13 17:32:14 +02:00
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
patwork
eb488f7321 Fix splash screen background color in HTML shell 2024-05-12 01:02:14 +02: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
Hugo Locurcio
47ac22486d
Update dependencies in D3D12 SDK installer script
- Add colored console output.
2024-05-07 19:10:58 +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
bruvzg
059ddc41a0
[macOS export] Add support for privacy manifest configuration. 2024-04-30 23:31:56 +03: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