Commit Graph

11101 Commits

Author SHA1 Message Date
Stuart Carnie a7a245de92
Metal: enable for betsy and lightmapper modules
To support this, the rendering_context_driver_metal.h header was updated
to recognise when it is included in non-Objective-C source files.
2024-08-31 08:29:07 +10:00
Rémi Verschelde ace4529b16
Merge pull request #96335 from raulsntos/dotnet/export-plugin
C#: Use export platform to determine the target OS and log errors
2024-08-30 23:38:10 +02:00
Danil Alexeev 49bcdf78a7
Core: Сheck `r_error` after calling `callp()` 2024-08-30 21:09:30 +03:00
HolonProduction 171c522290 Autocompletion: reintroduce enum options on assignment 2024-08-30 13:46:48 +02:00
Raul Santos 4c14421602
C#: Use export platform to determine the target OS and log errors
- Use the export platform's `get_os_name` to determine the platform name instead of guessing from the features.
- Use the export platform's `add_message` to add error messages instead of a custom error dialog. Integrates .NET error messages with the export log dialog.
2024-08-30 12:45:24 +02:00
Rémi Verschelde 2e4c07bfe0
Merge pull request #96229 from dalexeev/gds-replace-assert-in-tests
GDScript: Replace `assert()` with `Utils.check()` in tests
2024-08-30 11:43:05 +02:00
Rémi Verschelde 69d6106d4d
Merge pull request #96293 from RedOrbweaver/fix_msbuild_logger
C#: Fix build logger unable to handle an event without an associated file
2024-08-30 09:59:51 +02:00
Rémi Verschelde 5418919c3c
Merge pull request #96240 from DeeJayLSP/mp3-data
MP3: Use heap for big struct when setting data
2024-08-30 09:59:39 +02:00
Rémi Verschelde 909629d9f9
Merge pull request #96166 from AThousandShips/more_lock_raii
Use `MutexLock` in more places
2024-08-30 09:59:19 +02:00
Rémi Verschelde 8e402bcb36
Merge pull request #95999 from DeeJayLSP/mp3-mem
MP3: Remove unnecessary memory allocation
2024-08-30 09:59:15 +02:00
Rémi Verschelde f0ee0bdd37
Merge pull request #93972 from Hilderin/fix-editor-needs-restart-after-adding-gdextensions
Fix editor needs restart after adding GDExtensions
2024-08-30 09:59:05 +02:00
rune-scape 154049ce17 StringName Dictionary keys
also added 'is_string()' method to Variant
and refactored many String type comparisons to use it instead
2024-08-29 13:39:27 -07:00
RedOrbweaver 81799b8fa3 Fix build logger unable to handle an event without an associated file 2024-08-29 20:33:47 +02:00
demolke c409e6d722 Import/export GLTF extras to node->meta
This is useful for custom tagging of objects with properties (for example in Blender) and having this available in the editor for scripting.

- Adds import logic to propagate the parsed GLTF extras all the way to the resulting Node->meta
- Adds export logic to save Godot Object meta into GLTF extras
- Supports `nodes`, `meshes` and `materials` (in GLTF sense of the words)
2024-08-29 19:17:04 +02:00
A Thousand Ships e33fdb4296
Use `MutexLock` in more places 2024-08-29 14:12:59 +02:00
Hilderin ef6f873938 Fix editor needs restart after adding GDExtensions 2024-08-29 06:15:32 -04:00
Rémi Verschelde faa3688e69
Merge pull request #96251 from aaronfranke/gltf-get-supported-ext
Add `get_supported_gltf_extensions` to GLTFDocument
2024-08-29 10:36:45 +02:00
Rémi Verschelde 80cd8f4c2d
Merge pull request #92581 from rune-scape/rune-text-srvr-fb-cacher
TextServerFallback: 2x performance improvement by removing redundant lookups
2024-08-29 10:36:26 +02:00
Rémi Verschelde 03d1f43131
Merge pull request #92575 from rune-scape/rune-text-srvr-cacher
TextServerAdvanced: 2x performance improvement by removing redundant lookups
2024-08-29 10:36:23 +02:00
Rémi Verschelde cb96fc95c3
Merge pull request #92316 from alula/msvc-clang
Add support for compiling with VS clang-cl toolset
2024-08-29 10:36:17 +02:00
Rémi Verschelde 96cbcc30e2
Merge pull request #90945 from Scony/extract-navigation-defaults
Extract navigation-related defaults to separate header
2024-08-29 10:36:14 +02:00
Aaron Franke ee5e97742a
Add get_supported_gltf_extensions to GLTFDocument 2024-08-28 17:54:45 -07:00
rune-scape 2fc5321d39 TextServerFallback: improve performance by removing redundant lookups
+ caching editor setting
+ using a faster hash method on the FontForSizeFallback cache
+ SafeFlag instead of mutex for ShapedTextDataFallback::valid bc its read Very often
2024-08-28 13:10:43 -07:00
Aina 930742f8b3 Fix missing GDScriptParser reference on completion context 2024-08-28 17:03:12 -03:00
rune-scape 4ba7738a1f TextServerAdvanced: improve performance by removing redundant lookups
+ caching editor setting
+ using a faster hash method on the FontForSizeAdvanced cache
+ SafeFlag for ShapedTextDataAdvanced::valid
2024-08-28 13:01:11 -07:00
DeeJayLSP 7e49c26729 MP3: Use heap for big struct when setting data 2024-08-28 16:47:32 -03:00
Alula 346cbc7f1f
Add support for compiling with VS clang-cl toolset 2024-08-28 13:30:44 -05:00
Rémi Verschelde 40b378e9e2
Merge pull request #96235 from bruvzg/win_open_dll
[Windows] Fix OS.open_dynamic_library
2024-08-28 19:54:51 +02:00
bruvzg d528f28275 [Windows] Fix OS.open_dynamic_library 2024-08-28 20:12:09 +03:00
Danil Alexeev c1322d41e6
GDScript: Replace `assert()` with `Utils.check()` in tests 2024-08-28 17:41:52 +03:00
Nikita\Nick ebb5a5cc3d [RegEx] Add show_error parameter to control error printing on compilation fail 2024-08-28 15:35:42 +03:00
Rémi Verschelde 4e051ff6f7
Merge pull request #78178 from dalexeev/gds-add-non-tool-extends-tool-error
GDScript: Add warning if non-`@tool` class extends `@tool` class
2024-08-28 13:14:13 +02:00
Rémi Verschelde 6eb1d3cf98
Merge pull request #94888 from rune-scape/no-const-cast-gdscript-parser
GDScriptParser: Avoid `const_cast` of `AnnotationNode`
2024-08-28 00:12:35 +02:00
Rémi Verschelde e98aaf1caa
Merge pull request #94477 from RedMser/typos-batch-1
Fix various typos
2024-08-28 00:12:12 +02:00
Rémi Verschelde 9f70823eec
Merge pull request #94012 from KoBeWi/reload_everything_to_update_one_line
Allow live reloading of built-in scripts
2024-08-28 00:11:53 +02:00
Aaron Franke 9dd71c6414
ResourceImporterScene: Replace animation bool with an import type string enum 2024-08-27 14:58:18 -07:00
Rémi Verschelde 6e3320446a
Merge pull request #92799 from BlueCube3310/image-detech-signed
Image: Add a method for detecting signed values
2024-08-27 22:27:18 +02:00
Pawel Lampe c3f1bfd5cb Extract navigation-related defaults to separate header 2024-08-27 20:12:10 +02:00
Rémi Verschelde e6f94443ba
Merge pull request #96172 from Faless/fix/tls_unsafe_pin
[mbedTLS] Fix incorrect cert pinning with `client_unsafe`
2024-08-27 17:52:44 +02:00
Rémi Verschelde 3eba191c9e
Merge pull request #96160 from HolonProduction/dict-fix
Autocompletion: Enable string literal completion in subscripts
2024-08-27 16:55:31 +02:00
Rémi Verschelde 93f241bcd2
Merge pull request #96133 from aaronfranke/gltf-imp-mesh-inst-create
GLTF: Only create MeshInstance3D when needed
2024-08-27 16:55:15 +02:00
Rémi Verschelde 9dfc41568a
Merge pull request #95984 from timothyqiu/what-identifier
Add `String.is_valid_unicode_identifier()`
2024-08-27 16:55:06 +02:00
Rémi Verschelde c2daec1769
Merge pull request #95156 from BastiaanOlij/add_openxr_debug_utils
Add support for the debug utils extension in OpenXR
2024-08-27 16:54:54 +02:00
Aaron Franke 263f089040
GLTF: Only create MeshInstance3D when needed 2024-08-27 04:23:20 -07:00
Fabio Alessandrelli ccae47ab66 [mbedTLS] Fix incorrect cert pinning with client_unsafe 2024-08-27 13:10:09 +02:00
HolonProduction c824403853 Autocompletion: enable string literal completion in subscripts 2024-08-27 13:02:09 +02:00
Danil Alexeev 2d8f6c1b1d
GDScript: Fix message when calling non-tool function in tool mode 2024-08-27 12:30:15 +03:00
BlueCube3310 76c8211653 Image: Add a method for detecting signed values 2024-08-27 09:23:17 +02:00
Haoyu Qiu 8bf4ecc026 Add `String.is_valid_unicode_identifier()`
- Adds `is_valid_unicode_identifier()`
- Adds `is_valid_ascii_identifier()`
- Deprecates `is_valid_identifier()`
- Renames `validate_identifier()` to `validate_ascii_identifier()`
2024-08-27 11:34:08 +08:00
Bastiaan Olij 08ffa5d89e Add support for the debug utils extension in OpenXR 2024-08-27 12:07:01 +10:00
Rémi Verschelde 8c0209fe33
Merge pull request #95860 from Goutte/doc-upnp-update-to-latest-gdscript
Docs: Update UPnP GDScript snippet to using `Signal.emit` syntax
2024-08-26 23:29:06 +02:00
Rémi Verschelde 4a798ad85d
Merge pull request #95749 from Mickeon/documentation-example-pruning
Remove empty `[b]Example:[/b]` lines from the class reference
2024-08-26 23:29:00 +02:00
Rémi Verschelde 056bc6f279
Merge pull request #92540 from BlueCube3310/layered-texture-info
Improve layered texture preview
2024-08-26 23:28:19 +02:00
Rémi Verschelde 86139f682e
Merge pull request #96117 from SaracenOne/silence_fbx_warning
Fix owner warning when importing FBX.
2024-08-26 22:46:05 +02:00
Rémi Verschelde 2c14f3ef95
Merge pull request #79378 from HolonProduction/autocompletion-index
Improve autocompletion for indices
2024-08-26 22:44:40 +02:00
Saracen 7050e581ff Fix owner warning when importing FBX. 2024-08-26 14:51:49 +01:00
HolonProduction ccbdb34a2a Improve autocompletion for indices 2024-08-26 14:42:22 +02:00
Rémi Verschelde 0ba0be27c7
Merge pull request #94169 from RandomShaper/wtp_rl_prize
Batch of fixes for `WorkerThreadPool` and `ResourceLoader`
2024-08-26 10:51:25 +02:00
Rémi Verschelde b4f268fae8
Merge pull request #91018 from Daylily-Zeleen/daylily-zeleen/optionally_postinitialization_for_extension_owner
Allow ClassDB to create a Object without postinitialization for GDExtension.
2024-08-26 10:51:17 +02:00
Rémi Verschelde fe15f47e22
Merge pull request #95929 from BastiaanOlij/openxr_fix_tracking_bit
OpenXR: Check correct status bit for hand tracking
2024-08-25 22:24:21 +02:00
Rémi Verschelde 887d56721d
Merge pull request #95959 from dsnopek/openxr-api-hand-tracker-crash
Fix crash when calling `OpenXRAPI::get_hand_tracker()` and hand-tracking is disabled
2024-08-25 20:18:28 +02:00
Rémi Verschelde 68d188d521
Merge pull request #95888 from clayjohn/Lightmap-SH-coefficients
Use correct lightmap coefficients to ensure that the directional lightmap mode looks correct
2024-08-25 20:18:18 +02:00
DeeJayLSP b3265497c7 MP3: Remove unnecessary memory allocation 2024-08-23 00:58:07 -03:00
David Snopek 11dd1f52ae Fix crash when calling OpenXRAPI::get_hand_tracker() and hand-tracking is disabled 2024-08-22 13:03:05 -05:00
Bastiaan Olij 1925d1e6f9 OpenXR: Check correct status bit for hand tracking 2024-08-22 11:57:56 +10:00
Goutte a014705d64 docs: update UPnP gdscript snippet to latest gdscript
This commit adds usage of the new (stringless) signal API.
2024-08-22 00:49:52 +02:00
Rémi Verschelde 568589c9d8
Merge pull request #90993 from darksylinc/matias-TheForge
Add debug utilities for Vulkan
2024-08-22 00:38:22 +02:00
Rémi Verschelde 37ae2a2900
Merge pull request #95921 from akien-mga/scons-validate-opt-in-drivers
SCons: Better validation for platform-specific opt-in drivers
2024-08-22 00:10:56 +02:00
Rémi Verschelde 39b77ea04e
Merge pull request #95790 from aaronfranke/rect-aabb-support
Simplify Rect2/AABB `get_support` function
2024-08-22 00:10:39 +02:00
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
Rémi Verschelde 6e9bcc0f18
SCons: Better validation for platform-specific opt-in drivers
This replaces cryptic compilation errors with a clear error message
and early build termination.
2024-08-21 22:53:34 +02:00
clayjohn f4ccba7508 Use correct lightmap coefficients to ensure that the directional lightmap mode looks correct
Also remove the metallic option from directional lightmap as it is guaranteed to return negative numbers in many cases
2024-08-21 10:24:32 -07:00
Pedro J. Estébanez f4d76853b9 WorkerThreadPool (plus friends): Overhaul unlock allowance zones
This fixes a rare but possible deadlock, maybe due to undefined behavior. The new implementation is safer, at the cost of some added boilerplate.
2024-08-21 12:22:52 +02:00
Rémi Verschelde 3b3d6226c5
Merge pull request #95828 from clayjohn/Lightmapper-AA-direct-light
Antialias direct light samples in LightmapperRD
2024-08-21 07:23:05 +02:00
Rémi Verschelde 4b8946102b
Merge pull request #91535 from BlueCube3310/betsy-bc6h
Add Betsy to speed up BC6 compression
2024-08-21 06:38:03 +02:00
Daylily-Zeleen 3d575801ce Allow ClassDB to create a Object without postinitialization for GDExtension. 2024-08-20 20:19:02 +08:00
Stuart Carnie 2d0165574d
Add Metal support for macOS (arm64) and iOS 2024-08-20 12:11:06 +02:00
Stuart Carnie 41875d8aef
macOS/iOS: Fix various warnings when targeting newer SDKs 2024-08-20 11:55:21 +02:00
Rémi Verschelde d9e458515b
Merge pull request #91750 from BastiaanOlij/openxr_visibility_mask
OpenXR: Add support for visibility mask
2024-08-20 11:03:54 +02:00
Rémi Verschelde 73d42411f0
Merge pull request #95808 from paulloz/bugfix/dotnet-globalclass-icon-relative-paths
Fix relative paths for global class icons in C#
2024-08-20 10:02:47 +02:00
Rémi Verschelde f45421204c
Merge pull request #95764 from passivestar/gdscript-syntax-highlighter
Expose GDScript syntax highlighter to editor plugins
2024-08-20 10:02:35 +02:00
Rémi Verschelde c359a8e9ca
Merge pull request #95757 from BlueCube3310/cvtt-float
CVTT: Include float formats for hdr compression
2024-08-20 10:02:23 +02:00
Rémi Verschelde 65c6897e55
Merge pull request #95269 from raulsntos/dotnet/determinant
C#: Expose `Transform2D.Determinant()`
2024-08-20 10:02:07 +02:00
Rémi Verschelde a700b2a4a2
Merge pull request #95153 from BastiaanOlij/improve_hand_tracking_settings
Change hand tracking project settings and finetune `show_when_tracked`
2024-08-20 10:02:01 +02:00
Rémi Verschelde 58505b0bce
Merge pull request #94082 from HolonProduction/completion-force
Autocompletion: Rework argument options string literal completion
2024-08-20 10:01:52 +02:00
Aaron Franke 7db24a9ad5
Simplify and fix Rect2/AABB get_support function 2024-08-19 23:55:31 -07:00
Bastiaan Olij a8c5117777 Change hand tracking project settings and finetune show_when_tracked 2024-08-20 11:12:52 +10:00
clayjohn 1521e49c23 Antialias direct light samples in LightmapperRD
Additionally use Vogel disk to enhance soft shadow quality.
2024-08-19 17:54:55 -07:00
Bastiaan Olij d9ab2c3195 OpenXR: Add support for visibility mask 2024-08-20 10:47:17 +10:00
Paul Joannon 3c0eaec39f
Fix relative paths for global class icons in C# 2024-08-19 18:09:58 +02:00
Rémi Verschelde ce1ba7328f
Merge pull request #94934 from Hilderin/fix-no-validation-blender-path-on-import
Fix no validation on Blender path on import
2024-08-19 16:05:26 +02:00
Rémi Verschelde 0274508647
Merge pull request #93498 from smix8/connection_relocation
Move NavRegion connections to NavMap
2024-08-19 16:05:05 +02:00
Rémi Verschelde b39df869c7
Merge pull request #93252 from smix8/csg_bake
Add CSG options to bake to static mesh and collision shape
2024-08-19 16:04:59 +02:00
Rémi Verschelde da57bab169
Merge pull request #92560 from smix8/navmesh2d_bake_partition
Add triangulation partition option to 2D navigation mesh baking
2024-08-19 16:04:49 +02:00
Gustavo Jaruga Cruz 4fa6287de1 Fix interactive audio transitions fade in for clips with auto_advance 2024-08-19 10:54:15 -03:00
passivestar 3fe644de86 Expose GDScript syntax highlighter to editor plugins 2024-08-19 16:36:55 +04:00
Rémi Verschelde 745cc6e438
Merge pull request #95780 from Mickeon/documentation-gdscript-some-invalid-code
Fix some invalid code in GDScript class reference
2024-08-19 14:34:30 +02:00
Rémi Verschelde 3e1b61d808
Merge pull request #95121 from aaronfranke/gltf-root-prop-owner
GLTF: Propagate owner for root node children
2024-08-19 14:34:04 +02:00
Rémi Verschelde 3647bc33cd
Merge pull request #93172 from raulsntos/dotnet/clear-instance-bindings
C#: Clear instance bindings callbacks on finalizing the language
2024-08-19 14:33:36 +02:00
Rémi Verschelde 3a4e0f1741
Merge pull request #87735 from ywmaa/blend_file_geometrynodes_instances
Add Option for Export Geometry Nodes Instances in blend importer
2024-08-19 14:33:21 +02:00