Releases: facebookresearch/habitat-sim
v0.2.2
Major features and improvements:
- Add audio sensor via integration with RL Audio Propagation Engine (#1646, #1780, #1781) (doc page)
- Add Python interactive Viewer utility (#1519, #1538, #1551, #1555, #1558, #1629, #1631, #1632, #1706, #1704, #1707)
- Add FairMotion Interface examples for loading motion capture into Habitat-sim (#1552, #1557, #1560, #1561, #1578)
- Introduce new Habitat configurable logging framework and migrate from GLOG (#1411, #1428, #1431, #1435) (doc page)
- Refactor all C++ tests to CorradeTestSuite (#1476, #1477)
- Make habitat-sim PIP installable (#1440)
- Add nightly OSX Conda build (#1430)
- Image Based Lighting (IBL) prototype support for PBR shading (#1461, #1488, #1412)
- Add Bullet CollisionHelper utility (#1484)
- Add CollisionGroup overriding for BulletArticulatedObjects (#1597)
- Add get_joint_motor_torques function by @SimarKareer in #1585
- Rigid Object Instance Non-uniform scaling by @jturner65 in #1742
- Support user defined config values for ArticulatedObjects defined in JSON accompanying URDFs (#1458)
- Support Wildcard handling in SceneDataset config files (#1584, #1743)
- Support saving SceneInstance config files from current simulator state (#1568, #1416)
- Breaking Change: Remove all object manipulation functionality from Simulator API in favor of ObjectWrapper interface (#1574)
- Breaking Change: Upgrade minimum python version requirement to 3.7 (#1647)
- Breaking Change: Python module moved from
habitat_sim/
tosrc_python/habitat_sim/
by @erikwijmans in #1586
Datasets
- ReplicaCAD v1.1→v1.5 (#1681, #1685, #1694, #1729)
- YCB v1.2 (#1772)
- Replica-Dataset install and use directions updated (#1771)
- Support HM3D semantic textures (#1556, #1592, #1618, #1638, #1657, #1658, #1669, #1678, #1690, #1709)
- Support ScanNet asset importing (#1434)
- Remove SUNCG dataset support/references by @jturner65 in #1591
- Adding rearrange_pick_dataset_v1 by @vincentpierre in #1664
Other improvements and bug fixes:
Bugfixes
- [bugfix] fix consistent typo across many tutorial files by @aclegg3 in #1419
- [BugFix] Update download script to get most recent version of ReplicaCAD dataset by @jturner65 in #1398
- [bugfix] Fix missing reserve call for std::vector for ManagedContainer by @Skylion007 in #1425
- [bugfix] fix overlay_settings not being forwarded by @aclegg3 in #1422
- [Bugfix] Fix bugs in examples benchmarking by @Skylion007 in #1429
- [BUGFIX]Remove redundant method refs in log messages by @jturner65 in #1432
- [Bugfix]Clean up '0-as-null pointer' warnings by @jturner65 in #1442
- [BUGFIX] Do not set orientation based on file ext if default attributes provided, overrides default config for orientation. by @jturner65 in #1439
- [bugfix][viewer] Allow user to hide mouseinteraction text by @Skylion007 in #1444
- CollisionGroup::Noncollidable fix by @eundersander in #1449
- --Fix clang-tidy cast complaint in configuration. by @jturner65 in #1453
- --[BugFix]Fix erroneous ConfigStoredType checks by @jturner65 in #1456
- [bugfix] Fix bug in detecting if is_pip() by @Skylion007 in #1457
- [bugfix][colab] Dynamically pin numba to appropiate colab version by @Skylion007 in #1459
- Fix Double PathFinder by @erikwijmans in #1483
- [Bugfix]: make corrade plugins static by @Skylion007 in #1480
- [BugFix]--Address when Bullet is available but physics is not enabled. by @jturner65 in #1494
- [BugFix]--Fix improper JSON object access. by @jturner65 in #1493
- [Bugfix]--address segfaults by catching nullptr attribs and exiting gracefully by @jturner65 in #1515
- Fix semantic rendering by @erikwijmans in #1507
- Fix broken link in webxr hand demo docs by @eundersander in #1523
- Bugfix for Imgui assert on hiding FPS display by @eundersander in #1521
- Fixing macOS linking bug by @dhruvbatra in #1520
- (bugfix): Fix conda and docs nightly jobs by @Skylion007 in #1531
- [Bugfix]--Add default entries into configuration by @jturner65 in #1547
- [Bugfix/Refactor]--Fix .ply load limitations and bugs by @jturner65 in #1542
- Mobile Manipulator Bug Fix and Input Validation by @ASzot in #1537
- [BugFix]--bypass test_sensor tests if no torch is found. by @jturner65 in #1559
- [Bugfix]--Fix CatmullRom Traj off-by-ones; add multiple colorspaces gradient support by @jturner65 in #1571
- [Bugfix/Refactor]--Acquire render context on object removal; Cleanup superfluous add objects by @jturner65 in #1581
- [Bugfix/Refactor]--Some attributes fixes and improvements by @jturner65 in #1588
- [Bugfix]--Appropriately handle multiple meshes being assigned to the same transform node. by @jturner65 in #1609
- [Bugfix]--fix missing slots declarations of pimpl implementation refs. by @jturner65 in #1610
- Fix segfault on init failure by @erikwijmans in #1623
- --Viewer : minor bugs; refactor drawEvent by @jturner65 in #1621
- --Bug fixes: Navmesh building and reconfigure in viewer.py by @jturner65 in #1632
- [Bugfix]--Move .ply transform to before all potential vert-based calcs by @jturner65 in #1635
- [bugfix] - index torques by link DoF by @aclegg3 in #1637
- Fix performance issues with calc MOBB by @Skylion007 in #1648
- Fixes bug that only allow constraints to be set in one direction of a singular axis by @lucasosouza in #1645
- [Bugfix]--Support HM3D categories having commas between quotes by @jturner65 in #1652
- [Bugfix]-- Fix semantic color map binds (arrayView -> const ref) by @jturner65 in #1654
- [Bugfix]--Add "unknown" object corresponding to semantic ID 0 for HM3D; Refactors for Texture Semantics by @jturner65 in #1657
- [Bugfix]--verify directory is not empty before using it to save attributes by @jturner65 in #1668
- [Bugfix] Fix python bindings for OBB by @Skylion007 in #1670
- [BUGFIX]--fix replicaCAD quickstart to not default to showing the NONE scene by @jturner65 in #1682
- [Bugfix]--Verify that semantic scenes exist before reporting by @jturner65 in #1683
- Properly use texture transformation matrix for flat materials as well. by @mosra in #1688
- Fix noise model by @erikwijmans in #1684
- --General Bug fixes, Style Refactors and Improvements. by @jturner65 in #1698
- Mobile Manipulator Bug Fix by @ASzot in #1700
- [BUGFIX]--Address mem leak in ConfigValue destructor for strings. by @jturner65 in #1725
- [bugfix] - compute navmesh visualization node AABB by @aclegg3 in #1727
- [bugfix] - viewer toggle lighting override with --stage-requires-lighting by @aclegg3 in #1754
- [Bugfix]--add missing fields to AssetInfo comparator; by @jturner65 in #1757
- [bugfix] - moveUp moveDown by @aclegg3 in #1763
- [bugfix] - Working with Lights tutorial update ...
v0.2.2 rc1
v0.2.2 rc1
v0.2.1
Major features and improvements:
- Fetch Robot Wrapper improvements: added third person camera, utility functions for the base movement, refactored the interpolate arm function (#1373)
- PBR/IBL functionality to render an equirectangular image to cubemap (#1390, #1391)
- The WebXR/WebVR hand functionality and demo with refactoring JS code to support future webapps (#1366, #1364, #1365)
- Added support for nested user-defined attributes for scene data structures (#1413)
- Added debug line render utility (#1349)
- Powered by CI OSX conda package build (#1386)
- Added viewer Hot-swap scenes functionality (#1368)
Other improvements and bug fixes:
- Dataset download util default path improvements (#1362, #1369).
- Fix Colab install issue with scipy (#1361)
- Better default physics config
- Readme restructure to reflect Habitat 2.0 functionality (#1394, #1395, #1403).
- Upgrade Pybind11 to 2.7 (#1388) and Updated Magnum submodules (#1404).
- gltf/glb "extensionsUsed" not being set for Khronos validation (#1402)
- Improved documentation for ContactPointData #1372
- Cleanup and development of flag to enable/disable rendering (#1308)
- Enable URDF AO Loader to support unlit / baked lighting assets. #1408
- Various bug fixes, including:
Corresponding Habitat-Lab v0.2.1 release.
Kudos to our community contributors: @ldcWV, @srama2512
v0.2.0
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:
- 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:
-
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)
-
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
v0.2.0 rc2
v0.2.0 rc2
v0.2.0 rc1
v0.2.0 rc1
v0.1.7
Major features and improvements:
- Introduced GFX Replay feature. Save graphical replays and play them back. Reproduce earlier observations or produce new observations from different camera positions. (#1049, #983)
- Now supporting Physically Based Rendering (PBR) with point and directional lights. Supports metallic-roughness models specified in glTF 2.0., normal maps, normal texture scale, emissive textures, packed textures, texture transformation, double-sided objects, etc... (#837, #840, #863, #889, #895, #898, #902)
- Introduced new cubemap render camera type (#1000)
- Added Orthographic projection mode and zoom to CameraSensor. (#933)
- Introduced the MetaDataMediator class and SceneDataset concept to manage all metadata used to describe simulator, object, stage, lighting, and scene configuration. Includes JSON configuration framework and parsing (specs) and a programmatic configuration API in both C++ and python(attributes|managers|metadata). (#862, #818, #817, #819, #852, #869, #879, #881, #883, #885, #897, #917, #928, #923, #990)
- Added a flag to enable/disable collisions for objects and stages. (#932)
Other improvements and bug fixes:
-
Various improvements to viewer application:
- Screenshots now automatically routed to new output directory each time viewer is run. (#807)
SPACE
toggles dynamic simulation and'.'
takes single steps. (#887)- Added objects now set to agent orientation. (#887)
- Keyboard control of agent movement is now continuous instead of discrete. (#1013)
- Added per-frame profiling overlay. (#1015, #1039)
- Handle mouse scroll+shift for mac (#1040)
- Integrated GFX Replay recording with
'r'
. (#1001)
-
Added JSON reading and writing in C++ with serialization for most Magnum types and some user types. (#980)
-
Removed SceneConfiguration functionality absorbed into new MetadataMediator. (#906)
-
Moved SimulatorConfiguration to its own source files. (#815)
-
Various bug fixes, including:
- Pytest crash when habitat-sim and habitat-lab were installed in the same directory. (#908)
- STATIC objects now have properly configured friction, restitution, and damping. (#846)
- Fixed issue with MP3D bounding box loading. (#832)
- Use normal matrix in GenericDrawable. (#838)
- Correctly use flags to setup shader values in GenericDrawable. (#876)
- Fix ptex assertion. (#939)
- Update sensor enums from all-caps to Pascal style. (#1009)
- Fix configuration edge case in renderer creation logic. (#962)
- MotionType::UNKOWN changed to UNDEFINED with value -1. (#861)
Corresponding Habitat-Lab v0.1.7 release.
v0.1.7 rc3
v0.1.7 rc3
v0.1.7 rc2
v0.1.7 rc2
v0.1.7 rc1
v0.1.7 rc1