Commit graph

2334 commits

Author SHA1 Message Date
Rémi Verschelde
cbfa941061
Merge pull request #83365 from Malcolmnixon/fix-disabled-nav-region
Fix enabling NavigationRegion3D saved disabled
2023-10-16 13:00:35 +02:00
Malcolm Nixon
0646b230e4 Fix enabling NavigationRegion3D saved disabled
This PR fixes issue #83364 by always registering the region when it enters the tree, and instead using region_set_enabled to control whether its enabled. The same logical changes have been applied to NavigationRegion2D.
2023-10-14 23:17:57 -04:00
风青山
30904ed3bc Fix cannot update remote after disabling use_global_coordinates in RemoteTransform2D
Due to the optimization in `CanvasItem`, `global_transform` is only
updated when `get_global_transform()` is called, and then notify
`NOTIFICATION_TRANSFORM_CHANGED`. That is, in the case where
`global_transform` is not obtained, the notification will not be sent.

So we use `NOTIFICATION_LOCAL_TRANSFORM_CHANGED` in this case. Use in
combination to prevent certain optimizations.

Same change for `RemoteTransform3D`, to prevent the same optimization
from being used in `Node3D` in the future.
2023-10-15 00:16:52 +08:00
Rémi Verschelde
135fa1ef5d
Merge pull request #83179 from clayjohn/tangents-sanitize
Sanitize tangents when creating mesh surfaces to avoid triggering the compressed mesh path in the shader
2023-10-13 22:17:02 +02:00
Dario
a9a197d2dc Rewrite the GPU Lightmapper's indirect lighting logic to match Godot 3.5's CPU Lightmapper.
Port over the logic from Godot 3.5 for indirect lighting. This should fix many issues about indirect bounces causing more energy and improve the overall quality of the result.
2023-10-13 14:33:55 -03:00
clayjohn
e3d31837eb Sanitize tangents when creating mesh surfaces to avoid triggering the compressed mesh path in the shader 2023-10-13 08:54:49 -06:00
Rémi Verschelde
55282ddc10
Merge pull request #79527 from QbieShay/qbe/particles-rework
Particle internal refactor and additions for more artistic control
2023-10-10 22:48:50 +02:00
QbieShay
c228fe1a0d Particle internal refactor and additions for more artistic control
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Co-authored-by: Mew Pur Pur <85438892+MewPurPur@users.noreply.github.com>
Co-authored-by: Clay John <claynjohn@gmail.com>
2023-10-10 20:03:35 +02:00
bitsawer
416ef5ad1b Fix VoxelGI bake memory leak 2023-10-09 12:27:03 +03:00
kleonc
db6a8956b2 Make gizmo plugin handle SpriteBase3D instead of Sprite3D 2023-10-06 11:03:44 +02:00
clayjohn
51ed3aef63 Vertex and attribute compression to reduce the size of the vertex format.
This allows Godot to automatically compress meshes to save a lot of bandwidth.

In general, this requires no interaction from the user and should result in
no noticable quality loss.

This scheme is not backwards compatible, so we have provided an upgrade
mechanism, and a mesh versioning mechanism.

Existing meshes can still be used as a result, but users can get a
performance boost by reimporting assets.
2023-10-05 12:02:23 -06:00
Rémi Verschelde
72cdb0b4c5
Merge pull request #82393 from jrouwe/body_changed_state
Fix performance regression in RigidBody2D/3D and PhysicalBone3D
2023-10-04 15:35:30 +02:00
bitsawer
12a2177967 Fix notification thread guards 2023-10-02 19:31:54 +03:00
Hugo Locurcio
14f40ec70e
Tweak Gravity Scale property hints to make dragging more useful
This also allows a more precise step.
2023-10-01 20:01:46 +02:00
Yuri Sizov
7c23d4082b Merge pull request #82391 from warriormaster12/improve-skeleton_ik3D
Fix `SkeletonIK3D` editor preview when changing active node
2023-09-28 20:04:30 +02:00
Yuri Sizov
7ae0fa1083 Merge pull request #77496 from clayjohn/GLES3-shadows
Implement 3D shadows in the GL Compatibility renderer
2023-09-28 20:03:53 +02:00
clayjohn
cb7200b028 Implement 3D shadows in the GL Compatibility renderer 2023-09-28 09:39:26 +02:00
warriormaster12
ddf93f3f59 Make SkeletonIk3D node usable 2023-09-28 07:38:50 +03:00
Yuri Sizov
aa82cccc41 Merge pull request #81659 from DarioSamo/nlm-denoiser
Replace OIDN denoiser in Lightmapper with a JNLM denoiser compute shader.
2023-09-27 19:08:01 +02:00
Rémi Verschelde
545d1c0adb
Merge pull request #82416 from Calinou/decal-fix-clamp-extents
Fix Decal clamping to positive values not being applied to RenderingServer
2023-09-27 09:21:58 +02:00
Hugo Locurcio
a052d34129
Fix Decal clamping to positive values not being applied to RenderingServer
This means the Decal editor gizmo could be incorrect compared to the actual
rendering if you enter a negative value in the inspector.
2023-09-27 02:21:07 +02:00
Hugo Locurcio
fcbf7011cc
Make 3D editor gizmos and debug shapes ignore fog
This makes them easier to see in their intended colors in scenes with fog.
2023-09-27 00:54:57 +02:00
Jorrit Rouwe
eff7f27c48 Fixed performance regression in godot 4.2 in RigidBody2D/3D and PhysicalBone3D
After change c118256865 the body state is synched 2x, but this is only needed if _integrate_forces is overridden.

Adding this extra if increases the FPS by 2.5% in a heavy physics scene, see: https://github.com/godot-jolt/godot-jolt/discussions/611
2023-09-26 21:19:58 +02:00
Rémi Verschelde
571792cd9d
Merge pull request #81695 from bitsawer/fix_bone_attachment_signal
Fix BoneAttachment3D signal connection
2023-09-26 08:21:45 +02:00
Rémi Verschelde
538928b273
Merge pull request #81545 from bitsawer/fix_lightmap_gridmap_bake
Fix LightmapGI baking with GridMap
2023-09-26 08:20:29 +02:00
Dario
1b2b726502 Replace OIDN denoiser with a JNLM denoiser compute shader implementation. 2023-09-25 14:53:45 -03:00
Rémi Verschelde
e4cfd4e26a
Merge pull request #82195 from AThousandShips/radian_fix
Replace `radians` range hint with `radians_as_degrees`
2023-09-25 17:18:38 +02:00
A Thousand Ships
e45927b2f2 Replace radians range hint with radians_as_degrees 2023-09-25 08:50:19 +02:00
Rémi Verschelde
98747a9040
Merge pull request #78803 from EMBYRDEV/additional-mesh-import-options
Add layer, shadow and visibility range options to the Scene importer
2023-09-24 23:30:30 +02:00
Mikael Hermansson
ee9f41a12d Fix bindings of PhysicsServer3DRenderingServerHandler 2023-09-20 12:24:32 +02:00
Rémi Verschelde
04d2aa61a3
Merge pull request #81641 from MewPurPur/bus-go-brrrr-2
Add a `bus_renamed` AudioServer signal
2023-09-17 14:47:29 +02:00
Rémi Verschelde
f4d85d58f7
Merge pull request #80736 from Ughuuu/add-get-rid-to-joints
Expose the `get_rid` method of Joint2D and Joint3D
2023-09-17 14:47:04 +02:00
bitsawer
34574db5b9 Fix BoneAttachment3D signal connection 2023-09-15 17:35:12 +03:00
MewPurPur
f29b6e73c2 Add a bus_renamed AudioServer signal 2023-09-15 13:02:03 +03:00
A Thousand Ships
a29416e332 [Scene,Main] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-09-12 12:53:06 +02:00
Rémi Verschelde
5c43e4c1ef
Fix various typos with codespell
Using 2.2.6.dev180+ge3a2cfbd.
2023-09-12 08:54:18 +02:00
bitsawer
8c26da5460 Fix LightmapGI baking with GridMap 2023-09-11 15:15:40 +03:00
Dario
7dfb854556 Propagate error correctly when max texture size for lightmaps is too small.
Add error handling for BAKE_ERROR_LIGHTMAP_TOO_SMALL, which was previously ignored. Fixes #81453.
2023-09-11 09:14:39 -03:00
Yuri Sizov
58126e479c Introduce the concept of global theme contexts
This commit adds the default theme context, which replaces
the need to manually check the project and the default theme
all the time; simplifies related code.

It also adds framework for custom theme contexts, to be used
by the editor. Custom contexts can be attached to any node,
and not necessarily a GUI/Window node. Contexts do no break
theme inheritance and only define which global themes a node
uses as a fallback.

Contexts propagate NOTIFICATION_THEME_CHANGED when one of their
global themes changes. This ensures that global themes act just
like themes assigned to individual nodes and can be previewed
live in the editor.
2023-09-06 19:40:43 +02:00
Malcolm Nixon
22de1b31b5 Added XR tracking-state change signals
Add "pose_lost_tracking" signal to XRPositionalTracker.
Add "tracking_changed" signal to XRNode3D.
2023-09-03 12:17:16 -04:00
Rémi Verschelde
b272d7ed58
Merge pull request #81067 from bitsawer/fix_voxelgi_exposure
Fix VoxelGI CameraAttributes exposure normalization handling
2023-08-29 12:46:20 +02:00
Rémi Verschelde
ba1089689a
Merge pull request #80954 from bruvzg/sp_per_font
[Text Server] Store extra spacing of individual font variations.
2023-08-28 20:37:58 +02:00
bitsawer
c73e1f0d22 Fix VoxelGI CameraAttributes exposure normalization handling 2023-08-28 13:25:34 +03:00
Dragos Daian
f9435b6d72 Expose the get_rid method of Joint2D and Joint3D
update occurance of get_joint

Update documentation as per feedback.

update

update

Co-Authored-By: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-08-27 00:34:47 +03:00
Yuri Sizov
6ab34005ad Extract editor scene tabs into their own component 2023-08-24 12:24:29 +02:00
bruvzg
5453503697
[Text Server] Store extra spacing of individual font variations. 2023-08-24 11:58:12 +03:00
Yuri Roubinski
7fcb91f077 Implement conversion from CPUParticles to GPUParticles (3D/2D) 2023-08-19 11:58:57 +03:00
Rémi Verschelde
d81767495a
Merge pull request #80512 from mihe/global-basis
Add `global_basis` property to `Node3D`
2023-08-18 09:31:41 +02:00
Rémi Verschelde
e6e79255ed
Merge pull request #77943 from aaronfranke/mass-dist
Add Mass Distribution, Deactivation, Solver inspector property groups
2023-08-17 12:26:59 +02:00
Rémi Verschelde
37d213b24e
Merge pull request #79972 from smix8/navgenerator_multithreading_4.x
Add multi-threaded NavMesh baking to NavigationServer
2023-08-17 11:22:11 +02:00