Replace SdfLib with linear octree interpolation of TriangleMeshDistance.
Temporary changes to the octree: - Changed frame from mesh to geom Before change (tolerance 1e-3): ``` Simulation time : 2.34 s Steps per second : 4275 Realtime factor : 8.55 x Time per step : 233.9 µs Newton iters / step : 2.26 Contacts / step : 3.69 Constraints / step : 14.76 Degrees of freedom : 12 Dynamic memory usage : 0.7% of 14M ``` After change (6 octree levels): ``` Simulation time : 2.24 s Steps per second : 4472 Realtime factor : 8.94 x Time per step : 223.6 µs Newton iters / step : 2.47 Contacts / step : 3.37 Constraints / step : 13.49 Degrees of freedom : 12 Dynamic memory usage : 0.2% of 14M ``` PiperOrigin-RevId: 781019754 Change-Id: Ib15581244dfe9e571e1c6c2cac4a101cf3d8ba3d
This commit is contained in:
committed by
Copybara-Service
parent
e6c5715903
commit
b81f1db8af
@@ -58,9 +58,9 @@ set(MUJOCO_DEP_VERSION_benchmark
|
||||
CACHE STRING "Version of `benchmark` to be fetched."
|
||||
)
|
||||
|
||||
set(MUJOCO_DEP_VERSION_sdflib
|
||||
1927bee6bb8225258a39c8cbf14e18a4d50409ae
|
||||
CACHE STRING "Version of `SdfLib` to be fetched."
|
||||
set(MUJOCO_DEP_VERSION_TriangleMeshDistance
|
||||
2cb643de1436e1ba8e2be49b07ec5491ac604457
|
||||
CACHE STRING "Version of `TriangleMeshDistance` to be fetched."
|
||||
)
|
||||
|
||||
mark_as_advanced(MUJOCO_DEP_VERSION_lodepng)
|
||||
@@ -73,7 +73,7 @@ mark_as_advanced(MUJOCO_DEP_VERSION_Eigen3)
|
||||
mark_as_advanced(MUJOCO_DEP_VERSION_abseil)
|
||||
mark_as_advanced(MUJOCO_DEP_VERSION_gtest)
|
||||
mark_as_advanced(MUJOCO_DEP_VERSION_benchmark)
|
||||
mark_as_advanced(MUJOCO_DEP_VERSION_sdflib)
|
||||
mark_as_advanced(MUJOCO_DEP_VERSION_TriangleMeshDistance)
|
||||
|
||||
include(FetchContent)
|
||||
include(FindOrFetch)
|
||||
@@ -184,26 +184,19 @@ findorfetch(
|
||||
EXCLUDE_FROM_ALL
|
||||
)
|
||||
|
||||
option(SDFLIB_USE_ASSIMP OFF)
|
||||
option(SDFLIB_USE_OPENMP OFF)
|
||||
option(SDFLIB_USE_ENOKI OFF)
|
||||
findorfetch(
|
||||
USE_SYSTEM_PACKAGE
|
||||
OFF
|
||||
PACKAGE_NAME
|
||||
sdflib
|
||||
LIBRARY_NAME
|
||||
sdflib
|
||||
GIT_REPO
|
||||
https://github.com/UPC-ViRVIG/SdfLib.git
|
||||
GIT_TAG
|
||||
${MUJOCO_DEP_VERSION_sdflib}
|
||||
TARGETS
|
||||
SdfLib
|
||||
EXCLUDE_FROM_ALL
|
||||
)
|
||||
target_compile_options(SdfLib PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS})
|
||||
target_link_options(SdfLib PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS})
|
||||
if(NOT TARGET trianglemeshdistance)
|
||||
FetchContent_Declare(
|
||||
trianglemeshdistance
|
||||
GIT_REPOSITORY https://github.com/InteractiveComputerGraphics/TriangleMeshDistance.git
|
||||
GIT_TAG ${MUJOCO_DEP_VERSION_TriangleMeshDistance}
|
||||
)
|
||||
|
||||
FetchContent_GetProperties(trianglemeshdistance)
|
||||
if(NOT trianglemeshdistance_POPULATED)
|
||||
FetchContent_Populate(trianglemeshdistance)
|
||||
include_directories(${trianglemeshdistance_SOURCE_DIR})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(ENABLE_DOUBLE_PRECISION ON)
|
||||
set(CCD_HIDE_ALL_SYMBOLS ON)
|
||||
|
||||
Reference in New Issue
Block a user