Commit graph

9642 commits

Author SHA1 Message Date
Rémi Verschelde
bb437722ea
Merge pull request #96033 from Tallivm/patch-1
Fix typo in `Array` code example
2024-08-25 20:18:42 +02:00
Rémi Verschelde
844ac90bad
Merge pull request #95956 from ItzCog/master
Fix some C# variable types In `AStar2D/3D` Class Reference
2024-08-25 20:18:25 +02:00
Matias N. Goldberg
59d0422dcd Disable extra memory tracking by default
PR #90993 added several debugging utilities.

Among them, advanced memory tracking through the use of custom
allocators and VK_EXT_device_memory_report.

However as issue #95967 reveals, it is dangerous to leave it on by
default because drivers (or even the Vulkan loader) can too easily
accidentally break custom allocators by allocating memory through std
malloc but then request us to deallocate it (or viceversa).

This PR fixes the following problems:
 - Adds --extra-gpu-memory-tracking cmd line argument
 - Adds missing enum entries to
RenderingContextDriverVulkan::VkTrackedObjectType
 - Adds RenderingDevice::get_driver_and_device_memory_report
    - GDScript users can easily check via print(
RenderingServer.get_rendering_device().get_driver_and_device_memory_report()
)
- Uses get_driver_and_device_memory_report on device lost for appending
further info.

Fixes #95967
2024-08-24 20:52:39 -03:00
Tallivm
b516742358 Fix typo in Array code example 2024-08-24 20:44:01 +03:00
Dungeon Master
1928a84f6e Fix some C# variable types In AStar2D/3D Class Reference 2024-08-23 02:25:56 +08: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
2a98d8d78a
Merge pull request #95883 from jsjtxietian/curve2d-doc
Fix Curve2D incorrect sample range description
2024-08-22 00:10:46 +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
jsjtxietian
5183588499 Fix curve2d incorrect sample range description 2024-08-21 16:00:25 +08: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
Stuart Carnie
2d0165574d
Add Metal support for macOS (arm64) and iOS 2024-08-20 12:11:06 +02:00
Rémi Verschelde
5ebfc8a6ba
Merge pull request #95643 from Flynsarmy/get_bone_attach_skele
Add `BoneAttachment3D::get_skeleton()` method
2024-08-20 11:04:04 +02:00
Rémi Verschelde
0b1bf3cb42
Merge pull request #95760 from jolexxa/docs/joy-info
docs: Highlight lack of joystick info on majority of platforms
2024-08-20 10:02:28 +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
7999b4bb8a
Merge pull request #94324 from SomeRanDev/shader_hint_enum
GDShader: Add `hint_enum` for `uniform int`
2024-08-20 10:01:57 +02:00
Rémi Verschelde
6a9ecdcf0c
Merge pull request #91818 from rburing/fti_multimesh
Physics interpolation: `MultiMesh`
2024-08-20 10:01:46 +02:00
Rémi Verschelde
8acd82f70e
Merge pull request #89919 from BlueCube3310/bicubic-lightmap
Implement bicubic sampling for lightmaps
2024-08-20 10:01:41 +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
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
Rémi Verschelde
01fdac08d9
Merge pull request #95779 from Mickeon/documentation-no-differences-ShapeCast
Fix some differences between ShapeCast2D and ShapeCast3D documentation
2024-08-19 14:34:26 +02:00
Rémi Verschelde
8b39d7f326
Merge pull request #95666 from kleonc/parallax2d_repeat_offsets_relative_to_source
Fix `Parallax2D` repeats being not relative to its transform
2024-08-19 14:34:21 +02:00
Rémi Verschelde
8b98d9aa4d
Merge pull request #95137 from smix8/source_geo_bounds
Add `get_bounds()` function to NavigationMeshSourceGeometryData
2024-08-19 14:34:13 +02:00
Rémi Verschelde
ab2b06b8b1
Merge pull request #95730 from voidedWarranties/fix_reload_scripts_bind
Fix virtual binding for `ScriptLanguageExtension::_reload_scripts`
2024-08-19 12:09:39 +02:00
Rémi Verschelde
43c46b9b1b
Merge pull request #95013 from smix8/navmesh_geo_parse
Change NavigationMesh to also parse collision shapes by default
2024-08-19 12:08:55 +02:00
Rémi Verschelde
f4037d6f6c
Merge pull request #92496 from clayjohn/HDR-2D-sRGB
Ensure MovieWriter output is in gamma space when using HDR 2D
2024-08-19 12:08:40 +02:00
kleonc
1bd8372813 Fix Parallax2D repeats being not relative to its transform 2024-08-19 11:43:16 +02:00
BlueCube3310
ef9bb1a207 Implement support for bicubic lightmap filtering
Co-authored-by: Calinou <hugo.locurcio@hugo.pro>
2024-08-19 09:52:09 +02:00
Micky
be1dc574e0 Fix some differences between ShapeCast2D and ShapeCast3D documentation 2024-08-19 00:32:14 +02:00
smix8
2e1f6b50fb Add bounds function to NavigationMeshSourceGeometryData
Adds get_bounds() function to NavigationMeshSourceGeometryData2D/3D to get a bounding box that covers all the geometry.
2024-08-19 00:12:37 +02:00
Joanna May
bebf2e87f2 docs: highlight lack of joystick info on majority of platforms 2024-08-18 14:47:32 -05:00
Ricardo Buring
1728f80e7c Fixed Timestep Interpolation: MultiMesh
Adds fixed timestep interpolation to multimeshes.

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-08-18 17:14:59 +02:00
BlueCube3310
394ea653aa Add Betsy to speed up BC6 compression 2024-08-18 11:14:05 +02:00
voidedWarranties
d65ea6fb9c Fix virtual binding for ScriptLanguageExtension::_reload_scripts 2024-08-17 21:09:32 -07:00
Flyn San
0df7ee31d2 Add BoneAttachment3D::get_skeleton() method 2024-08-17 09:35:24 +10:00
Rémi Verschelde
8d65fd2b32
Merge pull request #95655 from aaronp64/blend_space_2d_docs
Minor AnimationNodeBlendSpace2D documentation fixes
2024-08-17 00:47:10 +02:00
Rémi Verschelde
2e400bc475
Merge pull request #95299 from bruvzg/kern_img
[ImageFont] Fix escape sequence parsing, add note to the docs.
2024-08-16 23:45:44 +02:00
Rémi Verschelde
82adfebcf8
Merge pull request #94799 from m4gr3d/memory_allocation_cleanup_and_optimizations
Android memory cleanup and optimizations
2024-08-16 23:45:39 +02:00
Rémi Verschelde
dbf4be308c
Merge pull request #93583 from smix8/obstacle_monitor
Add navigation obstacles to performance monitor stats
2024-08-16 23:45:10 +02:00
aaronp64
05bcfda784 Minor AnimationNodeBlendSpace2D documentation fixes
Updated a couple parts that seemed to be copied over from AnimationNodeBlendSpace1D
2024-08-16 15:13:36 -04:00
Fredia Huya-Kouadio
a57a99f5bc Memory cleanup and optimizations
- Returns an empty list when there's not registered plugins, thus preventing the creation of spurious iterator objects

- Inline `Godot#getRotatedValues(...)` given it only had a single caller. This allows to remove the allocation of a float array on each call and replace it with float variables

- Disable sensor events by default. Sensor events can fired at 10-100s Hz taking cpu and memory resources. Now the use of sensor data is behind a project setting allowing projects that have use of it to enable it, while other projects don't pay the cost for a feature they don't use

- Create a pool of specialized input `Runnable` objects to prevent spurious, unbounded `Runnable` allocations

- Disable showing the boot logo for Android XR projects

- Delete locale references of jni strings
2024-08-16 09:27:41 -07:00
bruvzg
4cc065c2db
[ImageFont] Fix escape sequence parsing, add note to the docs. 2024-08-16 15:48:56 +03:00
Rémi Verschelde
1a5602c404
Merge pull request #95539 from tetrapod00/compositor-tutorial-link
Add tutorial link in Compositor and CompositorEffect docs
2024-08-16 14:35:45 +02:00
Rémi Verschelde
1d4303c1fe
Merge pull request #95502 from bruvzg/net_ext_detect
[.NET] Move search in files extension list definition to be after Scene level module init.
2024-08-16 14:35:12 +02:00
Rémi Verschelde
63397b5b17
Merge pull request #95485 from sepTN/clarify-timer-docs
Clarify `Timer.start()` documentation to match the current behavior.
2024-08-16 14:35:01 +02:00
Rémi Verschelde
a917a2b2f9
Merge pull request #95456 from smix8/navlink_mapchange
Add NavigationLink function to change navigation map
2024-08-16 14:34:49 +02:00
Rémi Verschelde
504f81ec08
Merge pull request #95376 from raulsntos/gdextension/expose-property-accessors/Polygon2D
Make `Polygon2D::bones` property internal
2024-08-16 14:33:49 +02:00
Rémi Verschelde
252ba2e0e3
Merge pull request #95230 from bruvzg/msdf_custom
[Editor] Allow MSDF font rendering for custom fonts, add editor setting to control it.
2024-08-16 14:33:12 +02:00
Rémi Verschelde
69db19f058
Merge pull request #94826 from Naros/classdb-expose-property-getter-setter
Expose ClassDB methods `get_property_setter` / `get_property_getter`
2024-08-16 14:32:32 +02:00