Skip to content

Releases: needle-mirror/com.unity.physics

1.3.8

03 Dec 10:12
Compare
Choose a tag to compare

[1.3.8] - 2024-11-08

Removed

  • removing various material assets within unity/physics (PhysicsDynamicDebugMaterial.mat and Material.mat (HullGeneration scene)).

Fixed

  • Prevent collision instabilities with thin boxes through better choice of bevel radius when baking Unity.Physics.BoxColliders from built-in BoxCollider authoring components. Previously, the baked box could have collapsed to a quad due to excessive bevel radii, causing vibrations in the collision resolution.
  • Fixed an issue with collisions not getting re-enabled in Havok when deleting a joint that was disabling collisions between the affected rigid body pair.

1.3.5

14 Oct 17:13
Compare
Choose a tag to compare

[1.3.5] - 2024-10-04

Added

  • Motor Jacobians have access to the Jacobian header in the Solve methods now

Changed

  • Documentation updates
  • Updated Burst dependency to version 1.8.18
  • Updated Unity Test Framework dependency to version 1.4.5
  • Updated Mathematics dependency to version 1.3.2
  • Updated entities packages dependencies

Fixed

  • The "Use Spring" feature in the built-in HingeJoint now works correctly. Both the joint force values and the constraint relaxation parameters are set to the appropriate values in the underlying engine and the Unity Physics simulation behavior now closely matches the behavior in built-in physics.
  • Fixed a case that could lead to invalid data in the impulse handling within the LinearLimitJacobian
  • Limits in Hinge Joint authoring components, enabled via the "Use Limits" option, are now respected when the "Use Spring" option is also enabled.

1.3.2

17 Sep 00:12
Compare
Choose a tag to compare

[1.3.2] - 2024-09-06

Changed

  • Updated entities packages dependencies

Changed

  • Documentation updates
  • Updated Burst dependency to version 1.8.17
  • Updated Unity Test Framework dependency to version 1.4.5

Fixed

  • Fixed an issue with negative collider scales during baking. Negative scales in GameObjects are now correctly interpreted and can be used to correctly flip GameObjects together with their associated colliders.

1.2.4

15 Aug 12:11
Compare
Choose a tag to compare

[1.2.4] - 2024-08-14

Changed

  • Updated entities packages dependencies

1.3.0-pre.4

18 Jul 12:12
Compare
Choose a tag to compare

[1.3.0-pre.4] - 2024-07-17

Added

  • The collision tolerance in the CollisionWorld, which defines the minimum distance required for creating contacts between rigid bodies, is now configurable. The default value has been changed to a smaller, more performant value of 0.01 meters. If you observe any tunneling issues in your use case, please increase the value via the PhysicsStepAuthoring component.

Changed

  • Updated Burst dependency to version 1.8.16

Fixed

  • Prevent Entity.Null entries in the PhysicsColliderKeyEntityPair buffer of rigid body entities with compound colliders.

1.3.0-exp.1

17 Jun 10:15
Compare
Choose a tag to compare

[1.3.0-exp.1] - 2024-06-11

Added

  • Motors authored via built-in component, api, or custom component now use spring frequency and the damping ratio to fine-tune the motor behaviour.
  • New Collider.BakeTransform function which allows deforming a collider at runtime. This function is implemented for all collider types except the TerrainCollider and applies a provided affine transformation to the collider geometry, rotating, translating, scaling and shearing it accordingly. The geometric transformation will be either perfect for mesh types, or approximate for primitives. Specific deformations will be perfect even for primitives depending on the type of deformation and the primitive's parametrization. As such a BoxCollider with identity orientation in local space will be uniformly scaled, updating its width, height and length perfectly, if the provided affine transformation is a pure scaling matrix.
  • The broadphase can now be changed to operate incrementally using the PhysicsStepAuthoring component (see parameters Incremental Dynamic Broadphase and Incremental Static Broadphase), and the PhysicsStep Entities components. When the feature is enabled, the bounding volume hierarchy inside the broadphase, used for spatial acceleration during collision detection and for collider queries such as ray and collider casts, is no longer built from scratch every frame, but incrementally updated from one frame to the next. This can lead to drastic performance improvements for scenes with large numbers of rigid bodies of which only a very small subset changes between frames, that is, changes to rigid body transformations or colliders are rare. This feature can be enabled for dynamic bodies and static bodies separately, which makes it applicable to large and mostly static worlds with massive numbers of static rigid bodies and a reasonable number of dynamic bodies. By default this feature is disabled.
  • Through the new CompoundCollider.Update function, the shape or transformation of children in a compound collider can now be safely modified. By calling the provided function, the compound collider's bounding volume information and optionally also its mass properties are updated in accordance with the modifications of its child colliders, thereby ensuring correct behavior in collision detection and collider queries.
  • Added a new CollisionWorld.Clone() function which allows cloning a collision world and deep copying select colliders which otherwise would be shared across clones. Deep copying is important in cases where the collision world clone is used over multiple frames and colliders are modified, which is frequently the case in Netcode environments with lag compensation for physics queries (see Unity.NetCode.PhysicsWorldHistorySingleton). For these cases, the colliders which are likely to be modified or deleted (such as colliders in dynamic rigid bodies) can now be deep copied, ensuring independent collision world clones. Without deep copying in these cases, modifying colliders in the original collision world after having cloned it will inadvertently also affect the clone, which can lead to erroneous collision queries and crashes.
  • By setting the "Provides Contacts" option in built-in collider authoring components, users can now enable collision event reporting for physically simulated rigid bodies. The collision events can be received by using an ICollisionEventsJob.

Changed

  • When baking a built-in hinge joint as a rotation motor, the Joint.Motor.Force parameter must be non-zero. This value is baked into the maximum impulse of the motor.
  • Add missing [BurstCompile] attributes in the collider blob systems to ensure maximum performance.
  • In EnsureUniqueColliderBlobSystem, prevent extra delay in adding the required unique collider blob cleanup components by using a different ECB system. This change also batches the corresponding commands with the commands coming from other physics systems, preventing an unnecessary extra sync point in the overall simulation.

Fixed

  • Possible race condition in debug displays when modifying the geometry of colliders.
  • Prevent unnecessary memory allocations in builds due to the editor-only debug display.
  • Fixed errors caused by memory corruption when selecting mesh-based custom Physics Shape Authoring components in the editor.
  • Prevent slowdowns caused by physics analytics data gathering through job parallelization and by disabling the analytics jobs when editor analytics are disabled.
  • Prevent crash in debug display caused by dangling system pointer in certain cases.
  • Fully remove any trace of the integrity checks unless we are in the editor or in a development build.
  • Fixed an issue that prevented contacts in the Physics Debug Display to show up when Draw Contacts was enabled.

1.2.3

05 Jun 20:58
Compare
Choose a tag to compare

[1.2.3] - 2024-05-30

Changed

  • IntegrityChecks is now under ProjectSettings > Physics > Unity Physics > Enable Integrity Checks.
  • Updated entities packages dependencies

1.2.1

02 May 10:11
Compare
Choose a tag to compare

[1.2.1] - 2024-04-26

Changed

  • Updated Burst dependency to version 1.8.13
  • Updated entities packages dependencies

1.2.0

26 Mar 14:13
Compare
Choose a tag to compare

[1.2.0] - 2024-03-22

Fixed

  • Fix a number of memory leaks in the package and its test code.
  • Make sure that the ColliderBlobCleanupSystem does not dispose the same collider blob multiple times in Netcode environments, preventing a crash.

1.2.0-pre.12

28 Feb 11:14
Compare
Choose a tag to compare

[1.2.0-pre.12] - 2024-02-13

Added

  • ScheduleUpdateBroadphase and UpdateBroadphaseImmediate to update the Broadphase instead of doing a full rebuild.
  • ScheduleUpdateMotionData and UpdateMotionDataImmediate to update the pre-existing MotionData without recreating them.
  • BuildPhysicsWorldData.CompleteInputDependency method to complete the InputDependency if necessary.
  • Simulaton.ResetSimulationContext to make it possible reset the current simulation context.

Changed

  • Updated Burst dependency to version 1.8.12

Fixed

  • Fixed errors caused by memory corruption when selecting mesh-based custom Physics Shape Authoring components in the editor.

Updated

  • Upgraded Test Framework version to 1.4.3