v0.2.0
版本发布时间: 2021-06-30 14:55:06
facebookresearch/habitat-sim最新发布版本:v0.3.1(2024-03-16 07:11:47)
Major features and improvements:
- Introducing ArticulatedObject API via Bullet physics including: URDF file import, Revolute|Prismatic|Spherical joints with joint position/velocity/torque control, JointMotor control interface. (#1300, #1312, #1326, #1309, #1228, #1254)
- Rigid point-to-point and fixed frame constraints between objects. (#1328)
- Query detailed contact point information from previous collision detection pass (#1257).
- Customize collision groups and masks for objects with the CollisionGroupHelper. (#1280)
- New, user-friendly ManagedObject interface deprecates previous ID-based interface through Simulator class. Now apply commands and set/query properties directly on objects. (#1189, #1246, #1286, #1288)
- RobotWrapper for defining high-level robot interface on top of ArticulatedObject API w/ initial Fetch robot platform example. (#1341)
- Option to enable asynchronous rendering via background thread for improved end-to-end performance in simulation heavy scenarios by overlapping CPU-side simulation and GPU-side rendering. (#1229)
- SceneDataset improvements:
- Automated scene instancing loads stage, rigid and articulated objects, lights, navmesh, etc... from scene config handle. (#1034, #1274)
- Support for glob wildcards
'*'
in config paths. (#1152) - User defined custom fields in JSON now passed through to programmatic structures. Cache your own metadata! (#1302)
- CSV information report output. See your full config system at a glance. (#1331)
- Reference assets (e.g., .glb) directly by filepath in configuration. (#1255)
- New utility
habitat_sim/utils/datasets_download.py
with versioning and custom data paths simplifies the asset download and setup process significantly. (#1198) - Hierarchical Sensor Framework re-design (#1064, #1098, #1090, #1117, #1138, #1118, #1159):
- Decouple sensors from agents.
- SensorFactory and VisualSensor hierarchy.
- Extensible design enables straightforward contribution of custom sensors.
- New spherical sensors with RGB, depth, and semantic rendering:
- CubeMaps (#1011, #1306)
- Optimized FishEye sensor with 5x speedup. (#1131, #1168, #1291, #1221)
- Equirectangular sensor. (#1179, #1187, #1221)
- Integrated VHACD to produce convex decompositions of mesh assets after import into Habitat-sim with .obj export. Optimize collision detection for your assets with a utility for configuring parameters and visualizing output. (#1055, #1294)
- New VoxelField data-structures supporting multiple layered data types and a variety of features, including (#1140, #1154, #1172):
- Automated boundary voxelization of stages and objects via VHACD.
- Scalar gradient vector field computation.
- Signed Distance Field (SDF) computation on boundary fields.
- Visualization of boundary voxels, heat maps, vector fields in object local frames.
- Frustum culling on inserted and physically simulated objects for faster rendering of staged and dynamic scenes. (#1095)
- Added a pre-process utility tool for basis compression of asset textures resulting in faster load and render times. (#1290)
Other improvements and bug fixes:
-
Stand-alone MetaDataMediator can be configured outside of a Simulator instance and provided during construction for more control + improvements. (#1099, #1243, #1265)
-
Option to specify
shader_type
for assets in configuration. (#1183) -
Option to scale all lights in a scene uniformly brighten or dim. (#1339)
-
Stages default to falt shading. (#1307)
-
Allow custom primitives to be re-constructed from their unique string key enabling de-serialization of procedural assets. (#1314)
-
Added a variety of automated code formatters and style checks to pre-commit, linters, and CI. (#1075, #1094, #1102, #1108, #1200, #1219, #1220, #1222, #1240, #1241, #1250, #1249, #1259, #1267, #1275, #1301, #1303, #1313, #1337)
-
Optimize CI testing and conda build with parallel execution (~6x test speedup). (#1238, #1239)
-
Add custom background clear color for VisualSensorSpec. (#1153)
-
Physics simulation benchmarking example utility (#1048)
-
Setup
pytest-benchmark
CI integration. (#1323) -
Better logging paradigm (ESP_CHECK) for C++ assertions which propagate failure message and stack trace to python. (#1111)
-
WebVR examples replaced with WebXR and improved controls (#1139)
-
Added some object instancing and physics functionality to JavaScript bindings (#1146, #1271)
-
Improved Viewer application features including:
- Depth and Semantic sensor visualization options. (#1066, #1207)
- Add interactive mouse mode with RigidConstraints and removed old-style interactive key-binds + default lighting override. (#1351)
- Serialization and loading of agent and sensor transforms. (#1180)
- Bullet debug draw toggle with
','
.
-
Added XML parsing support via tinyxml2. (#1137)
-
PrettyWriter and precision JSON export. (#1340)
-
Added Colab tutorial for easily visualizing asset turn-tables in Habitat-sim. (#1318)
-
Upgraded Magnum version to include a variety of new features and optimizations.
-
Upgraded Recast submodule. (#1194)
-
Change default lighting to better support PBR materials. (#1351)
-
Set render buffer properly based on sensor type to speed up rendering. (#1104)
-
Optimize PBR shader to improve speed. (#1320, #1317)
-
Various bug fixes, including:
- Set bounds correctly for programmatically recomputed NavMeshes. (#1192)
- Fix Mac driver bug for depth display (#1181)
- Correctly support vertex-colors for flat shaded assets. (#1289)
- De-duplicate sequential points in trajectory visualization. (#1316)
- Fixed and improved some doc-string issues. (#1281, #1204)
Corresponding Habitat-Lab v0.2.0 release.
Kudos to our community contributors: @vauduong @ScottCSteinhauser @ldcWV @Ram81 @naokiyokoyama @BlaiseRitchie