You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Separated the collision set and potential computations. This allows us to more easily add new potentials in the future. This will require updating calls to compute_potential_*. See the tutorial for details.
Add a Barrier class to enable dynamic selection of barrier function.
Add a NarrowPhaseCCD class to enable dynamic selection of narrow-phase CCD method.
Updated Scalable CCD (i.e., Sweep and Tiniest Queue and CUDA Tight Inclusion CCD) to the unified repository with support for generic collision pairs.
Renamed SWEEP_AND_TINIEST_QUEUE to SWEEP_AND_PRUNE to reflect that it is a standard implementation of the sweep and prune algorithm (see, e.g., "Real-Time Collision Detection" [Ericson 2004])
Renamed SWEEP_AND_TINIEST_QUEUE_GPU to SWEEP_AND_TINIEST_QUEUE to reflect that it is the only existing implementation of the sweep and tiniest queue algorithm
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Highlights
compute_potential_*
. See the tutorial for details.Barrier
class to enable dynamic selection of barrier function.NarrowPhaseCCD
class to enable dynamic selection of narrow-phase CCD method.What's Changed
compute_potential_*
fromCollision
andCollisions
Potential
which represents computing the sum of individual potentials per collisionBarrierPotential
andFrictionPotential
Collisions
serve solely as the set of active collisionsis_mollified()
functionEdgeEdgeCollision
overrides thiscompute_distance
andccd
from CollisionStencil which take the full mesh as inputBarrier
as an interface for generic barriersClampedLogBarrier
class which implements the smoothly clamped log barrier functions from [Li et al. 2020]barrier_gradient
andbarrier_hessian
renamed tobarrier_first_derivative
andbarrier_second_derivative
respectively-Werror=enum-conversion
and-Wfloat-conversion
IPC_TOOLKIT_WITH_CORRECT_CCD
withIPC_TOOLKIT_WITH_INEXACT_CCD
SpatialHash
camelCase
withsnake_case
inSpatialHash
andHashGrid
SWEEP_AND_TINIEST_QUEUE
toSWEEP_AND_PRUNE
to reflect that it is a standard implementation of the sweep and prune algorithm (see, e.g., "Real-Time Collision Detection" [Ericson 2004])SWEEP_AND_TINIEST_QUEUE_GPU
toSWEEP_AND_TINIEST_QUEUE
to reflect that it is the only existing implementation of the sweep and tiniest queue algorithmBarrierPotential(double)
andFrictionPotential(double)
as explicit constructors to avoid implicit conversions from doubleCollisionMesh
in Make faces an optional parameter to CollisionMesh #105tolerance
andmax_iterations
parameters withconst NarrowPhaseCCD& narrow_phase_ccd
parameterNarrowPhaseCCD
is a virtual class containing the CCD methods for point-point, point-edge, edge-edge, and point-triangle CCDNarrowPhaseCCD
is implemented byInexactCCD
,TightInclusionCCD
, andAdditiveCCD
classesis_step_collision_free
andcompute_collision_free_stepsize
is changed fromNew Contributors
Full Changelog: v1.2.1...v1.3.0
This discussion was created from the release v1.3.0.
Beta Was this translation helpful? Give feedback.
All reactions