Commit graph

1314 commits

Author SHA1 Message Date
Rémi Verschelde f288a79482
Merge pull request #38224 from Calinou/increase-audiostreamplayer3d-unit-size
Increase the default AudioStreamPlayer3D unit size to 10
2021-06-03 16:56:38 +02:00
Haoyu Qiu 96fe795bdb Check cache_parent_physical_bone when rebuilding parent cache 2021-05-29 15:34:55 +08:00
TwistedTwigleg dbd17ebf30 SkeletonIK: Fixed issue where bones become detached if multiple SkeletonIK nodes are used
(Forward port of 3.X code for Godot 4)
2021-05-25 21:30:40 -04:00
Rémi Verschelde 9bc2ba3b64
Merge pull request #48955 from Calinou/editor-tweak-property-hints
Tweak dozens of editor property hints for consistency
2021-05-25 11:44:43 +02:00
Hugo Locurcio 87f503310b
Tweak dozens of editor property hints for consistency
- Update Viewport MSAA property hints to match the currently
  exposed values.
- Add some performance hints to property hints.
2021-05-25 02:50:35 +02:00
Rémi Verschelde 6894559fb7
Merge pull request #49034 from madmiraal/fix-doc-2177
Unexpose methods and property for binding children to Bones in Skeleton3D
2021-05-24 18:34:57 +02:00
Marcel Admiraal 65faa12fd3 Unexpose methods and property for binding children to Bones 2021-05-24 16:44:17 +01:00
Rémi Verschelde 9cf1d034a7
Merge pull request #48894 from reduz/gpu-particles-2d-2
Support for 2D particles to collide against SDF
2021-05-24 12:49:34 +02:00
reduz 789713b008 Support for 2D particles to collide against SDF
-Added SDF collision support for 2D particles
-Changed the SDF generation to be fully signed
2021-05-23 16:43:36 -03:00
kobewi 5605454981 Change frame_coords to Vector2i 2021-05-23 21:38:27 +02:00
trollodel fea75bb112 Fix crash on debug shapes update if CollisionObject3D is not in tree 2021-05-22 17:26:03 +02:00
Rémi Verschelde db4cf63482
Merge pull request #48860 from JohnM666/fix-basis-variant-initialization
Fix RigidBody3D.get_inverse_inertia_tensor() crash
2021-05-20 14:05:29 +02:00
Rémi Verschelde 4219a4cb6f
Fix typos with codespell
Using codespell 2.0.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
GIRD
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2021-05-20 12:38:56 +02:00
JohnM666 b19544e91d Fix #46282 Executing RigidBody3D.get_inverse_inertia_tensor() crashes Godot 2021-05-20 10:46:24 +03:00
Haoyu Qiu a701927d89 Fix ragdoll simulation when parent was readded to scene 2021-05-19 10:22:15 +08:00
Rémi Verschelde c340ed6394
Merge pull request #42742 from madmiraal/fix-12215
Return RID instead of Object id in area-body_shape_entered-exited signals.
2021-05-18 20:00:48 +02:00
Aaron Franke ab674a41aa
Area: Uncap the range for gravity and change the slider hints 2021-05-18 07:17:11 -04:00
kleonc ef589a7cd3 Fix accessing scene tree without checking: MeshInstance3D::create_debug_tangents, GIProbe::bake 2021-05-16 14:01:01 +02:00
Rémi Verschelde b283447bfd
Merge pull request #47348 from nekomatata/raycast-3d-collide-fix
Fix RayCast3D color in game with no collision
2021-05-12 22:13:08 +02:00
reduz 479391ef54 Fixes missng 2D engine bits
-Mesh2D now works
-MultiMesh2D now works
-Polygon2D now works
-Added hooks for processing 2D particles
-Skeleton2D now works

2D particles still not working, but stuff needed for it is now implemented.
2021-05-11 11:21:36 -03:00
trollodel a24c46e7a0 Use the correct method in shape_owner_remove_shape 2021-05-09 18:58:19 +02:00
Rémi Verschelde aac01456d1
Merge pull request #48175 from trollodel/collisionobject3d-no-mi
Create CollisionObject3D debug shapes using RS
2021-05-09 16:41:53 +02:00
TwistedTwigleg 446460eaf9 Fixes the SkeletonIK twisting issue by using the skeleton global pose without overrides 2021-05-08 16:11:45 -04:00
Hugo Locurcio 87d107bb11
Increase the default AudioStreamPlayer3D unit size to 10
This makes it easier to hear sound while setting up the node.

Since this changes the default value, this may break existing projects
slightly.

This also tweaks the Unit Size editor property hint for better usability.

See discussion in #25468.
2021-05-06 02:45:46 +02:00
trollodel 5b19c7de3f Create CollisionObject3D debug shapes using RS 2021-05-05 09:12:50 +02:00
Marcel Admiraal fcf8071ec9 Fix documentation following implementation of particle trails 2021-05-01 13:12:31 +01:00
reduz 90056460ad Implement Particle Trails
-Enable the trails and set the length in seconds
-Provide a mesh with a skeleton and a skin
-Or, alternatively use one of the built-in TubeTrailMesh/RibbonTrailMesh
-Works deterministically
-Fixed particle collisions (were broken)
-Not working in 2D yet (that will happen next)
2021-04-30 17:38:02 -03:00
Rafał Mikrut efcb097674 Prevent setting too big or too small Collision Mask and Layer 2021-04-30 17:19:04 +02:00
Rémi Verschelde 305b2a15bf
Merge pull request #48239 from akien-mga/goodbye-copymem
Core: Drop custom `copymem`/`zeromem` defines
2021-04-28 11:04:05 +02:00
Rémi Verschelde 95cfce661b
Merge pull request #48050 from JFonS/occlusion_culling 2021-04-27 19:07:12 +02:00
Rémi Verschelde 8247667a3e
Core: Drop custom copymem/zeromem defines
We've been using standard C library functions `memcpy`/`memset` for these since
2016 with 67f65f6639.

There was still the possibility for third-party platform ports to override the
definitions with a custom header, but this doesn't seem useful anymore.
2021-04-27 16:26:27 +02:00
smix8 67b4f9f76a Fix NavigationAgent3D not emitting "target_reached" Signal
Fix NavigationAgent3D not emitting "target_reached" Signal when reaching pathfinding target.
2021-04-27 12:31:50 +02:00
Rémi Verschelde e0c1cc702c
Merge pull request #38349 from asheraryam/convex-decompose-master
Create GDScript bindings for creating multiple-convex collision bodies [4.0]
2021-04-27 10:05:12 +02:00
asheraryam ecfbb0fd28 Expose creating multiple-convex-collision static bodies to GDScript 2021-04-27 06:56:04 +03:00
jfons 4d9d99bb82 Implement occlusion culling
Added an occlusion culling system with support for static occluder meshes.
It can be enabled via `Project Settings > Rendering > Occlusion Culling > Use Occlusion Culling`.

Occluders are defined via the new `Occluder3D` resource and instanced using the new
`OccluderInstance3D` node. The occluders can also be automatically baked from a
scene using the built-in editor plugin.
2021-04-23 21:45:23 +02:00
Rémi Verschelde 1a3d60944f
Merge pull request #47485 from rafallus/fix/rigidbody-crash
Fix crash on RigidBody _direct_state_changed
2021-04-23 16:02:26 +02:00
Rémi Verschelde a3fbc0b4e5
Merge pull request #48028 from smix8/issue_47337_broken_navagent3d_callback 2021-04-23 10:14:04 +02:00
rafallus cfa06f0f76 Unexpose _direct_state_changed in PhysicsBody
Removed _direct_state_changed bindings
Affects 2D and 3D nodes
Callbacks now use Callable
Tests were changed accordingly
2021-04-22 23:20:58 -05:00
Marcel Admiraal 071871b787 Move collision layer and mask into CollisionObject. 2021-04-20 10:38:42 +01:00
Rémi Verschelde aa677865e3
Merge pull request #47991 from LightningAA/regroup-area-inspector-4.0
`Area[X]D`: Put physics override parameters in their own group and document that areas can be used to influence audio
2021-04-20 09:54:07 +02:00
smix8 15bf337474 Fix broken NavigationAgent3D collision avoidance callback
Fix broken NavigationAgent3D collision avoidance callback
2021-04-19 23:48:28 +02:00
Juan Linietsky 2b730cad90 Use multiple threads to import.
- For now everything imports multithreaded by default (should work I guess, let's test).
- Controllable per importer

Early test benchmark. 64 large textures (importing as lossless, _not_ as vram) on a mobile i7, 12 threads:
Importing goes down from 46 to 7 seconds.

For VRAM I will change the logic to use a compressing thread in a subsequent PR, as well as implementing Betsy.
2021-04-19 14:12:22 -03:00
Lightning_A 80b1a29c46 Put physics override parameters in their own group and document that areas can be used to influence audio 2021-04-18 21:27:06 -06:00
Rémi Verschelde ba66569512
Merge pull request #47923 from smix8/issue_47850_4.x
Fix Skeleton3D.clear_bones_global_pose_override() not resetting global_bone_overrides properly
2021-04-16 08:45:10 +02:00
Rémi Verschelde 0c8ec72370
Merge pull request #47933 from TwistedTwigleg/skeletonik_changes_and_bug_fixes_regressionfix2
Changed SkeletonIK3D to clear bone overrides when stopping
2021-04-15 23:03:04 +02:00
TwistedTwigleg 9ebdf812df Changed SkeletonIK3D to clear bone overrides when stopping 2021-04-15 15:46:30 -04:00
smix8 d8b4a61678 fix skeleton (ik) not resetting global_bone_overrides properly
fix skeleton (ik) not resetting global_bone_overrides properly
2021-04-15 17:29:36 +02:00
Bastiaan Olij eca20c2038 Fix forgotten rename on surface material override 2021-04-15 20:47:38 +10:00
clayjohn 92731d292c Rename get_surface_material to get_surface_override_material 2021-04-14 20:24:03 -07:00
PouleyKetchoupp d7353c5d41 Fix crashes with CollisionObject debug shapes
MeshInstance added as child nodes for CollisionObject debug shapes can
be invalidated while deleting the collision object (child nodes are
deleted first), which caused accesses to invalid memory in
shape_owner_remove_shape that lead to random crashes.

Also optimized accesses to shapes to avoid copy-on-write on each
iteration.
2021-04-12 20:08:30 -07:00