Feature/box2d v3 on rr upstream#39
Open
sabarish-prasannna wants to merge 81 commits into
Open
Conversation
…ation performance suffers a lot without optimizations enabled
…lugin from their rr-devl branch
Signed-off-by: Emiliano Borghi <emiliano.borghi@gmail.com>
Laser scan cherry pick
Fix ground truth Tf changing parent frame
Version bump of flatland metapackage
reorder include dirs to fix overlay builds
…mentation and defaults
…ration-limit Fix uninitialized acceleration limit, and add unit tests to TricycleDrive plugin
Clean up lidar flip param, and re-introduce CI testing for ros1
Per package licenses
Add missing std srvs
* Allows turning off the tf broadcaster of base_link ("body" link)
to odom in cases where the non-Flatland code provides this
transform.
* Improved debugging output of FlatlandViz::addTool
…adcast-optional Make diff drive plugin tf broadcasting a configurable option
Added IMU plugin.
version bumped to 1.4.0 for new IMU plugin
Fixed cmake warning on ros build farm, bumped version to 1.4.1
…gments for chain loops
…n speed up performance 10-20%, and is baseline faster at =0
Rebased all Rapyuta Robotics changes on top of avidbots/flatland master (74 upstream commits: IMU plugin, laser simplify_map, diff-drive TF option, performance improvements, version 1.4.1). RR changes preserved: - MessageServer: in-process pub/sub messaging (message_server.h/cpp) - Profiler: lightweight sim profiling (profiler.h + START/END_PROFILE in laser) - World YAML split: world.yaml + world_plugins.yaml separation (137 test files) - SimulationManager: LoadWorldEntities(), models_path_, world_plugins_path_, wait-for-map loop, ros::WallRate, ServiceManager as unique_ptr member - DiffDrive: enable_ground_truth_pub_ independent of enable_odom_pub_ - Restartable simulation, wall timer, service manager improvements Conflict resolutions: - laser.h/cpp: kept upstream upside_down_ (was flipped_) + always_publish_; activated START/END_PROFILE macros from rr-devel - diff_drive.h/cpp: kept upstream enable_odom_tf_pub_/twist_in_local_frame_; added rr-devel enable_ground_truth_pub_ as independent flag - simulation_manager.h: merged both field sets (Timekeeper/iterations + RR fields) - simulation_manager.cpp: took rr-devel (LoadWorldEntities restructuring) - layer.cpp: took upstream cv::inRange fix (occupied_thresh direction) - conestogo world.yaml: took upstream
Combines Box2D v3.1.0 migration (feature/box2d-v3) on top of rr-devel-on-upstream (upstream avidbots master + rr-devel changes). Box2D v3 changes (from feature/box2d-v3): - Migrate vendored Box2D 2.3.2 -> FetchContent Box2D v3.1.0 - Add enkiTS v2.10 multi-threaded task scheduler - Full API migration: b2Body*/b2Fixture*/b2Joint* -> opaque IDs - Replace contact callbacks with event polling (b2World_GetContactEvents) - Replace b2RayCastCallback with free-function ray cast callbacks - Wire enkiTS into b2WorldDef for multi-core physics solver - Remove ThreadPool from laser plugin (enkiTS handles threading) - Update all test files to v3 API - MessageServer, GetWorld, LoadWorldEntities, SlowSimTime, FastSimTime ported from rr-devel for flatland_interface/sootballs compatibility Conflict resolution (52 files, all took --theirs / box2d version): - All physics API rewrites, plugin implementations, test files Known gaps vs rr-devel-on-upstream (to add as follow-up if needed): - simulation_manager: models_path_/world_plugins_path_ (world plugins path split) reverted to single-arg MakeWorld; LoadWorldEntities is declared in world.h but not called from simulation_manager - diff_drive: enable_ground_truth_pub_ / enable_odom_tf_pub_ / twist_in_local_frame_ not present (box2d version uses old non-fast-sim API)
service_manager.cpp already references request.yaml_path which caused a compile error. The original feature/box2d-v3 branch had yaml_path, but it was overwritten during the rr-devel rebase onto upstream/master. Restoring the correct field name.
…field Three CI build failures: 1. simulation_manager.cpp:132: START_PROFILE undeclared - Missing #include <flatland_server/profiler.h> 2. simulation_manager.cpp:155: END_PROFILE undeclared - Same missing include (both macros live in profiler.h) 3. world.cpp:242: World has no member 'physics_position_iterations_' - Field was used in MakeWorld() 3-arg overload but not declared in world.h
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.