Commit graph

4243 commits

Author SHA1 Message Date
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
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