Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

4 ➡️ 5 #272

Merged
merged 24 commits into from
Jul 18, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
1a98780
4.1.0 (#255)
chapulina May 3, 2021
966b7ec
[Citadel] Update tutorials (#204)
claireyywang May 3, 2021
1c04c60
Remove tools/code_check and update codecov (#257)
chapulina May 13, 2021
0ec547b
Integrate bullet into ign-physics3 (#208)
Blast545 May 20, 2021
04afa7d
Updated links to lines of code (#259)
Jun 8, 2021
817430b
Fix dart deprecation warning (#263)
scpeters Jun 17, 2021
8cc844f
2 ➡️ 3
chapulina Jun 17, 2021
01a3f49
2 ➡️ 3 (#262)
chapulina Jun 18, 2021
2c7b829
🎈 3.3.0~pre1 (#266)
chapulina Jun 18, 2021
020ed14
Use slip compliance API's available in upstream dartsim release (#265)
scpeters Jun 20, 2021
3ea5bb1
2 ➡️ 3
chapulina Jun 22, 2021
1a58f73
2 ➡️ 3 (#269)
chapulina Jun 22, 2021
583aef1
3 ➡️ 4 (#271)
chapulina Jun 22, 2021
a1a8f8b
Migrate Bullet to ign-physics4 (#271)
chapulina Jun 23, 2021
c6cdea6
3 ➡️ 4 (#271)
chapulina Jun 24, 2021
0860af0
Fix collision detection issue when using joints across nested models …
azeey Jun 24, 2021
a20dbba
Added Ellipsoid and Capsule shapes to TPE (#203)
ahcorde Jun 25, 2021
e21c8c9
Heightmaps 🏔️ (#218)
chapulina Jul 8, 2021
5b5207d
🎈 4.2.0~pre1 Prerelease (#277)
scpeters Jul 15, 2021
164f088
Add Gravity Feature, fix LinkFeatures_TEST (#275)
scpeters Jul 16, 2021
6676c88
Support FreeGroup features for nested models (#231)
azeey Jul 16, 2021
34dbb87
🎈 4.2.0 (#279)
chapulina Jul 16, 2021
6ccca59
4 ➡️ 5
chapulina Jul 17, 2021
c7c93ae
Merge branch 'main' into chapulina/4_to_5
scpeters Jul 18, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 14 additions & 5 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ project(ignition-physics5 VERSION 5.0.0)
#============================================================================
# Find ignition-cmake
#============================================================================
find_package(ignition-cmake2 2.1.0 REQUIRED)
find_package(ignition-cmake2 2.8.0 REQUIRED)

#============================================================================
# Configure the project
#============================================================================
ign_configure_project()
ign_configure_project(VERSION_SUFFIX)


#============================================================================
Expand All @@ -37,7 +37,7 @@ message(STATUS "\n\n-- ====== Finding Dependencies ======")
# Find ignition-common
ign_find_package(ignition-common4
COMPONENTS graphics profiler
REQUIRED_BY mesh dartsim tpe tpelib)
REQUIRED_BY heightmap mesh dartsim tpe tpelib bullet)
set(IGN_COMMON_VER ${ignition-common4_VERSION_MAJOR})

#--------------------------------------
Expand All @@ -62,7 +62,7 @@ ign_find_package(EIGEN3 REQUIRED)
#--------------------------------------
# Find SDFormat for the SDF features
ign_find_package(sdformat12
REQUIRED_BY sdf dartsim tpe)
REQUIRED_BY sdf dartsim tpe bullet)

#--------------------------------------
# Find dartsim for the dartsim plugin wrapper
Expand All @@ -78,6 +78,13 @@ ign_find_package(DART
PKGCONFIG dart
PKGCONFIG_VER_COMPARISON >=)

#--------------------------------------
# Find bullet for the bullet plugin wrapper
ign_find_package(IgnBullet
VERSION 2.87
REQUIRED_BY bullet
PKGCONFIG bullet
PKGCONFIG_VER_COMPARISON >=)

message(STATUS "-------------------------------------------\n")

Expand All @@ -92,7 +99,7 @@ set(IGNITION_PHYSICS_ENGINE_INSTALL_DIR
# Configure the build
#============================================================================
ign_configure_build(QUIT_IF_BUILD_ERRORS
COMPONENTS sdf mesh dartsim tpe)
COMPONENTS sdf heightmap mesh dartsim tpe bullet)


#============================================================================
Expand All @@ -115,3 +122,5 @@ ign_create_docs(
"${IGNITION-PLUGIN_DOXYGEN_TAGFILE} = ${IGNITION-PLUGIN_API_URL}"
"${IGNITION-MATH_DOXYGEN_TAGFILE} = ${IGNITION-MATH_API_URL}"
)

file(COPY ${CMAKE_SOURCE_DIR}/tutorials/img/ DESTINATION ${CMAKE_BINARY_DIR}/doxygen/html/img/)
56 changes: 56 additions & 0 deletions Changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,48 @@

### Ignition Physics 4.x.x (20XX-XX-XX)

### Ignition Physics 4.2.0 (2021-07-16)

1. Support FreeGroup features for nested models
* [Pull request #231](https://github.com/ignitionrobotics/ign-physics/pull/231)

1. Add Gravity Feature, fix LinkFeatures_TEST
* [Pull request #275](https://github.com/ignitionrobotics/ign-physics/pull/275)

1. Heightmaps 🏔️
* [Pull request #218](https://github.com/ignitionrobotics/ign-physics/pull/218)

1. Added Ellipsoid and Capsule shapes to TPE
* [Pull request #203](https://github.com/ignitionrobotics/ign-physics/pull/203)

1. Fix collision detection issue when using joints across nested models
* [Pull request #268](https://github.com/ignitionrobotics/ign-physics/pull/268)

1. Use slip compliance APIs available in upstream dartsim release
* [Pull request #265](https://github.com/ignitionrobotics/ign-physics/pull/265)

1. Fix DART deprecation warning
* [Pull request #263](https://github.com/ignitionrobotics/ign-physics/pull/263)

1. Integrate Bullet engine
* [Pull request #208](https://github.com/ignitionrobotics/ign-physics/pull/208)

1. Remove `tools/code_check` and update codecov
* [Pull request #257](https://github.com/ignitionrobotics/ign-physics/pull/257)

1. [Citadel] Update tutorials
* [Pull request #204](https://github.com/ignitionrobotics/ign-physics/pull/204)
* [Pull request #259](https://github.com/ignitionrobotics/ign-physics/pull/259)

### Ignition Physics 4.1.0 (2021-05-01)

1. [TPE] Update link pose and velocity
* [Pull request #179](https://github.com/ignitionrobotics/ign-physics/pull/179)

1. Infrastructure
* [Pull request #221](https://github.com/ignitionrobotics/ign-physics/pull/221)
* [Pull request #215](https://github.com/ignitionrobotics/ign-physics/pull/215)

### Ignition Physics 4.0.0 (2021-03-30)

1. Remove nested models
Expand Down Expand Up @@ -85,6 +127,20 @@

### Ignition Physics 3.x.x (20XX-XX-XX)

### Ignition Physics 3.3.0 (2021-06-18)

1. Fix DART deprecation warning
* [Pull request #263](https://github.com/ignitionrobotics/ign-physics/pull/263)

1. Integrate Bullet engine
* [Pull request #208](https://github.com/ignitionrobotics/ign-physics/pull/208)

1. Remove `tools/code_check` and update codecov
* [Pull request #257](https://github.com/ignitionrobotics/ign-physics/pull/257)

1. [Citadel] Update tutorials
* [Pull request #204](https://github.com/ignitionrobotics/ign-physics/pull/204)

### Ignition Physics 3.2.0 (2021-04-28)

1. Infrastructure
Expand Down
10 changes: 10 additions & 0 deletions Migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,16 @@ Deprecated code produces compile-time warnings. These warning serve as
notification to users that their code should be upgraded. The next major
release will remove the deprecated code.

## Ignition Physics 4.1 to 4.2

### Additions

1. Bullet: new plugin implementation.

1. Heightmap: Feature defined and implemented in dartsim.

1. TPE: Capsule and Ellipsoid shapes added.

## Ignition Physics 3.X to 4.X

### Modifications
Expand Down
74 changes: 74 additions & 0 deletions bullet/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# This component expresses custom features of the bullet plugin, which can
# expose native bullet data types.
ign_add_component(bullet INTERFACE
DEPENDS_ON_COMPONENTS sdf mesh
GET_TARGET_NAME features)

link_directories(${BULLET_LIBRARY_DIRS})
target_link_libraries(${features} INTERFACE IgnBullet::IgnBullet)

ign_get_libsources_and_unittests(sources test_sources)

# TODO(MXG): Think about an ign_add_plugin(~) macro for ign-cmake
set(engine_name bullet-plugin)
ign_add_component(${engine_name}
SOURCES ${sources}
DEPENDS_ON_COMPONENTS bullet
GET_TARGET_NAME bullet_plugin)

target_link_libraries(${bullet_plugin}
PUBLIC
${features}
${PROJECT_LIBRARY_TARGET_NAME}-sdf
${PROJECT_LIBRARY_TARGET_NAME}-mesh
ignition-common${IGN_COMMON_VER}::ignition-common${IGN_COMMON_VER}
ignition-math${IGN_MATH_VER}::eigen3)

# Note that plugins are currently being installed in 2 places: /lib and the engine-plugins dir
install(TARGETS ${bullet_plugin} DESTINATION ${IGNITION_PHYSICS_ENGINE_INSTALL_DIR})

# The library created by `ign_add_component` includes the ign-physics version
# (i.e. libignition-physics1-name-plugin.so), but for portability,
# we also install an unversioned symlink into the same versioned folder.
set(versioned ${CMAKE_SHARED_LIBRARY_PREFIX}${bullet_plugin}${CMAKE_SHARED_LIBRARY_SUFFIX})
set(unversioned ${CMAKE_SHARED_LIBRARY_PREFIX}${PROJECT_NAME_NO_VERSION_LOWER}-${engine_name}${CMAKE_SHARED_LIBRARY_SUFFIX})
if (WIN32)
# disable MSVC inherit via dominance warning
target_compile_options(${dartsim_plugin} PUBLIC "/wd4250")
INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E copy
${IGNITION_PHYSICS_ENGINE_INSTALL_DIR}\/${versioned}
${IGNITION_PHYSICS_ENGINE_INSTALL_DIR}\/${unversioned})")
else()
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink ${versioned} ${unversioned})
INSTALL(FILES ${PROJECT_BINARY_DIR}/${unversioned} DESTINATION ${IGNITION_PHYSICS_ENGINE_INSTALL_DIR})
endif()
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink ${versioned} ${unversioned})
INSTALL(FILES ${PROJECT_BINARY_DIR}/${unversioned} DESTINATION ${IGNITION_PHYSICS_ENGINE_INSTALL_DIR})

# Testing
ign_build_tests(
TYPE UNIT_bullet
SOURCES ${test_sources}
LIB_DEPS
${features}
ignition-plugin${IGN_PLUGIN_VER}::loader
ignition-common${IGN_COMMON_VER}::ignition-common${IGN_COMMON_VER}
${PROJECT_LIBRARY_TARGET_NAME}-sdf
${PROJECT_LIBRARY_TARGET_NAME}-mesh
TEST_LIST tests)

foreach(test ${tests})

target_compile_definitions(${test} PRIVATE
"bullet_plugin_LIB=\"$<TARGET_FILE:${bullet_plugin}>\""
"TEST_WORLD_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}/worlds/\""
"IGNITION_PHYSICS_RESOURCE_DIR=\"${IGNITION_PHYSICS_RESOURCE_DIR}\"")

endforeach()

if(TARGET UNIT_FindFeatures_TEST)

target_compile_definitions(UNIT_FindFeatures_TEST PRIVATE
"bullet_plugin_LIB=\"$<TARGET_FILE:${bullet_plugin}>\"")

endif()
Loading