Commit Graph

4615 Commits

Author SHA1 Message Date
Rémi Verschelde 7030ac555f
Merge pull request #79270 from clayjohn/particle-trails-error
Unify error condition for particles trail lifetime
2023-07-10 10:38:34 +02:00
clayjohn 78ecdb17f9 Unify error condition for particles trail lifetime 2023-07-10 10:17:27 +02:00
Rémi Verschelde 46cd84b362
Merge pull request #78839 from lewiji/normal_roughness_mobile_fix
Fix invalid shader compilation when using `hint_normal_roughness_texture` in mobile backend
2023-07-08 18:19:49 +02:00
Rémi Verschelde ea3aaeac05
Merge pull request #78624 from puchik/canvas-background-specular-ghosting
Clear specular buffer if sky mode is canvas and screen space effects are used
2023-07-08 18:16:05 +02:00
Rémi Verschelde b2ada1b690
Merge pull request #78972 from bitsawer/fix_shader_float_precision
Fix shader language float literal precision truncation
2023-07-07 08:32:09 +02:00
Rémi Verschelde 25ec523596
Merge pull request #78906 from Chaosus/shader_allow_hex_uint
Fix using uint suffix at the hex number declaration in shaders
2023-07-07 08:29:17 +02:00
Rémi Verschelde b8f28e287e
Merge pull request #78902 from nklbdev/Fix_wrong_type_casting_in_RenderingServer
Fix wrong type casting for octahedral tangents
2023-07-07 08:28:52 +02:00
smix8 f7ebce2626 Mark NavigationServer3D.region_bake_navigation_mesh() as deprecated
Marks NavigationServer3D.region_bake_navigation_mesh() as deprecated.
2023-07-07 02:30:14 +02:00
kobewi 8ae2e6681e Allow more hint types for uniform arrays 2023-07-06 15:05:26 +02:00
bitsawer 356297f909 Fix shader language float literal precision truncation 2023-07-03 12:48:33 +03:00
Yuri Roubinski 1994c25701 Fix using uint suffix at the hex number declaration in shaders 2023-07-01 14:33:48 +03:00
nklbdev c022f52f11 Fix wrong type casting for octahedral tangents 2023-07-01 15:15:48 +05:00
clayjohn 35ed7c770b Initialize particles instance buffer in case it is used before being updated 2023-06-29 13:24:40 -07:00
lewiji 2a93681334 Return shader parse error when using 'hint_normal_roughness_texture' and not using the Forward+ backend 2023-06-29 16:18:31 +01:00
Crimzoth 3bab21fdd7 Fix: Mass not set properly for RigidBody
Removed erroneous check, which caused _inv_mass not to be calculated when RigidBody2D or RigidBody3D used both custom center of mass and custom inertia.
2023-06-27 18:56:38 +02:00
smix8 8bd14e5ca3 Add missing default Callables for new NavigationServer geometry parse and bake functions
Adds missing default Callables for new NavigationServer geometry parse and bake functions.
2023-06-25 19:08:50 +02:00
K. S. Ernest (iFire) Lee 39dfa8436e Varying mismatch causing shaders to fail. 2023-06-23 21:36:38 -07:00
Arman Elgudzhyan af9d1743f3 Clear specular buffer if bg mode is canvas and ss effects are used
Explicitly clear the separate specular buffer when the background mode is canvas and screen space effects (and thus a separate specular buffer) are used.
2023-06-23 12:16:52 -07:00
Rémi Verschelde dbcbba5575
Merge pull request #78575 from brno32/bind-light-param-intensity
Binding LIGHT_PARAM_INTENSITY in RenderingServer
2023-06-23 08:48:20 +02:00
Alex Drozd d9cc22af8f Binding LIGHT_PARAM_INTENSITY in RenderingServer 2023-06-22 23:29:47 +02:00
bitsawer ef00de99b4 Fix error spam when a mesh with bone weights has an invalid skeleton 2023-06-22 15:58:52 +03:00
ChibiDenDen 35715e510f replace sampler arrays with constant sampler elements 2023-06-22 01:11:57 +03:00
Markus Sauermann 890fdd56df Code simplifications
CPPcheck found most of them.

no need to assign the variable twice:
- AnimationTrackEditTypeAudio
- SSEffects

variable is assigned in all if-else clauses:
- EditorHelp
- AndroidInputHandler
- MenuBar
- ShaderCompiler

same if clause:
- ItemList

clearing an empty bitfield has no effect:
- Viewport
2023-06-21 22:37:26 +02:00
Bastiaan Olij 952b4b3f38 Apply reprojection in multiview for our cluster lookup 2023-06-21 11:17:01 +10:00
Rémi Verschelde dca1e0bef7
Merge pull request #78436 from BastiaanOlij/fix_stereo_fog
Fix volumetric fog in stereo by projection vertex in combined space
2023-06-20 09:21:39 +02:00
Bastiaan Olij 66272ea26e Fix volumetric fog in stereo by projection vertex in combined space 2023-06-20 14:36:14 +10:00
Wilson E. Alvarez d19c376d2e
Fix AudioEffectRecord circular reference 2023-06-19 18:13:01 -04:00
Rémi Verschelde 7ff0a3086d
Merge pull request #76138 from rburing/ccd_against_moving
Improve rigid body CCD against moving bodies
2023-06-19 22:34:16 +02:00
bitsawer dab0871d41 Fix invalid RID errors when freeing a mesh with blend shapes 2023-06-19 11:07:15 +03:00
smix8 ae9dd47d0c Add agent pause mode to NavigationServer
Adds agent pause mode to NavigationServer.
2023-06-18 12:37:03 +02:00
smix8 c4f544f802 Add ProjectSettings navigation map default up
Adds ProjectSettings navigation map default up.
2023-06-17 11:29:17 +02:00
Rémi Verschelde 014b395ef3
Merge pull request #78262 from bruvzg/ds_window_focus
[DisplayServer] Add method to check if native window is focused.
2023-06-16 10:19:33 +02:00
bruvzg 28db3c7158 [DisplayServer] Add method to check if native window is focused. 2023-06-16 10:27:52 +03:00
clayjohn 36a005fafc
Add RENDERING_INFO parameters to GL Compatibility renderer
This also fixes RENDERING_INFO_TOTAL_PRIMITIVES_IN_FRAME for the RD renderers as it was incorrectly reporting vertex/index count at times

This also adds memory tracking to textures and buffers to catch memory leaks.

This also cleans up some memory leaks that the new system caught.
2023-06-16 09:10:00 +02:00
Rémi Verschelde 6fb391bc23
Fix various typos with codespell
And ignore some false positives introduced by recent versions of codespell.
2023-06-16 08:45:35 +02:00
Rémi Verschelde 0da20d019e
Merge pull request #77412 from smix8/fix_threaded_navmesh_baking_4.x
Fix for threaded NavigationMesh baking under new thread guards
2023-06-15 10:49:58 +02:00
Rémi Verschelde 754a52a4ab
Merge pull request #78201 from smix8/navmesh_cell_height_4.x
Fix `cell_height` for navigation meshes
2023-06-14 09:27:33 +02:00
Rémi Verschelde 16c2fede71
Merge pull request #78200 from prominentdetail/patch-3
Properly handle wireframe mode in RendererRD pipeline cache
2023-06-14 09:27:10 +02:00
Rémi Verschelde e0651ed4b5
Merge pull request #78199 from clayjohn/detect_3d
Ensure that "detect 3D" is only called when using 3D shaders
2023-06-14 09:26:47 +02:00
Rémi Verschelde 41776634b6
Merge pull request #78161 from BastiaanOlij/expose_texture_native_handle
Expose `RD::texture_get_native_handle`
2023-06-14 09:25:59 +02:00
Alex f74464b767
Properly handle wireframe mode in RendererRD pipeline cache
Makes wireframe get cached properly so that it doesn't keep being recreated.
Fixes #76237.
2023-06-14 09:14:34 +02:00
Bastiaan Olij 6dd47e232b Expose RD::texture_native_handle 2023-06-14 09:58:08 +10:00
smix8 ee14b010ac Fix for threaded NavigationMesh baking under new thread guards
Fixes threaded NavigationMesh baking under new SceneTree thread guards that blocked the process.
2023-06-14 01:53:37 +02:00
smix8 180a5cded1 Fix `cell_height` for navigation meshes
Fixes `cell_height` for navigation meshes.
2023-06-13 23:24:32 +02:00
clayjohn 0b7e2dfdfc Ensure that "detect 3D" is only called when using 3D shaders 2023-06-13 13:20:11 -07:00
Aaron Franke 1e6f30e6bd
Set both texture format overrides to false by default 2023-06-12 11:52:02 -05:00
Rémi Verschelde e208cdb170
Merge pull request #78081 from smix8/obstacle_api_update_4.x
Update NavigationObstacle API
2023-06-12 17:10:28 +02:00
Rémi Verschelde 2d6b880987
i18n: Sync translations with Weblate (now tracking 4.1 strings) 2023-06-12 14:57:08 +02:00
smix8 c1fc331b88 Update navigation obstacle API
Updates navigation obstacle API.
2023-06-12 14:26:45 +02:00
kleonc bbb2a889d8 Fix Y-sort modulate for top-most Y-sorted CanvasItem 2023-06-12 13:33:26 +02:00
Bastiaan Olij d9eb9665da Draw frustum splices ontop of direction shadow atlas for debug purposes 2023-06-11 11:48:11 +10:00
Aaron Franke 944fbce347
Enable S3TC_BPTC but not ETC2_ASTC by default 2023-06-09 11:38:29 -05:00
Rémi Verschelde 7c71844999
Merge pull request #77703 from RandomShaper/fix_vol_fog_thingy
Fix management of life cycle of vol. fog related uniform sets
2023-06-09 11:05:11 +02:00
Rémi Verschelde 9ce42d176d
Merge pull request #76977 from manueldun/light-shader-builtins
Enable the use of all supported builtins on the light shader
2023-06-09 11:04:46 +02:00
Rémi Verschelde 166643df32
Merge pull request #74937 from bitsawer/fix_uniform_storage
Fix shader uniform storage conversions and crash
2023-06-09 11:04:16 +02:00
Manuel Dun e2321c21db Enable the use of all builtins on the light shader
When using the light process in spatial shader,
the built-ins work as spected, now they work in forward+,
mobile and compatibility renderer.
2023-06-08 14:14:14 -04:00
bruvzg 08e8ff371d
Implement keyboard_get_label_from_physical method. 2023-06-08 10:13:31 +03:00
Hugo Locurcio 0f82a0f569
Document the InitialAction enum in RenderingDevice
This also improves the documentation for the FinalAction enum,
and fixes an incorrect comment in the RenderingDevice header.
2023-06-08 03:54:38 +02:00
Rémi Verschelde 46c4068821
Merge pull request #77170 from lawnjelly/scu_build_master
Add support for single compilation unit builds
2023-06-06 17:58:09 +02:00
lawnjelly b69c8b4791 Single Compilation Unit build.
Adds support for simple SCU build (DEV_ENABLED only).
This speeds up compilation by compiling multiple cpp files within a single translation unit.
2023-06-06 15:36:51 +01:00
Yuri Sizov ed63b9ea23
Merge pull request #77839 from mihe/physics-engine-restart
Change the "Physics Engine" project settings to prompt a restart
2023-06-06 12:46:35 +02:00
Mikael Hermansson 4f9f4796f2 Change the "Physics Engine" project settings to prompt a restart 2023-06-04 17:24:42 +02:00
Arman Elgudzhyan 7bcc849143 Use depth pass mode with normals if required even if Environment is null
If using normal buffer debugging or if the normal texture was used, we should use PASS_MODE_DEPTH_NORMAL_ROUGHNESS regardless of whether there is a valid Environment or not. Otherwise, shaders reading the normal texture will not work without a valid Environment (and possibly other problems).
2023-06-03 07:56:47 -07:00
Pedro J. Estébanez f08f67308e Fix management of life cycle of vol. fog related uniform sets 2023-05-31 19:54:28 +02:00
bitsawer 23c375d6b4 Fix shader uniform storage conversions and crash 2023-05-29 15:17:13 +03:00
bitsawer 67038471ff Fix shader preprocessor cyclic include handling 2023-05-29 12:05:22 +03:00
Yuri Sizov c87dc07fdd
Merge pull request #77514 from bruvzg/fix_dup_breaks
[TextServer] Prevent duplicate line breaks on virtual spaces when line width is significantly smaller than character width.
2023-05-27 17:49:49 +02:00
Yuri Sizov f6dcd7f51a
Merge pull request #75181 from dalexeev/fix-light-only-mode
Fix "Light Only" mode of `CanvasItemMaterial`
2023-05-27 17:28:29 +02:00
Allen Pestaluky 4e19f34856 Changed Subtract blend mode of Forward+ and Mobile renderers to match behaviour of the Godot 3 and Compatibility renderers
The OpenGL implementation has used GL_FUNC_REVERSE_SUBTRACT for a long time, but the new RenderingDevice abstraction used by the Vulkan renderers had been mistakenly set to BLEND_OP_SUBTRACT instead of BLEND_OP_REVERSE_SUBTRACT.

Fixes #77448
2023-05-26 10:50:35 -04:00
bruvzg 8a4a883854 [TextServer] Prevent duplicate line breaks on virtual spaces when line width is significantly smaller than character width. 2023-05-26 16:18:26 +03:00
Rémi Verschelde ba557aaf55
Merge pull request #77294 from puchik/lod-resolution-scaling
Take 3D resolution scaling into account for mesh LOD
2023-05-24 08:48:38 +02:00
Rémi Verschelde 0821262167
Merge pull request #77079 from kleonc/y_sort_fix_modulation_propagation
Fix modulation propagation for Y-sorted CanvasItems
2023-05-24 08:47:50 +02:00
Rémi Verschelde 852740a627
Merge pull request #76053 from MightiestGoat/fix-sky-auto-exposure
Fix the grainy sky while using debanding.
2023-05-24 08:46:28 +02:00
Rémi Verschelde 6d88c83611
Merge pull request #71684 from kleonc/draw_polyline_simplify_antialiased
`RendererCanvasCull` Simplify drawing antialiased polyline
2023-05-24 08:44:19 +02:00
Rémi Verschelde d5c1b9f883
Merge pull request #77327 from BastiaanOlij/fix_gi_and_fog_free
Conditionally free GI and FOG resources, they may not have been created
2023-05-22 22:37:12 +02:00
Rémi Verschelde c3c1909429
Merge pull request #77326 from BastiaanOlij/fix_material_dependencies
Properly clear material slots on mesh instance when material is freed
2023-05-22 22:36:48 +02:00
bruvzg aaddec7cb8
[TextServer] Add support for retrieving OpenType name strings. 2023-05-22 18:08:34 +03:00
Bastiaan Olij 1a128fcccd Properly clear material slots on mesh instance when material is freed 2023-05-22 23:00:00 +10:00
Rémi Verschelde 1086375785
Merge pull request #77266 from Rindbee/fix-bugs-in-TextureStorage-texture_3d_update
Fix calling `TextureStorage::texture_3d_update()` could cause a crash
2023-05-22 13:49:23 +02:00
Rémi Verschelde 05ddc822fb
Merge pull request #77265 from lyuma/aabb_bone_lod_inside
Fix calculation of skinned AABB for unused bones.
2023-05-22 13:49:19 +02:00
Bastiaan Olij 57f343ab21 Conditionally free GI and FOG resources, they may not have been created 2023-05-22 12:59:34 +10:00
Rindbee ebd2b9e299 Fix calling `TextureStorage::texture_3d_update()` could cause a crash 2023-05-22 06:24:13 +08:00
Arman Elgudzhyan ac4ca89000 Take 3D resolution scaling into account for mesh LOD 2023-05-20 16:40:16 -07:00
Lyuma 791d8001db Fix AABB for unused bones
Fixes bug where bounding box of 1 unit was used in some skinned models and had wrong LODs.
(this could become very large if the mesh is scaled, such as FBX conversions)
Also fixes a mistake in calcualting bone index.
2023-05-19 19:47:52 -07:00
Markus Grafen 8a3e829930 (Re-)Implemented Light3D's property "shadow_reverse_cull_face"
The parameter shadow_reverse_cull_face is now passed to the shadow pass so that the mesh back-faces are used for shadow map calculation.
2023-05-19 19:22:10 +02:00
Yuri Sizov 91f3cdfde0
Merge pull request #77171 from rburing/support_thresholds_3d
Restore edge and face support thresholds in 3D
2023-05-18 19:10:19 +02:00
Bastiaan Olij dae58dd187 Fix a typo in the debug shadow split renderer 2023-05-18 10:36:12 +10:00
Ricardo Buring 8812d27bc7 Restore edge and face support thresholds in 3D 2023-05-17 20:14:19 +02:00
Rémi Verschelde b42cea1373
Merge pull request #77089 from DearthDev/lightmapgi-dynamic-objects
LightmapGI dynamic object lighting fix
2023-05-17 11:25:25 +02:00
Rémi Verschelde 59c19a7172
Merge pull request #75250 from bruvzg/lbl_rtl_jst_flags
Expose TextServer justification flags to Label, Label3D, TextMesh and RTL. Add flags to control last/single line justification.
2023-05-16 10:48:45 +02:00
Rémi Verschelde 265c70a369
Merge pull request #75142 from bruvzg/scr
[DisplayServer] Implement screen_get_image method for LinuxBSD/X11, macOS and Windows.
2023-05-16 10:48:16 +02:00
bruvzg 9163d8c336
Expose TextServer justification flags to Label, Label3D, TextMesh and RTL. Add flags to control last/single line justification. 2023-05-15 19:23:54 +03:00
dearthdev 53903f07dc Correctly insert lightmap captures and geometries. 2023-05-15 03:05:19 -05:00
Yuri Rubinsky d7211b371c
Merge pull request #77086 from Chaosus/shaders_fix_render_mode_completion 2023-05-15 10:58:23 +03:00
Rémi Verschelde 9ecb929da6
Merge pull request #76565 from clayjohn/debug-PSSM-splits
Re-implement the PSSM_SPLITS debug option
2023-05-15 09:33:01 +02:00
Yuri Rubinsky 719741b0eb Exclude incorrect completion options for `render_mode` in shaders 2023-05-15 08:21:16 +03:00
kleonc 5d8219b4fd Fix modulation propagation for Y-sorted CanvasItems 2023-05-15 01:32:41 +02:00
Danil Alexeev 43b0702a02
Fix "Light Only" mode of `CanvasItemMaterial` 2023-05-13 09:06:09 +03:00
Rémi Verschelde cc48827e4a
Merge pull request #76946 from AThousandShips/shadow_warning
Enable shadow warnings and fix raised errors
2023-05-12 10:04:09 +02:00
smix8 f986b52b3c Make navigation mesh edge connections optional
Makes navigation mesh edge connections optional.
2023-05-11 18:46:34 +02:00
Ninni Pipping 71ee65dc57 Enable shadow warnings and fix raised errors 2023-05-11 16:00:59 +02:00
Rémi Verschelde 3b8c828159
Merge pull request #69988 from smix8/navigation_rvo_rework_4.x
Rework Navigation Avoidance
2023-05-10 10:19:12 +02:00
Rémi Verschelde 769d8a7bbe
Merge pull request #76088 from rburing/contact_points_global_3d
PhysicsDirectBodyState3D: report contact points using global coordinates
2023-05-10 09:09:17 +02:00
smix8 a6ac305f96 Rework Navigation Avoidance
Rework Navigation Avoidance.
2023-05-10 05:01:58 +02:00
Rémi Verschelde 564d1b34e0
Merge pull request #74711 from BastiaanOlij/add_texture_native_handle
Provide access to internal graphics handles for textures
2023-05-09 19:28:26 +02:00
Rémi Verschelde de14109862
Merge pull request #73588 from smosages/resolve-display-shader-settings-in-settings-editor
Define shader language project settings before creation of `TextShaderEditor` object.
2023-05-09 19:28:17 +02:00
Rémi Verschelde 668cf3c66f
Merge pull request #76832 from RandomShaper/cluster_render_prevail
Save cluster render shader from being optimized out entirely
2023-05-09 10:46:23 +02:00
Rémi Verschelde 1a987eb9ba
Merge pull request #76624 from myaaaaaaaaa/movie-stat
Print CPU and GPU usage statistics after Movie Maker is finished
2023-05-09 10:45:35 +02:00
Bastiaan Olij c328676d96 For GDExternal use, provides access to internal graphics handles for textures 2023-05-09 13:47:22 +10:00
Pedro J. Estébanez 6465432570 Save cluster render shader from being optimized out entirely 2023-05-08 18:39:49 +02:00
myaaaaaaaaa c55892cc5c Print CPU and GPU usage statistics after Movie Maker is finished 2023-05-08 12:02:52 -04:00
Rémi Verschelde 3e6a731904
Merge pull request #76418 from reduz/method-bind-validated-call
Add ValidatedCall to MethodBind
2023-05-08 13:52:42 +02:00
Rémi Verschelde 70f69f6c72
Merge pull request #76379 from Black-Cat/fix-capsule2d-sleep
Fix precision in physics supports generation
2023-05-08 13:52:37 +02:00
Clay John 610877e326
Merge pull request #72288 from MewPurPur/use-string-repeat
Use `String.repeat()` to optimize several String methods
2023-05-05 09:56:48 -07:00
Max Hilbrunner 39d85308fd
Merge pull request #76109 from paddy-exe/fix-node-position-view 2023-05-05 14:35:41 +02:00
Max Hilbrunner d481fca986
Merge pull request #75517 from BastiaanOlij/expose_render_target 2023-05-05 14:28:01 +02:00
Max Hilbrunner fa451ead91
Merge pull request #74883 from dalexeev/fix-thin-multiline-colors 2023-05-05 14:26:37 +02:00
Johan Aires Rastén 8452e6cdb3 Add SPECULAR_AMOUNT spatial light shader built-in
Light3D has a light_specular property which is used to set the
intensity of specular contributed by this light source, but it was
previously only used by the default material light shader, and not
possible to use in a custom light() shader.
2023-05-04 09:15:12 +02:00
Max Hilbrunner ba32279cd0
Merge pull request #76550 from RandomShaper/vk_gi_take_2
Fix voxel GI issues (2)
2023-05-03 20:24:05 +02:00
Patrick e35bbd76a3 Fix Rotation Issue with NODE_POSITION_VIEW Visual Shader Node 2023-05-03 19:59:43 +02:00
Pedro J. Estébanez c58e50adcc Fix additional cases of breakage of rendering effects 2023-05-03 11:57:54 +02:00
clayjohn fb77021559 Use proper UV in cubemap downsampler raster
This removes bias in cubemap downsampling shader that resulted in the bottom of cubemaps being over represented
2023-05-03 01:06:34 -07:00
VolTer 6b84e258d2 Use String.repeat() in more places 2023-05-01 02:27:46 +02:00
Juan Linietsky 1c93606e47 Add ValidatedCall to MethodBind
* This should optimize GDScript function calling _enormously_.
* It also should simplify the GDScript VM considerably.

NOTE: GDExtension calling performance has most likely been affected until going via ptrcall is fixed.
2023-04-30 20:01:26 +02:00
Black-Cat d710af2e97
Fix precision in physics supports generation
Lower threshold for dot was (1.0 - threshold) which is incorrect.
Patch changes it to correct version sqrt(1.0 - threshold * threshold)

Co-authored-by: Ricardo Buring <ricardo.buring@gmail.com>
2023-04-29 12:12:10 +01:00
clayjohn ca23d06a31 Re-implement the PSSM_SPLITS debug option
This uses a render_mode instead of shadow_color to avoid adding a cost to the basic shader
2023-04-28 17:53:56 -07:00
Samuele Panzeri 4aaa2e6477 Fix wait for thread not started 2023-04-27 20:28:22 +02:00
Rémi Verschelde 5a1d4bd8ab
Merge pull request #76479 from bitsawer/fix_preprocessor_line_number
Fix Shader Preprocessor line numbering when disabled
2023-04-27 08:19:30 +02:00
Rémi Verschelde 359b494cbe
Merge pull request #76437 from RandomShaper/fix_vol_fog_voxel_gi
Fix voxel GI issues
2023-04-27 08:19:06 +02:00
Pedro J. Estébanez 09aa1bbdb3 Fix unsupported sampler filter used for voxel GI 2023-04-26 20:54:06 +02:00
bitsawer 34896d8e89 Fix Shader Preprocessor line numbering when disabled 2023-04-26 16:48:23 +03:00
Rémi Verschelde b58873b98a
Merge pull request #69833 from Eoin-ONeill-Yokai/audio_invalid_mixrate
Fix crash caused by invalid mix_rate assignment due to bogus project settings.
2023-04-26 11:35:37 +02:00
Pedro J. Estébanez 2beed0d5dc Fix breakages of volumetric fog on voxel GI changes 2023-04-26 10:24:03 +02:00
Eoin O'Neill 5a08091168 Fix crash caused by invalid mix_rate assignment due to bogus
project settings.

We'll default to a sensible value in the case that a user has
somehow managed to modify the configuration file incorrectly.

Closes 69819
2023-04-25 23:52:50 -07:00
Johan Aires Rastén 14a8124ffe Add LIGHT_IS_DIRECTIONAL built-in for spatial shaders 2023-04-20 14:33:30 +02:00
Rémi Verschelde 27253f3eb2
Merge pull request #76240 from clayjohn/Light2D-artifacts
Clamp normal when calculating 2D lighting to avoid artifacts
2023-04-19 10:13:56 +02:00
bruvzg 520a8d8ed2
Add project manager / editor initial screen settings, implement DisplayServer.get_keyboard_focus_screen method. 2023-04-19 08:54:53 +03:00
clayjohn ab603e347f Clamp normal when calculating 2D lighting to avoid artifacts 2023-04-18 17:26:17 -07:00
Yuri Sizov 9882af4880
Merge pull request #76197 from dalexeev/fix-error-macro-misuses
Fix misuses of error macros
2023-04-18 16:11:37 +02:00
Yuri Sizov 0aa2c32770
Merge pull request #76148 from smix8/navigation_debug_nontri_meshes_4.x
Fix NavigationMesh debug visuals for non-triangulated meshes
2023-04-18 13:07:24 +02:00
Danil Alexeev 36bedd341a
Fix misuses of error macros 2023-04-18 10:20:48 +03:00
Rémi Verschelde 96580689b0
Merge pull request #76051 from rburing/contact_local_velocity_2d
PhysicsDirectBodyState2D: add `get_contact_local_velocity_at_position`
2023-04-17 20:14:00 +02:00
Yuri Sizov f7308f4502
Merge pull request #75782 from kleonc/debugger-video-ram-deserialization-fix
Fix deserializing resource usage debug data
2023-04-17 14:27:06 +02:00
smix8 4490a3303b Fix NavigationMesh debug visuals for non-triangulated meshes
Fixes NavigationMesh debug visuals for non-triangulated meshes.
2023-04-16 23:31:54 +02:00
Ricardo Buring 47c5b8bafc Improve rigid body CCD against moving bodies 2023-04-16 19:46:33 +02:00
Ricardo Buring 15b8cb9d9c PhysicsDirectBodyState3D: report contact points using global coordinates
Also update the documentation to reflect this in both 2D and 3D.
2023-04-15 14:31:17 +02:00
mightygoat 69f634ac78 Fix the grainy sky while using debanding 2023-04-15 10:43:46 +05:30
Ricardo Buring aacb20437a PhysicsDirectBodyState2D: add get_contact_local_velocity_at_position 2023-04-14 11:40:06 +02:00
Rémi Verschelde 8bce5a88e1
Merge pull request #76009 from Calinou/particles-attractor-strength-fix-typo
Fix `setrngth` typo in `particles_collision_set_attractor_strength()`
2023-04-13 09:57:05 +02:00
Rémi Verschelde 0ec2be1213
Merge pull request #76003 from clayjohn/double-particle-offset
Don't store instance transform origin in RD 3D renderer unless requested
2023-04-13 09:56:41 +02:00
Rémi Verschelde 34a842b5d1
Merge pull request #75462 from joao-pedro-braz/use_modelview_for_vertex_transform_when_double_precision_is_enabled
Use MODELVIEW_MATRIX when on double precision
2023-04-13 09:53:54 +02:00
Rémi Verschelde e6e52f9154
Merge pull request #75162 from ecmjohnson/gpuparticles_inf_translate
GPUParticles3D: Translate inactive particles to -INF
2023-04-13 09:53:04 +02:00
Rémi Verschelde 8b31811b2d
Merge pull request #71364 from clayjohn/exposure-builtin
Add EXPOSURE built in to spatial shaders
2023-04-13 09:52:40 +02:00
Rémi Verschelde f850bfa92d
Merge pull request #58880 from tgift/DirectBodyState
Contacts and PhysicsDirectBodyState3D
2023-04-13 09:51:43 +02:00
Hugo Locurcio e7852552d4
Fix `setrngth` typo in `particles_collision_set_attractor_strength()` 2023-04-13 03:09:26 +02:00
Erik Johnson 6229c2a1f9 Translate inactive particles to -INF 2023-04-12 19:32:39 -04:00
clayjohn 29edd277e4 Don't store instance transform in RD 3D renderer unless requested
Previously, when using doubles builds of the engine, instance transform was stored no matter what which caused world space particles to accumulate the instance transform twice
2023-04-12 14:41:17 -07:00
Tim Gift fffc6aba58 Resolved issues with script PhysicsDirectBodyState3d contacts
Resolved a problem with PhysicsDirectBodyState3D sometimes returning incorrect contact positions and added a new get_contact_local_velocity_at_position method to compliment the existing one for the collider.
2023-04-12 11:40:34 -07:00
clayjohn 9be0a73294 Add EXPOSURE built in to spatial shaders
This allows users to restore light values to pre-pre-exposure amounts
2023-04-12 10:35:13 -07:00
Rémi Verschelde 5e34a28bd7
Merge pull request #73313 from clayjohn/particles-split
Properly calculate lifetime_split for particles
2023-04-12 17:01:17 +02:00
Rémi Verschelde 15316416ab
Merge pull request #75974 from bruvzg/ts_emb_caret
[TextServer] Use dedicated flag for object replacement characters.
2023-04-12 13:28:09 +02:00
bruvzg d904516e55
[TextServer] Use dedicated flag for object replacement characters. 2023-04-12 10:08:51 +03:00
Rémi Verschelde 1b14e1a293
Merge pull request #75908 from Calinou/compute-pipeline-fix-typo
Fix `compute_pieline` typo in `RenderingDevice.compute_pipeline_is_valid()`
2023-04-12 09:07:43 +02:00
Yuri Rubinsky 1433c98e9f
Merge pull request #75831 from Chaosus/shader_fix_texture_array_hint_completion 2023-04-12 08:58:59 +03:00
Rémi Verschelde ef17794d17
Merge pull request #75812 from RandomCatDude/sky-fog-luminance-fix
Move sky luminance scaling to before fog is applied
2023-04-11 19:40:36 +02:00
Rémi Verschelde 7b078bfe14
Merge pull request #75632 from Calinou/test-texture-fix-creation
Fix `get_test_texture()` returning an almost fully white texture
2023-04-11 19:40:19 +02:00
Rémi Verschelde 347a8e20ae
Merge pull request #69324 from RedMser/advanced-settings-errors
Make it easier to solve warnings/errors referring to project settings
2023-04-11 19:39:53 +02:00
Hugo Locurcio 8eb0d0e665
Fix `compute_pieline` typo in `RenderingDevice.compute_pipeline_is_valid()` 2023-04-10 22:32:04 +02:00
Yuri Sizov 040330c63c
Merge pull request #75835 from rburing/fix_convex_convex_axis_test
Fix typo bug in convex-convex separating axis test
2023-04-10 12:37:00 +02:00
Ricardo Buring d7aed57b60 Fix typo bug in convex-convex separating axis test 2023-04-08 20:37:12 +02:00
Yuri Rubinsky 12142f2b50 Fix completion of `source_color` hint for texture arrays in shaders 2023-04-08 20:13:26 +03:00
RandomCatDude c118314fe8 Apply sky fog after luminance multiplier 2023-04-08 12:52:33 +05:00
kleonc 3e7752463a Fix deserializing resource usage debug data 2023-04-07 17:00:38 +02:00
Yuri Sizov 47af40c71f
Merge pull request #75665 from Malcolmnixon/penetration-depth-precision
Modify contact_max_allowed_penetration precision to 3 significant digits
2023-04-07 12:43:12 +02:00
Yuri Sizov cbb2e17369
Merge pull request #75368 from MightiestGoat/fix-limit-interpolation-R0
Fix the limit for interpolation of R0 with respect to metallic and the calculation of the cos theata in the Fresnel Shlick term in SSR
2023-04-07 12:40:33 +02:00
Yuri Sizov 08c1b55862
Merge pull request #74891 from jmattspartacus/OccluderPolygon2D_memLeak_53722
Fix for OccluderPolygon2D memory leak
2023-04-07 12:37:51 +02:00
mightygoat 2c000cb72f Fix the limit for interpolation of R0 with respect to metallic and SSR
Shlick term
2023-04-06 23:14:47 +05:30
Malcolm Nixon 1d1d3c71e0 Modify "physics/3d/solver/contact_max_allowed_penetration" precision to three significant digits, so values down to "0.001" can be specified.
Updated additional 2D and 3D physics parameters based on team recommendations

Co-Authored-By: Ricardo Buring <rburing@users.noreply.github.com>
2023-04-05 18:14:35 -04:00
Rémi Verschelde 0d6a07c031
Merge pull request #75664 from BastiaanOlij/fix_sky_framebuffer_init
Fix framebuffers in sky not being created on mobile renderer
2023-04-05 12:03:34 +02:00
Rémi Verschelde 4f30ca3b0f
Merge pull request #75579 from smix8/make_navigation_projectsettings_basic_4.x
Make navigation ProjectSettings always visible
2023-04-05 12:03:19 +02:00
Bastiaan Olij 901cd7e3fe Fix framebuffers in sky not being created on mobile renderer 2023-04-05 09:43:03 +10:00
Hugo Locurcio e4d5cecd4c
Fix `get_test_texture()` returning an almost fully white texture
The texture's appearance is now similar to the texture that was displayed
on the TestCube node in Godot 2.x.
2023-04-04 02:30:05 +02:00
Yuri Sizov 9dcfdc2051
Merge pull request #75366 from Chaosus/shader_compiler_fix_operator
Fix to some operators in shaders are not compiled properly
2023-04-03 22:32:31 +02:00
Rémi Verschelde 154a29d33a
Merge pull request #74808 from bradc6/feature/AllowCustomOutputShaderGenFilepaths
Allow for shaders to be generated outside of the source tree
2023-04-03 16:01:32 +02:00
Rémi Verschelde 38094dfc4a
Merge pull request #74558 from smix8/navserver_real_t_4.x
Fix NavigationServer internals still using float instead of real_t
2023-04-03 16:00:42 +02:00
smix8 cd62b5b499 Make navigation ProjectSettings always visible
Makes navigation ProjectSettings always visible.
2023-04-02 01:17:10 +02:00
Bastiaan Olij ab60d3b65c Expose viewports render targer RID 2023-03-31 11:34:09 +11:00
João Pedro Braz 63c6f0b93c Use MODELVIEW_MATRIX for vertex transform when double precision is enabled
This commit updates the double precision vertex transform code from
using the MODEL_MATRIX to now use the MODELVIEW_MATRIX instead.

This can be made possible by transforming the MODELVIEW_MATRIX
back into model space (ie, same space as the MODEL_MATRIX) and then using it as if it were the MODEL_MATRIX.

With this in place we now properly handle VERTEX transformations that
a Material Shader might do, such as billboard-ing.
2023-03-29 10:37:30 -03:00
RedMser ed960453b7 Make solving project setting errors easier
Show full project setting path in error messages.
Force filtering for advanced settings if filter is not empty.
2023-03-27 08:10:35 +02:00
Yuri Rubinsky 575e352a61 Fix to some operators in shaders are not compiled properly 2023-03-26 20:50:02 +03:00
Yuri Sizov d20c520d96
Merge pull request #74848 from BastiaanOlij/add_xr_system_info
Add a get_system_info method to XRInterface
2023-03-25 15:07:51 +01:00
Yuri Sizov 4640b553a2
Merge pull request #75260 from rburing/fix_collide_shape_return
Fix `collide_shape` return type
2023-03-25 13:54:05 +01:00
Ricardo Buring 61429a5f49 Fix collide_shape return type
Fix PhysicsDirectSpaceState3D::_collide_shape return type.
Also PhysicsDirectSpaceState2D::_collide_shape.
2023-03-23 16:16:23 +01:00
bruvzg ab94024ce1
[DisplayServer] Implement screen_get_image method for LinuxBSD/X11, macOS and Windows. 2023-03-20 14:58:21 +02:00
Bradley Clemetson 2302c7102f
Allow for external python scripts to call the build python headers via external scripts
Change GLES3 to not use a relative path
Make the parameters more explicit and ensure the shaders generated are not using relative paths
2023-03-19 21:18:52 -07:00
Yuri Sizov a7d0e18a31
Merge pull request #74861 from rburing/restore_trimesh_ccd
Revert attempted fix of trimesh CCD
2023-03-17 10:56:44 +01:00
Yuri Sizov 98d95f3a0e
Merge pull request #74149 from bruvzg/get_char
[Font] Implement `get_char_from_glyph_index` function.
2023-03-16 13:07:11 +01:00
Yuri Sizov ded38c5d75
Merge pull request #73839 from clayjohn/OUTPUT_IS_SRGB
Clean up OUTPUT_IS_SRGB redefinitions
2023-03-16 13:03:37 +01:00
James Christie 68149328f1 Set value of line_point_count outside of initialization 2023-03-16 01:20:41 -04:00
Bastiaan Olij e31c2e4277 Add a get_system_info method to XRInterface 2023-03-15 13:11:48 +11:00
Danil Alexeev ba985ecf3f
Fix `draw_multiline_colors()` for `width < 0` 2023-03-14 09:43:56 +03:00
Ricardo Buring bec1182093 Revert attempted fix of trimesh CCD 2023-03-13 13:54:10 +01:00
Rémi Verschelde 0333b4a266
Merge pull request #74708 from BastiaanOlij/fix_rd_texture
Merge duplicate rd_texture functions
2023-03-10 22:48:19 +01:00
Rémi Verschelde 0c59e0c35b
Merge pull request #74707 from mihe/recovery-as-collision
Add `recovery_as_collision` to extension binding of `_body_test_motion`
2023-03-10 14:06:38 +01:00
Rémi Verschelde 123af87bc8
Merge pull request #74671 from mihe/motion-bindings
Fix extension bindings for motion collision/result structs
2023-03-10 14:04:40 +01:00
Rémi Verschelde 4779389d3a
Merge pull request #74242 from mihe/pick-ray
Add `pick_ray` parameter to extension binding of `intersect_ray`
2023-03-10 14:02:43 +01:00
Rémi Verschelde 0511da260f
Merge pull request #74019 from BastiaanOlij/split_last_effects
Move roughness limiter and sort into their own classes
2023-03-10 14:02:14 +01:00
Bastiaan Olij 70dca9ff55 Merge duplicate rd_texture functions 2023-03-10 21:37:01 +11:00
Mikael Hermansson 1bad2e30ee Add `recovery_as_collision` to extension binding of `_body_test_motion` 2023-03-10 09:37:21 +01:00
Mikael Hermansson be64ffd25d Fix extension bindings for motion collision/result structs 2023-03-09 17:31:56 +01:00
Bastiaan Olij a8ec72cf94 Move roughness limiter and sort into their own classes 2023-03-09 21:58:55 +11:00
Rémi Verschelde d150bb84a6
Merge pull request #74566 from clayjohn/GL-canvas-texture
Avoid copying CanvasTexture when updating proxy
2023-03-08 08:59:04 +01:00
Rémi Verschelde 23bbf6b37c
Merge pull request #74533 from SlugFiller/fix-clip-no-children
Fixes a canvas item set to clip children being drawn as black if no children are visible
2023-03-08 08:57:00 +01:00
Rémi Verschelde a0ff87f48d
Merge pull request #74416 from SlugFiller/fix-skeleton2d-aabb
Fix AABB calculation for meshes using Skeleton2D
2023-03-08 08:56:12 +01:00
Rémi Verschelde 1a5239ff1e
Merge pull request #74349 from JohanAR/fix-instance-uniforms
Fix instance uniforms breaking when setting a new mesh.
2023-03-08 08:55:48 +01:00
smix8 217a27014b Fix NavigationServer internals still using float instead of real_t
Fixes that some NavigationServer internals still used float instead of real_t in some parts.
2023-03-07 22:10:48 +01:00
clayjohn 84482ef90b Avoid copying CanvasTexture when updating proxy 2023-03-07 12:48:32 -08:00
SlugFiller f25508befb Fixes a canvas item set to clip children being drawn as black if no children are visible 2023-03-07 09:53:26 +02:00
Rémi Verschelde 5f2137a050
Merge pull request #74087 from bruvzg/get_screen_px
[DisplayServer] Implement screen_get_pixel method for LinuxBSD/X11, macOS and Windows.
2023-03-06 21:58:58 +01:00
SlugFiller 06a1fe0364 Fix AABB calculation for meshes using Skeleton2D 2023-03-05 08:21:08 +02:00
Johan Aires Rastén 26aecbfe57 Fix instance uniforms breaking when setting a new mesh.
Fixes #58113
2023-03-04 11:49:18 +01:00
Fabio Iotti 528e0d095e Error on hint_normal_roughness_texture and hint_depth_texture outside of spatial shader 2023-03-03 21:36:48 +01:00
Rémi Verschelde 61d2c85511
Merge pull request #74269 from clayjohn/RD-more-timestamps
Add a few more rendering timestamps
2023-03-03 11:09:27 +01:00
Rémi Verschelde 7bb68278bb
Merge pull request #74151 from BastiaanOlij/add_world_origin_prop
Add XRServer.world_origin property
2023-03-03 11:05:21 +01:00
clayjohn 1adc4e5875 Add a few more rendering timestamps 2023-03-02 18:15:21 -08:00
Mikael Hermansson fb3454a3ec Add `pick_ray` parameter to extension binding of `intersect_ray` 2023-03-02 18:00:03 +01:00
Rémi Verschelde 31eccb5501
Merge pull request #74150 from BastiaanOlij/fix_mobile_msaa_2d
Use MSAA 2D texture in multipass tonemapper
2023-03-02 11:42:13 +01:00
Rémi Verschelde 29723da272
Merge pull request #73919 from RandomCatDude/volumefog-spotlight-fix
Fix spotlight shadows in volumetric fog
2023-03-02 11:23:24 +01:00
Bastiaan Olij fd8f26f26e Add XRServer.world_origin property 2023-03-01 22:18:47 +11:00
Bastiaan Olij 903aa0e385 Use MSAA 2D texture in multipass tonemapper 2023-03-01 18:59:59 +11:00
bruvzg e7647b5ee5
[DisplayServer] Implement screen_get_pixel method for LinuxBSD/X11, macOS and Windows. 2023-03-01 09:32:23 +02:00
bruvzg 8459aeaab0
[Font] Implement `get_char_from_glyph_index` function. 2023-03-01 09:29:11 +02:00
Rémi Verschelde 0cd1483132
Merge pull request #73959 from clayjohn/GL-mobile-warnings
Add warnings for unsupported features in mobile and gl_compatibility backends
2023-02-26 21:39:06 +01:00
clayjohn c69b14e96e Add warnings for unsupported features in mobile and gl_compatibility backends 2023-02-26 12:28:02 -08:00
bruvzg bbc77b6d29
Fix text server GDExtension build. 2023-02-26 18:38:22 +02:00
bitsawer 35c970f4f6 Fix shader preprocessor include resource check 2023-02-26 13:59:29 +02:00
RandomCatDude 59c31004f8 fix spotlight shadows in volumetric fog 2023-02-25 16:28:06 +05:00
smosages 786ad514df Move ShaderWarning definitions into rendering_server 2023-02-25 12:14:25 +01:00
Bastiaan Olij 4c2f33cfae Fixing issues with SSIL artifacts 2023-02-24 16:13:18 +11:00
clayjohn 316cf04059 Clean up OUTPUT_IS_SRGB redefinitions 2023-02-23 12:56:42 -08:00
Bastiaan Olij 467d735eb1 Fix issue with default textures requiring arrays when using multiview 2023-02-22 16:50:58 +11:00
Rémi Verschelde 1fc28fe31f
Merge pull request #73698 from clayjohn/SS-bias
Increase SSAO and SSIL bias to account for variance in mipmap generation
2023-02-21 21:16:07 +01:00
Rémi Verschelde 5e57205365
Merge pull request #73478 from NewDefectus/master
Use the original canvas to calculate light positioning
2023-02-21 21:14:51 +01:00
clayjohn db9dfb7233 Increase SSAO and SSIL bias to account for variance in mipmap generation 2023-02-21 10:25:33 -08:00
Alon Ran 2d7db30f0d Use the original canvas to calculate light positioning 2023-02-21 11:57:16 +02:00
Yuri Rubinsky 94831c7209 Forbid passing multiview sampler to the custom function in shaders 2023-02-21 11:23:17 +03:00
Rémi Verschelde 02e5da2cc5
Merge pull request #72917 from rburing/fix_trimesh_ccd
Fix CCD in case of multiple supports in motion direction
2023-02-20 15:40:56 +01:00
Rémi Verschelde 9583c20171
Merge pull request #70515 from stmSi/fix-hanging-audio-pitch-scale
Fix hanging if audiostream's pitch_scale is NaN
2023-02-17 14:06:55 +01:00
Rémi Verschelde b2584629c8
Merge pull request #73195 from timothyqiu/weblate-comments
Improvements and fixes based on Weblate comments
2023-02-17 09:55:39 +01:00
Rémi Verschelde 4a1913fc17
Merge pull request #68181 from MarianoGnu/fix-convex-hull-crash
Avoid memory corruption when GodotConvexPolygonShape3D is setup more than once
2023-02-17 00:33:47 +01:00
Rémi Verschelde eb1af0d95f
Merge pull request #73420 from clayjohn/SSAO-half-size
Fix sampling bug when SSAO is using half size
2023-02-17 00:32:32 +01:00
Rémi Verschelde 2d845ee3d1
Merge pull request #73437 from bruvzg/docs_ignore_import_v
Exclude platform dependent `rendering/textures/vram_compression/import_*` default values from documentation.
2023-02-16 18:34:44 +01:00
Rémi Verschelde 6b7c0a1f2a
Merge pull request #73250 from smix8/fix_navigation_debug_script_toggle_4.x
Fix navigation debug not toggleable in scripts
2023-02-16 18:32:39 +01:00
bruvzg 041f559da1
Exclude platform dependent `rendering/textures/vram_compression/import_*` default values from documentation. 2023-02-16 15:48:09 +02:00
smix8 aecad7bb25 Fix navigation debug not toggleable in scripts
Fixes that navigation debug was not toggleable in script while even the docs mentioned it.
2023-02-16 11:12:48 +01:00
clayjohn c9c14410e9 Fix sampling bug when SSAO is using half size 2023-02-16 00:37:12 -08:00
Rémi Verschelde 5b6c9c66a4
Android: Default Min SDK to 24 for Vulkan mobile
Users can still go down to 21 when using GL Compatibility.
This makes the default behavior match the default renderer, and thus avoids
a warning in the out of the box experience.

Also mark texture compression settings as basic, since out of the box users
who want to export to Android will need to enable ETC2/ASTC manually.
2023-02-15 14:32:54 +01:00
clayjohn f35ca4a9c7 Properly calculate lifetime_split for particles 2023-02-14 14:37:47 -08:00
smix8 f1026450bf Unbind NavigationServer3D.process()
Unbinds NavigationServer3D.process().
2023-02-14 21:21:36 +01:00
Rémi Verschelde 1a206d0e22
Merge pull request #73263 from clayjohn/render_priority
Notify mesh surface when render_priority changes
2023-02-14 11:05:28 +01:00
clayjohn d3b3419aff Notify mesh surface when render_priority changes
This ensures that the mesh properly takes render_priority into account when changed
2023-02-13 18:09:33 -08:00
Rémi Verschelde 0668e0f5a9
Merge pull request #69001 from dzil123/fix_rendering_checks
Fix various missing rendering parameter checks
2023-02-13 21:07:05 +01:00
Rémi Verschelde e78b77481e
Merge pull request #73240 from myaaaaaaaaa/worker-h
Move some `worker_thread_pool.h` includes out of header files
2023-02-13 21:05:57 +01:00
myaaaaaaaaa 6f88392d02 Move some worker_thread_pool.h includes out of header files 2023-02-13 14:02:01 -05:00
Rémi Verschelde 3815903119
Merge pull request #72838 from BastiaanOlij/update_screen_space_render_buffers
Add render buffer support to screen space effects
2023-02-13 19:15:48 +01:00
Rémi Verschelde c144919a74
Merge pull request #73208 from smix8/fix_navigationregion2d_debug_4.x
Fix 2D navigation debug visuals ignoring half the ProjectSettings
2023-02-13 12:58:09 +01:00
smix8 2b19c70664 Fix 2D navigation debug visuals ignoring half the ProjectSettings
Fixes that NavigationRegion2D and TileMap debug visuals ignored more or less half the ProjectSetting. E.g. random color could not be disabled, edges did not display.
2023-02-13 11:42:23 +01:00
Haoyu Qiu 84aee17901 Improvements and fixes based on Weblate comments
* Description of `ui_text_submit` action should be "Submit Text" instead of "Text Submitted".
* Spell out "Animation" instead of using "Anim.".
* Treat "Max" as regular word instead of writing "Max.".
* Use generic "Set %s" for action name instead of a dedicated "Set target_position".
* Add translator comment for:
    * "Inclusive" and "Self" in the profiler.
    * Places where it needs the context about being an editor progress label.
    * "Duplicated Animation Name" since it's refering to the new name of a duplicated animation.
    * Disambiguation of "View Plane Transform", "Paste Selects" and "Display Normal".
* Fix wrong undo action name for renaming an input action.
* Fix missing end quote in a shader error message.
* In class reference:
    * Fix duplicated "if" in the description of `signf()`.
    * Fix mismatched example output in `String.operator %()`.
    * Fix typo in the description of `Decal.texture_emission`.
    * Unify description of `String.match()` and `StringName.match()`.
2023-02-13 15:22:18 +08:00
Anthony Cossins ae282e9b7d Fix return type for collide_shape to use PackedVector3Array 2023-02-12 23:32:13 +00:00
Rémi Verschelde bd92f124f7
Merge pull request #73060 from clayjohn/screen_texture-size
Avoid inserting screen_texture compatibility code when using textureSize
2023-02-11 14:37:30 +01:00
Rémi Verschelde 6442cb948e
Merge pull request #73031 from DarkKilauea/allow-no-navigation-module
Allow compiling out the navigation module
2023-02-11 14:37:06 +01:00
clayjohn 6c1c71d68b Avoid inserting screen_texture compatibility code when using textureSize 2023-02-10 13:03:02 -08:00
clayjohn 4317f6236f Do clear request before reading from render target when using CANVAS_BG 2023-02-10 12:12:34 -08:00
Rémi Verschelde ed85a2c8ce
Merge pull request #70663 from EpEpDragon/feature_buffer_get_data_size_option
Add optional size parameter to the RenderDevice buffer_get_data method.
2023-02-10 18:49:28 +01:00
Ricardo Buring 2290f3b6a4 Fix CCD in case of multiple supports in motion direction
For example, an axis-aligned box under the influence of gravity landing
on a horizontal triangle could previously tunnel, because only one of
the supports of the box was considered to be the candidate point that
would collide first. Now all supports are considered as candidates.

Also fix CCD always pushing the fast body into the other body, which
works well for convex shapes but not for trimesh/concave shapes.
2023-02-10 09:55:16 +01:00
Josh Jones f978d74fd0 Allow compiling out the navigation module 2023-02-09 23:04:16 -08:00
Bastiaan Olij 694c8ec273 Add render buffer support to screen space effects 2023-02-10 10:27:59 +11:00
Markus Sauermann d249370cd7 Fix crash in editor when setting `SubViewport.size` to zero
`Viewport::_set_size` now verifies, that the minimum size is at least 2x2.
Also fix `RendererViewport::viewport_set_size` fail condition.
2023-02-10 00:25:45 +01:00
Rémi Verschelde d02a7bc00d
Merge pull request #72953 from timothyqiu/i18n-improvements
Improve some editor strings for localization
2023-02-09 12:38:17 +01:00
Haoyu Qiu a40ccc2d7e Improve some editor strings for localization 2023-02-09 19:32:02 +08:00
Emmanouil Papadeas c36460060e
Further refactoring to AudioDriver implementations after #69120.
- Rename all instances of `capture_start()` and `capture_end()` to their new
  names. Fixes #72892.
- More internal renames to match what was started in #69120.
- Use `override` consistently so that such refactoring bugs can be caught.
- Harmonize the order of definition of the overridden virtual methods in each
  audio driver.
- Harmonize prototype for `set_output_device` and `set_input_device`.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-02-09 11:02:00 +01:00
clayjohn 04a9933f2e Mark fma function as high end so it isn't used with the gl_compatibility renderer 2023-02-08 12:56:15 -08:00
Rémi Verschelde 743e26d4f9
Merge pull request #72829 from Sauermann/fix-code-simplifications
Some code simplifications
2023-02-07 16:30:22 +01:00
Markus Sauermann 826e54fa73 Some code simplifications
1. `number_width` isn't used later
2. `return_type` is used only once
3. AudioServer::get_singleton()->get_channel_count() always returns a channel_count of 1 or larger
4. negative `aa->backward` conditional
5. `current_canvas` == `find_world_2d()->get_canvas()`
6. identical if `render_shadows`
2023-02-07 14:30:16 +01:00
Rémi Verschelde 1cd66a76fc
Merge pull request #72827 from RandomShaper/fix_slow_step
Pace debugger draw requests
2023-02-07 14:08:15 +01:00
Pedro J. Estébanez 31a4a0002e Pace debugger draw requests 2023-02-07 12:10:28 +01:00
clayjohn 56450fb179 Implement cull_mask for decals and lights in mobile and compatibility backends 2023-02-06 12:12:47 -08:00
Yuri Sizov 2bd5302704
Merge pull request #72695 from clayjohn/CanvasGroup-shading
Avoid shading CanvasGroup nodes twice
2023-02-04 21:38:25 +03:00
clayjohn dfbf439081 Avoid shading CanvasGroup nodes twice 2023-02-03 15:40:42 -08:00
Ricardo Buring 497f5576c1 Fix MultiMesh visible_instance_count being ignored after the first frame
Co-authored-by: Clay John <claynjohn@gmail.com>
2023-02-03 11:40:39 -08:00
Rémi Verschelde 4aec884b96
Merge pull request #72643 from clayjohn/CL-blend-mode
Expose RenderingServer.canvas_light_blend_mode
2023-02-03 06:26:20 +01:00
Rémi Verschelde ddca070bea
Merge pull request #72631 from rburing/custom_aabb_update_dependency
Notify dependencies when setting custom mesh AABB
2023-02-03 06:24:51 +01:00
Rémi Verschelde ec3adb93f7
Merge pull request #72589 from BastiaanOlij/add_layer_slice_support
Add layer slice support to render device and render buffers
2023-02-03 06:24:43 +01:00
Rémi Verschelde 8ef01ee5df
Merge pull request #72604 from rbessems/rbessems/env_blend_mode
Add XR Environment Blend Mode Support
2023-02-03 06:24:30 +01:00
clayjohn 13488b4260 Expose RenderingServer.canvas_light_blend_mode
This appears to have been missed in the refactor
2023-02-02 19:12:27 -08:00
Bastiaan Olij 093289364f Add layer slice support to render device and render buffers 2023-02-03 09:48:56 +11:00
Ricardo Buring 086b9e0c59 Notify dependencies when setting custom mesh AABB
Fixes SoftBody3D culling issues.
2023-02-02 23:31:27 +01:00
Rémi Verschelde 9caf691c89
Merge pull request #72494 from Chaosus/shader_fix_const_init
Fix shader failure when using non-const initializer on a constant
2023-02-02 21:05:27 +01:00
Ron Bessems d7d171c45c Add XR Environment Blend Mode Support 2023-02-02 12:18:42 -05:00
Rémi Verschelde e52213e2fa
More codespell fixes, do more changes from previous ignore list 2023-02-01 12:11:36 +01:00
Yuri Rubinsky e034d5f764 Fix shader failure when using non-const initializer on a constant 2023-02-01 13:03:11 +03:00
Rémi Verschelde 7990b76ad8
Merge pull request #63829 from clayjohn/VULKAN-disable-multiview
Disable multiview shader versions when xr is disabled
2023-02-01 07:58:32 +01:00
Rémi Verschelde e8240031e7
Merge pull request #71479 from raulsntos/virtual-return-type
Use enum instead of int in virtual methods return type
2023-02-01 07:45:28 +01:00
Rémi Verschelde ab4d8df163
Merge pull request #72485 from BastiaanOlij/add_eye_matrix_access
Expose EYE_OFFSET to gdshader code
2023-02-01 07:33:18 +01:00
Rémi Verschelde 0ba7e5a40a
Merge pull request #72464 from clayjohn/RD-skeleton-crash
Check if Skeleton exists before reading when calculating blend shapes
2023-02-01 07:31:42 +01:00
Rémi Verschelde 3eb1ac9fd2
Merge pull request #72075 from Maran23/extents-to-size
Replace Extents with Size in VoxelGI, ReflectionProbe, FogVolume, Decal  and GPUParticles*3D
2023-02-01 07:30:09 +01:00
Rémi Verschelde b7c0f613b5
Merge pull request #66076 from Sauermann/fix-double-physics-input-events-for-layers
Fix physics events being interpreted twice for nodes in canvas layer
2023-02-01 07:29:16 +01:00
Rémi Verschelde 67ab9d85d4
Merge pull request #71543 from smix8/navigation_agent_debug_4.x
Add NavigationAgent Path Debug Visualization
2023-02-01 07:23:24 +01:00
Bastiaan Olij 8c77aea9ab Expose EYE_OFFSET to gdshader code 2023-02-01 12:39:13 +11:00
Markus Sauermann 7e056f1b37 Fix physics events being interpreted twice when in canvas layer 2023-01-31 23:14:57 +01:00
Marius Hanl a59819630d Replace Extents with Size in VoxelGI, ReflectionProbe, FogVolume, Decal and GPUParticles*3D
- Extents are replaced by Size (Size is Extents * 2)
- The UI text displays 'Size'
- Snapping is adjusted to work with Size
- _set and _get handle extents for compatibility

Co-authored-by: ator-dev <dominic.codedeveloper@gmail.com>
2023-01-31 20:04:11 +01:00
clayjohn cdc6c00b5f Check if Skeleton exists before reading when calculating blend shapes 2023-01-31 10:10:31 -08:00
Raul Santos 9e9eac4676
Use enum instead of int in virtual methods return type 2023-01-31 19:06:49 +01:00
Rémi Verschelde 935a6ef46b
Merge pull request #72425 from smix8/default_physics_space_on_demand_only_4.x
Create default World physics spaces on demand only
2023-01-31 18:56:35 +01:00
smix8 0ab764e84b Add NavigationAgent Path Debug Visualization
Adds path debug visuals for NavigationAgent2D, NavigationAgent3D and NavigationServer.
2023-01-31 18:27:35 +01:00
smix8 026549db2e Create default World physics spaces on demand only
Changes that the default physics spaces of World resources are only created on first use.
2023-01-31 18:26:52 +01:00
souplamp 5300daaff2
Audio rename (device, capture_device) -> (output_device, input_device)
Change instances of audio properties 'device' to 'output_device',
and instances of audio properties 'capture_device' to 'input_device',
as well as their subsequent getter & setter functions.

Update the docs to reflect these changes, as well as the
3-to-4 converter for GDScript and CSharp to make proper
conversions (only exception is 'device' since that name
is too vague and might replace non-AudioServer related
instances, such as user comments and variables).

This does not change internal references to references like
'Render Client' and 'Capture Client' in WASAPI; such is outside the
scope of this commit. This also does not change ALSA's references,
considering that it uses 'device' to mean input and output
interchangeably.

Other references are changed, however where applicable,
to be consistent with the new AudioServer methods and property
names.
2023-01-31 18:25:11 +01:00
Rémi Verschelde 97de7f39e1
Merge pull request #72404 from clayjohn/RD-sky-crash
Fix various crashes relating to low roughness_layers
2023-01-31 10:54:41 +01:00
Rémi Verschelde dfb824c1d1
Merge pull request #72107 from rburing/separation_ray_normal
Fix separation ray normal direction
2023-01-31 10:54:34 +01:00
Rémi Verschelde c24e0065b2
Merge pull request #72433 from clayjohn/Pointlight2D-crash
Avoid crash when CanvasTexture used with light decal atlas
2023-01-31 10:54:02 +01:00
Rémi Verschelde c8446754dd
Merge pull request #72357 from aaronfranke/area-gravity-unit-dist
Replace Area gravity point distance scale with unit distance
2023-01-31 10:53:16 +01:00
Rémi Verschelde 628967e6ba
Merge pull request #72343 from clayjohn/editor-canvas-bg
Remove viewport_set_disable_environment in favor of viewport_set_environment_mode
2023-01-31 10:53:05 +01:00
clayjohn cfd5fe0f29 Avoid crash when CanvasTexture used with light decal atlas
The decal atlas is used for Light2Ds, decals, and Light3Ds
2023-01-30 20:59:53 -08:00
clayjohn 9071809021 Remove viewport_set_disable_environment in favor of viewport_set_environment_mode
This allows us to set a default value inherited by child viewports and have child viewports set the value themselves which is needed for disabling the environment in the editor
2023-01-30 12:25:49 -08:00
clayjohn bc64a734d3 Fix various crashes relating to low roughness_layers 2023-01-30 12:16:33 -08:00
Rémi Verschelde e9de988020
Merge pull request #72031 from reduz/change-high-quality-texture-import
Refactor high quality texture import
2023-01-30 20:41:01 +01:00
Rémi Verschelde 58a0c4c69e
Merge pull request #72393 from clayjohn/GLES3-normal-roughness-error
Add a shader error when trying to using hint_normal_roughness_texture in the gl_compatibility renderer
2023-01-30 20:26:50 +01:00
Rémi Verschelde e86953cb53
Merge pull request #72356 from BastiaanOlij/fix_ssao_ssil_probes
Fix SSAO/SSIl being applied to reflection probes
2023-01-30 20:26:43 +01:00
clayjohn 97ed3dcf71 Add a shader error when trying to using hint_normal_roughness_texture in the gl_compatibility renderer 2023-01-30 09:04:34 -08:00
Juan Linietsky 28f51ba547 Refactor high quality texture import
* Only two texture import modes for low/high quality now:
  * S3TC/BPTC
  * ETC2/ASTC
* Makes sense given this is the general preferred and most compatible combination in most platforms.
* Removed lossy_quality from VRAM texture compression options. It was unused everywhere.
* Added a new "high_quality" option to texture import. When enabled, it uses BPTC/ASTC (BC7/ASTC4x4) instead of S3TC/ETC2 (DXT1-5/ETC2,ETCA).
* Changed MacOS export settings so required texture formats depend on the architecture selected.

This solves the following problems:

* Makes it simpler to import textures as high quality, without having to worry about the specific format used.
* As the editor can now run on platforms such as web, Mac OS with Apple Silicion and Android, it should no longer be assumed that S3TC/BPTC is available by default for it.
2023-01-30 15:53:23 +01:00
Bastiaan Olij 43a63db7cf Fix SSAO/SSIl being applied to reflection probes 2023-01-30 15:20:27 +11:00
Aaron Franke 79215131b5
Replace Area gravity point distance scale with unit distance 2023-01-29 22:12:00 -06:00
Aaron Franke 866e2b95dc
Remove deprecated AREA_PARAM_GRAVITY_POINT_ATTENUATION 2023-01-29 22:12:00 -06:00
smix8 1bc2c7cb12 Create default World navigation maps on demand only
Changes that the default navigation maps of World resources are only created on first use.
2023-01-30 02:51:14 +01:00
Rémi Verschelde fca400450c
Merge pull request #72291 from clayjohn/GL-item-cap
Remove cap on number of items drawn in frame in 2D gl_compatibility renderer
2023-01-29 14:12:38 +01:00
clayjohn 0b28c1f8ed Remove cap on number of items drawn in frame in 2D gl_compatibility render
Also clean up some names to make the overall organization more clear

Also remove cap on items per batch
2023-01-28 20:36:17 -08:00
Rémi Verschelde 23d087354d
Merge pull request #72214 from clayjohn/Skeleton2D-pivot
Automatically transform Skeleton2D calculations so pivots are not needed
2023-01-29 02:23:18 +01:00
Rémi Verschelde 3a25148b9b
Merge pull request #72228 from DarkKilauea/nav-agent-callable
Use Callable for Navigation Agent callbacks
2023-01-28 15:58:49 +01:00
Josh Jones 22f9ef19e1 Use Callable for Navigation Agent callbacks 2023-01-27 23:14:36 -08:00
Yuri Rubinsky 2afa175195
Merge pull request #72174 from bitsawer/shader_include_fixes
Close undefined
Fix undefined
2023-01-28 09:54:41 +03:00
clayjohn eb9c2b878a Automatically transform Skeleton2D calculations so pivots are not needed 2023-01-27 14:55:22 -08:00
bitsawer 0acaccebaf Fix several shader preprocessor include issues 2023-01-27 14:37:55 +02:00
Zoee Silcock 29ec6e7b61 Add a note about the parameter that global menu callbacks require 2023-01-27 12:41:17 +01:00
Rémi Verschelde 6f7793ce1a
Merge pull request #71581 from clayjohn/dependency-changed
Flag dirty dependencies when GeometryInstance dependencies change in renderer
2023-01-26 22:57:32 +01:00
Rémi Verschelde 91ad92657e
Merge pull request #69689 from smix8/navagent_rename_location_4.x
Rename Navigation uses of 'location' to 'position'
2023-01-26 22:57:03 +01:00
Rémi Verschelde 3cacc83526
Merge pull request #72138 from clayjohn/GL-globals
Properly append global uniform buffer name in gl_compatibility shaders
2023-01-26 22:52:42 +01:00
Rémi Verschelde b2164ee75b
Merge pull request #72109 from Chaosus/shader_derivative
Add derivative functions with precision to shaders
2023-01-26 22:51:54 +01:00
clayjohn eefddb07bc Properly append global uniform buffer name in gl_compatibility shaders
Also error when using instance uniforms
2023-01-26 12:14:45 -08:00
Yuri Rubinsky 8c8c333bf2 Add derivative functions with precision to shaders 2023-01-26 20:53:46 +03:00
smix8 bf1571979c Rename Navigation uses of 'location' to 'position'
Contrary to the entire rest of the engine NavigationAgent's and NavigationLinks decided to deal with locations instead of positions.
2023-01-26 18:19:03 +01:00