Commit Graph

9768 Commits

Author SHA1 Message Date
Juan Linietsky
a40fe16866 Implement audio stream playback parameters.
Implements a way for audio stream playback to be configured via parameters
directly in the edited AudioStreamPlayer[2D/3D].

Currently, configuring the playback stream is not possible (or is sometimes hacky
as the user has to obtain the currently played stream, which is not always immediately available).

This PR only implements this new feature to control looping in stream playback instances (a commonly requested feature, which was lost in the transition from Godot 2 to Godot 3).
But the idea is that it can do a lot more:

* If effects are bundled to the stream, control per playback instance parameters such as cutoff or resoance, or any other exposed effect parameter per playback instance.
* For the upcoming interactive music PR (#64488), this exposes an easy way to change the active clip, which was not possible before.
* For the upcoming parametrizable audio support (https://github.com/godotengine/godot-proposals/issues/3394) this allows editing and animating audio graph parameters.

In any case, this PR is required to complete #64488.

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update doc/classes/AudioStream.xml

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-01-16 10:31:52 +01:00
Raul Santos
abd7927325
C#: Use string literal instead of nameof
Using `nameof` expressions with method parameters requires C# 11 and we're currently on C# 10.
2023-12-21 03:11:47 +01:00
Yuri Sizov
c28a091a09 Merge pull request #86336 from LunaticInAHat/dds_implicit_linearsize
Support unspecified linear size in DDS files
2023-12-20 15:08:17 +01:00
Yuri Sizov
1183bdefe4 Merge pull request #86257 from Faless/mp/fix_complete_auth
[MP] Fix `complete_auth` notifying the wrong peer
2023-12-20 15:08:02 +01:00
LunaticInAHat
a344d7f906 Support unspecified linear size in DDS files
Not all exporters choose to populate that (optional) header field.
2023-12-19 16:42:10 -05:00
Yuri Sizov
fc082dd735 Merge pull request #86091 from dalexeev/gds-fix-pot-gen-skips-some-nodes
GDScript: Fix POT generator skips some nodes
2023-12-19 20:33:09 +01:00
Yuri Sizov
dee2604d99 Merge pull request #84729 from nickyfoo/add-navigationserver-getters
Add missing getters to navigation servers
2023-12-19 20:32:46 +01:00
Yuri Sizov
ef79e5d9dd Merge pull request #82983 from Repiteo/c#-godotsharp-nullable-classes
[C#] Enable nullability for variant classes
2023-12-19 20:32:30 +01:00
Yuri Sizov
c8d0325a93 Merge pull request #82955 from paulloz/testing-source-generators
Add unit tests for C# source generators
2023-12-19 20:32:26 +01:00
Yuri Sizov
e18659c69d Merge pull request #82872 from jsjtxietian/require-editor-restart-when-csg-gizmo-color-changed
Prompt require editor restart to user when gizmo color changed
2023-12-19 20:32:20 +01:00
Nicholas Foo
e7ee672120 Add getters to navigation servers
Add virtual functions and bind to navigation servers
Implement getters
Add documentation
2023-12-19 19:51:49 +01:00
msreis
f1cc14d525 Fix missing time for some script functions in profiler
Fixes the issue by adding a mechanism by which the functions that were
previously disappearing can be profiled too. This is optional with
an editor setting, since collecting more information naturally slows the engine
further while profiling.

Fixes #23715, #40251, #29049
2023-12-19 19:42:21 +01:00
Paul Joannon
b352bdc8cb
Add tests for source generators
- Bootstrap xUnit project to test source generators
- Implement source generator tests
- Better tests structure (put test data in cs files)
- Enable `ScriptSerializationGeneratorTests`
- Enable `ScriptPathAttributeGeneratorTests`
- Fix `NesterClass` -> `NestedClass`
- Use `Path.Combine` when dealing with paths
- Copy test data to the output directory
2023-12-19 18:26:52 +01:00
Yuri Sizov
f478a599fc Merge pull request #85975 from Repiteo/c#-null-ptr-exception
C#: Implement function to throw on null pointers
2023-12-19 13:02:24 +01:00
Yuri Sizov
38d8ca0dc1 Merge pull request #85703 from TitanNano/jovan/gdscript_foreign_script_properties
Make GDScriptAnalyzer aware of properties from other languages
2023-12-19 13:02:19 +01:00
Yuri Sizov
a6f806f8da Merge pull request #85487 from vnen/gdscript-static-register-annotations
GDScript: Make annotations register statically in parser
2023-12-19 13:02:09 +01:00
Yuri Sizov
ec648fcfd8 Merge pull request #85447 from smix8/gridmap_navlayer_leftover
Remove GridMap navigation_layers leftover
2023-12-19 13:01:49 +01:00
Yuri Sizov
d4806d2d84 Merge pull request #85253 from sandygk/fix-reachable-polygon-closest-to-end-point
[Navigation] Do not use travel cost for minimum when re-selecting end point
2023-12-19 13:01:45 +01:00
Yuri Sizov
714e27393a Merge pull request #84652 from timothyqiu/enum-pun
Avoid punning enum names in documentation
2023-12-19 13:01:10 +01:00
Jovan Gerodetti
030aa41a99 GDScriptAnalyzer is unaware of properties from other Languages
Co-authored-by: K. S. Ernest (iFire) Lee <fire@users.noreply.github.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-18 22:03:30 +01:00
Thaddeus Crews
a0db88335a
Implement function to throw on null pointers
• Specifically: checks if ptr == IntPtr.Zero
2023-12-17 08:52:20 -06:00
Fabio Alessandrelli
4826c14d20 [MP] Fix complete_auth notifying the wrong peer
The SceneMultiplayer complete_auth method was not configuring the
multiplayer peer correctly, causing it to potentially send the
notification to the wrong peer, on the wrong channel, and/or with an
incorrect transfer mode.
2023-12-17 12:27:24 +01:00
Yuri Sizov
30e77a6321 Merge pull request #86209 from YuriSizov/main-fix-editor-only-module-classes
Correctly register editor-only module classes with the API
2023-12-16 17:50:07 +01:00
Yuri Sizov
4e29b16166 Merge pull request #85967 from BlueCube3310/squish-ra-as-rg-fix
Fix `squish` DXT5 RA-As-RG channel swapping
2023-12-16 17:49:54 +01:00
Yuri Sizov
671f59f9be Merge pull request #85842 from BlueCube3310/rgtc-compression
Improve normal map VRAM Compression with RGTC
2023-12-16 17:49:51 +01:00
Yuri Sizov
f4b32b228a Merge pull request #85603 from eldidou/speed-up-get-must-clear-dependencies
Speed up `GDScript::get_must_clear_dependencies()`
2023-12-16 17:49:47 +01:00
Yuri Sizov
abe19496ac Merge pull request #85163 from BastiaanOlij/openxr_play_area
OpenXR: Add support for retrieving play area
2023-12-16 17:49:34 +01:00
Yuri Sizov
4b258ccdd3 Merge pull request #82884 from KoBeWi/commit_message_cached,_please_refresh
Clarify some descriptions regarding resource cache
2023-12-16 17:49:20 +01:00
Yuri Sizov
0f8c955c1a Correctly register editor-only module classes with the API 2023-12-15 18:58:30 +01:00
Yuri Sizov
58e68590a3 Merge pull request #81220 from BlueCube3310/dds-formats-extended
Support loading more DDS formats
2023-12-14 21:22:29 +01:00
Yuri Sizov
f79f2ef801 Merge pull request #86065 from bruvzg/non_vis_no_draw
[TextServer] Do not draw non-visual characters.
2023-12-14 17:38:53 +01:00
Yuri Sizov
203c8c31d3 Merge pull request #85071 from Rubonnek/remove-unnecessary-assignments
Remove unnecessary assignments
2023-12-14 17:38:34 +01:00
Yuri Sizov
4cf6325aa1 Merge pull request #84660 from groud/better_tileset_polygons
Move tile transforms handling cache to TileData
2023-12-14 17:38:14 +01:00
Yuri Sizov
c978f6bb3d Merge pull request #82980 from Repiteo/c#-godotsharp-nullable-structs
[C#] Enable nullability for variant structs
2023-12-14 17:38:05 +01:00
Yuri Sizov
5c99558d16 Merge pull request #76591 from HolonProduction/complete-tween
Autocomplete properties in `tween_property`
2023-12-14 17:37:53 +01:00
BlueCube3310
c278cc3946 Add support for loading more DDS formats 2023-12-14 15:18:35 +01:00
Gilles Roudière
18fe0bd025 Move tile transforms handling cache to TileData 2023-12-13 17:44:59 +01:00
Wilson E. Alvarez
80fb8db31f
Remove unnecessary assignments
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-13 11:06:26 -05:00
Danil Alexeev
1aa242f7c4
GDScript: Fix POT generator skips some nodes 2023-12-13 13:06:59 +03:00
HolonProduction
5f72254d4d Fix regression when autocompleting subscript on get node 2023-12-13 10:54:40 +01:00
Rémi Verschelde
edf64243bf
Merge pull request #85996 from nikitalita/fix-next_ogg_packet
Fix `OggPacketSequencePlayback::next_ogg_packet()` never returning false
2023-12-13 10:31:58 +01:00
Rémi Verschelde
41365c6c8b
Merge pull request #70315 from RandomShaper/d3d12_mesa
Direct3D 12 Rendering Driver (Mesa NIR approach)
2023-12-12 21:58:57 +01:00
Pedro J. Estébanez
2f47c57385 Add Direct3D 12 RenderingDevice implementation 2023-12-12 19:10:04 +01:00
bruvzg
575e1201cb [TextServer] Do not draw non-visual characters. 2023-12-12 12:17:10 +02:00
Rémi Verschelde
84692c6252
Navigation: Fix GCC 12.3 -Wtype-limits warnings 2023-12-12 11:00:06 +01:00
Aaron Franke
52f1b86ebc
Fix referring to ResourceImporterScene static importers via instances 2023-12-11 20:01:39 -06:00
Rémi Verschelde
ae7c533937
Merge pull request #84686 from dsnopek/webxr-msaa
Add MSAA support for WebXR
2023-12-12 00:17:16 +01:00
Rémi Verschelde
8f2b5cc109
Merge pull request #82899 from aaronfranke/import-settings-dialogs
Rename ImportSettings dialogs to have "Dialog" in the name
2023-12-12 00:15:59 +01:00
Rémi Verschelde
4e2350b1af
Merge pull request #82661 from bruvzg/custom_ellipsis
[Text Overrun] Add option to set custom ellipsis character, add support for system font fallback.
2023-12-12 00:15:34 +01:00
Rémi Verschelde
9eb47ce361
Merge pull request #75098 from smix8/map_random_point_queries_4.x
Add NavigationServer random point queries
2023-12-12 00:15:05 +01:00