Releases: facebookresearch/habitat-sim
v0.3.2
Major features and improvements:
Simulator.reset()
now resets objects to their original state (from scene instance, or zero init):
Improved accuracy of raycasting by buffering for within-margin "ghost" hits:
Added MarkerSets
support in configuration and API:
- --Support marker set specifications in Object, Stage and AO config jsons by @jturner65 in #2368
- --MarkerSets assignment to objects, 'interface' class and bindings by @jturner65 in #2371
- --Convenience functions for accessing markers in local and world space by @jturner65 in #2389
- --[BUGFIX] - Revert markerset subconfig removals; Don't write empty configs to file by @jturner65 in #2435
- --[BUGFIX] Make sure empty Markerset subconfigs are removed when appropriate by @jturner65 in #2434
- --[BugFix] - Handle transformations of points assigned to an AO's baselink by @jturner65 in #2444
- --MarkerSets assignment to objects, 'interface' class and bindings by @jturner65 in #2371
ArticulatedObject API improvements:
-
Added
ManagedObject.is_articulated
property:- --[BE] - Add utility function to specify whether object is ao or not by @jturner65 in #2416
-
Added
ManagedArticulatedObject.aabb
with AABB auto-update API:- --[Bugfix] - Compute AO cumulative bbox on creation unconditionally. by @jturner65 in #2420
- ManagedObject.getAabb() by @aclegg3 in #2421
-
Added
ManagedArticulatedObject.link_ids_to_object_ids
Other Changes and Bugfixes:
- Set node object IDs for articulated object links. by @0mdc in #2376
- --Provide an object's origin location in the world, uncorrected by any possible COM displacement. by @jturner65 in #2385
- Add instance metadata to gfx-replay. by @0mdc in #2377
Magnum Updates:
- Update Magnum for ASCII PLY import and artifact-free text rendering by @mosra in #2355
- Update Corrade and Magnum with changes for Python stub generation by @mosra in #2408
- --Update Corrade for no strict aliasing flag. by @jturner65 in #2426
Documentation:
- Update AI-2Thor hab links in DATASETS.md by @aclegg3 in #2354
- [data] update dataset_downloader.py with replica_cad rearrange dataset v2 by @aclegg3 in #2381
Attributes and Configs:
- --ConfigValue Updates - Matrix4 support, pointer-backed data store. Rev 2.0 by @jturner65 in #2369
- --Expose Attributes save functionality to python; cleanup/improve attribute registration. by @jturner65 in #2345
- --Configuration : Add ability to handle vectors of fields within subconfigs by @jturner65 in #2394
- --Configurations : Expand and unify vector/array-backed value handling by @jturner65 in #239
- --[BE] - Refactor/cleanup attributes and attributes managers by @jturner65 in #2461
CI:
- [CI] - fix mypy on CI by @aclegg3 in #2356
- [CI] fix pip install by @aclegg3 in #2391
- [CI] - Disable new clone protection for git lfs by @aclegg3 in #2397
- [CI] - add lab ci asset downloads by @aclegg3 in #2399
- [CI][conda] - Update conda build docker to centos8 by @aclegg3 in #2427
- --[CI BugFix] -Change circle CI mac conda install from intel mac to m1. by @jturner65 in #2445
- --[CI] - Modify ubuntu image to dodge brownout/deprecation by @jturner65 in #2474
Other:
- Remove RTLD_GLOBAL flag from apps. by @0mdc in #2312
- Revert "Remove RTLD_GLOBAL flag from apps. (#2312) by @0mdc in #2342
- -- Articulated Object creation restructuring by @jturner65 in #2359
- [dependency update] [deprecation] Upgrade numpy to 1.26.4 and remove data_extractor utility by @aclegg3 in #2362
- Avoid setting CUDA device when there is no GPU. by @0mdc in #2378
- --Properly initialize std::vector member variable to be correct size by @jturner65 in #2388
- --Move AssetType enum class attributes namespace by @jturner65 in #2386
- --Add Configuration State Flags - Part 1 by @jturner65 in #2396
- --Add Configuration State Flags - Part 2 (Hidden file path fields) by @jturner65 in #2398
- [bugfix] - reorder Configuration setter bindings by @aclegg3 in #2401
- --Bugfix : Expand absolute-to-relative filepath mapping rigor by @jturner65 in #2400
- Update minimum scipy version. by @0mdc in #2403
- --[BUGFIX] - Properly set instance user config from base passed base config. by @jturner65 in #2407
- --[BE] - Remove deprecated Sim-level contact test by @jturner65 in #2417
- --[BE] - Duplicate existing rigid or articulated object by @jturner65 in #2418
- --[BE] Fix issues with bindings exposed by pybind11-stubgen by @jturner65 in #2430
- --[WIP][Bugfix]- Address remaining issues with bindings stubgen by @jturner65 in #2432
- --m.css updates by @jturner65 in #2455
- --Update/cleanup gitignore by @jturner65 in #2458
- [doc] - fixes docstring format for get_weighted_regions_for_point by @aclegg3 in #2459
Full Changelog: v0.3.1...v0.3.2
Update stable to v0.1.7
See v0.1.7.
v0.3.1
Major features and improvements:
-
Semantic Region Support: define 2d polyloops with height extrusion to represent and query rooms/regions in a scene:
- Initial implementation and metadata support by @jturner65 in #2299 and #2307
- Region Query API (w/ Python bindings) by @aclegg3 in #2317 and by @jturner65 in #2336
-
Render skinned meshes with PBR shader by @jturner65 in #2204
-
Add Panoptic/Instance ID support to Semantic sensor by @jturner65 in #2316
-
Expose ArticulatedObject creation_attributes by @aclegg3 in #2259
-
Define constant and bindings for stage ID by @jturner65 in #2325
-
Deprecate colabs (in favor of local Jupyter notebooks) by @aclegg3 in #2298
-
Docs cleanup and improvements by various authors in #2238, #2267, #2268, #2275, #2283, #2285, #2281, #2292
-
Update Magnum submodule by @mosra in #2243, #2278, #2309, #2322
Other Changes and Bugfixes
- Fix rigs not being deleted from the recorder. by @0mdc in #2251
- Set the default fallback material as Phong. by @0mdc in #2262
- --Update reference to deprecated Magnum 'angle' function by @jturner65 in #2264
- Correct HSSD public repo to un-authenticated by @aclegg3 in #2261
- --[BE Week] Update projection matrix near/far plane calcs by @jturner65 in #2276
- --[BE Week] Better Attributes Handle search efficiency; Viewer.cpp/Viewer.py text render fixes by @jturner65 in #2279
- Minor fix in python viewer. by @0mdc in #2282
- Fix typos in top-level files and tools. by @0mdc in #2284
- Change default python viewer dataset to 'default'. by @0mdc in #2287
- [ci] - new website key by @aclegg3 in #2294
- --[BE Week] Articulated Object Loading refactors and cleanup by @jturner65 in #2291
- [CI] - Add hm3d example scenes to ci test assets by @aclegg3 in #2303
- --Object/AO creation refactor and Object/AO Instance save/creation by @jturner65 in #2315
- Get ycb dataset from main branch by @aclegg3 in #2320
- Add max decimal place option to recorder. by @0mdc in #2319
- Ability to render the viewer content at quarter resolution on very-high-DPI screens by @mosra in #2321
- --[CI Fix] Fix miniconda versions by @jturner65 in #2334
- --Minor fixes and improvements by @jturner65 in #2333
- bump the version to 0.3.1 by @aclegg3 in #2339
Full Changelog: v0.3.0...v0.3.1
v0.3.0
Major features and improvements:
- Rendering: PBR/IBL/HBAO
- --Implementation of Nvidia's HBAO effect (soft shadows in corners and crevices) via Magnum by @jturner65 in #2192
- --PBR/IBL Configuration and customization by @jturner65 in #2155
- Skinned ArticulatedObjects:
- More accurate get_random_navigable_point_near by @aclegg3 in #2221
Other Changes:
- --Attributes/Managers Maintenance : Separate Monolithic ObjectAttributes; Remove unnecessary abstract method; Build JSON From String by @jturner65 in #2177
- --[BUGFIX] Background renderer should not create extra contexts by @jturner65 in #2180
- Disable broken JS test and make --no-web-apps the default by @eundersander in #2179
- --[BugFix] GibsonSemanticScene JSON access. by @jturner65 in #2181
- --[BugFix] Get rid of double JSON lookups using HasMember by @jturner65 in #2182
- --Articulated Object Attributes/Managers support by @jturner65 in #2178
- [BE] - remove dummy sceneId from the API by @aclegg3 in #2186
- --[Bugfix] Add new fields to test asset
skinned_prism.ao_config.json
. by @jturner65 in #2188 - [BE] - Error messages for physics specific API calls without implementation by @aclegg3 in #2187
- Fixed bug for directories containing spaces by @vishneshjr in #2176
- Update README.md by @dhruvbatra in #1410
- --[BE/Bugfix]Modify creation of Articulated Object from URDF file name. by @jturner65 in #2190
- --[BE/Bugfix] Early Bullet/Physics enabled check; C++ test fixes for no-bullet; Python enable_physics default change if no_bullet by @jturner65 in #2189
- [docs] Add details for getting hssd from datasets_downloader by @aclegg3 in #2193
- Add option to toggle frustum culling in replay renderer. by @0mdc in #2199
- [CI] - add spot robot assets to CI test set by @aclegg3 in #2201
- --[Habitat3.0] Removal of out-of-date/deprecated flags for IBL by @jturner65 in #2203
- Add humanoids to gitignore. by @0mdc in #2209
- Update JS build doc. by @0mdc in #2162
- --Add benchmarking for HBAO effect. by @jturner65 in #2212
- --Address HBAO image transparency oddness; remove unused variable. by @jturner65 in #2214
- --[BUGFIX] -Ellipses in paths by @jturner65 in #2218
- Bugfix: Some objects have invalid scales when replay rendering by @0mdc in #2200
- --[BE/Bugfix]properly handle multiple sequential ellipses by @jturner65 in #2219
- Fix wrong instance structures in replay renderer test. by @0mdc in #2220
- Add replay renderer flag to enable HBAO. by @0mdc in #2223
- [CI] - resource class update by @aclegg3 in #2225
- --[Bugfix/Refactor]-PBR Skin Rendering Prep/Bugfixes. by @jturner65 in #2222
- New HF Dataset Download by @ASzot in #2232
- --[BUGFIX] Minor bugfixes by @jturner65 in #2233
- hab3_bench_assets datasource by @aclegg3 in #2234
- --PBR Primitive support and gl context bugfix by @jturner65 in #2235
- --Documentation for ArticulatedObjectAttributes and PbrShaderAttributes and JSON configurations. by @jturner65 in #2237
- update version tags to v0.3.0 by @aclegg3 in #2236
New Contributors
- @vishneshjr made their first contribution in #2176
Full Changelog: v0.2.5...v0.3.0
v0.2.5
Major features and improvements:
-
Improved PBR rendering by @jturner65
- --Convert materials to use magnum materials. by @jturner65 in #2083
- --[PBR Update 0 of 3] Add python binding to enable IBL. by @jturner65 in #2113
- --[PBR Update 1 of 3] Map materials' extension/layer data to Drawables cache by @jturner65 in #2112
- --[PBR Update 2 of 3] PBR rewrite-motivated default lighting and IBL fix/reworking by @jturner65 in #2119
- --[PBR part 3 of 3]Map KHR Extensions to PBRDrawables and Implement in Shader by @jturner65 in #2091
-
[breaking] - NavMeshSettings refactor by @aclegg3 in #2111 #2124
-
Update to latest Magnum submodules by @mosra in #2066 #2073 #2100 #2114 #2123
-
Add intertiaFromURDF option to URDF loading API by @aclegg3 in #2098
-
[BE week] - huggingface repo support for datasets_download.py by @aclegg3 in #2130
-
Adds HSSD to dataset downloader by @mukulkhanna in #2163
Other improvements and bug fixes:
Bugfixes
- bugfix for setArticulatedObjectModelFilename causing garbage log output by @eundersander in #2053
- Fix viewer.py framebuffer size mismatch. by @0mdc in #2055
- [bugfix]: cylinder primitive collision shape did not use halflength by @aclegg3 in #2060
- --[BugFix]Testing disabled renderer in simtest should only happen 1 time by @jturner65 in #2065
- --(Bugfix) Fix normal transformation calc and address backface culling in case of negative scaling/reflections by @jturner65 in #2062
- --Address inappropriate bitflag check; add vertexID flag to PBR shader by @jturner65 in #2090
- --[BUGFIX] Reverse directional lights before sending to uniform; by @jturner65 in #2094
- --[BUGFIX] Single channel texture support by @jturner65 in #2102
- bugfix: decrease minimum required GL version for most shaders by @Skylion007 in #2117
- --[BUGFIX]Fix missing tags in views in viewer.py by @jturner65 in #2153
CI, Code Quality, docs
- --Have pre-commit use node version compatible with Ubuntu 18.04 by @jturner65 in #2058
- Add runtime perf stats for troubleshooting perf problems by @eundersander in #2070
- [CI] - Add daily re-caching and log dependency state for pip and conda by @aclegg3 in #2107
- [doc] geo bindings docs update by @aclegg3 in #2110
- chore: typing - make optionals explicit by @Skylion007 in #2118
- [BE week] - Remove VHACD integration by @aclegg3 in #2128
- Fix clang tidy warning and typos. by @0mdc in #2131
- Fix clang-tidy issue with PbrDrawable + typo fixes. by @0mdc in #2133
- Update openexr to 3.1.8 by @0mdc in #2132
- --[BE Week] Remove ptex support by @jturner65 in #2137
- --[BE Week] Minimize logging spam by @jturner65 in #2140
- Fix conda build CI issue with git commands. by @0mdc in #2146
- Bump isort to 5.12.0. by @0mdc in #2150
- [CI] - fix doxygen version at 1.9.5 by @aclegg3 in #2159
- [BE Week] Add Ruff pre-commit hook by @Skylion007 in #2156
- Update pybind11 to v2.11.1 by @Skylion007 in #2166
Batched Renderer and GFX Replay
- BatchReplayRenderer: skip unsupported 3D primitives by @eundersander in #2054
- Gfx-replay polish: workaround for material-overrides; new keyframe getter by @eundersander in #2035
- Replay renderer: add line-rendering and unproject() by @eundersander in #2057
- Fix to remove reflection for gfx-replay recording by @eundersander in #2085
- enable frustum-culling for classic replay renderer by @eundersander in #2096
- GPU-to-CPU batch renderer API to render color and depth sensors into images. by @0mdc in #2044
- Add depth unprojection support to batch renderer by @0mdc in #2129
- Replay renderer partial deletion by @0mdc in #2136
- Add close() to replay renderer to allow for explicit resource release. by @0mdc in #2145
Other
- --Refactor Semantic Mesh loading/flattening to remove deprecated functionality and improve efficiency by @jturner65 in #2079
- --Add access to Scene Instance-level user defined attributes. by @jturner65 in #2081
- --Don't make needless copy of scene instance attributes when retrieving user defined values by @jturner65 in #2082
- enable recompute_navmesh when creating sim with create_renderer==false by @eundersander in #2097
- ReplicaCAD v1.6 by @aclegg3 in #1783
- Adds HSSD (Habitat Synthetic Scene Dataset) and AI2THOR-hab dataset info by @mukulkhanna in #2103
- --[BE Week]Set lighting if loading an AO to match scene lighting. by @jturner65 in #2138
- --[BE Week]Remove shadowmanager/variance shadow map code by @jturner65 in #2139
- --[BE Week]Minor Lighting-related refactoring by @jturner65 in #2148
- --[BE Week]More informative and appropriate data/metadata load and processing messages by @jturner65 in #2144
- --[BE Week]Remove files no longer used without Variance Shadow Maps by @jturner65 in #2154
- add clear_color to settings for rgb sensor initialization by @aclegg3 in #2161
- version bump v0.2.5 by @aclegg3 in #2168
New Contributors
- @mukulkhanna made their first contribution in #2103
Full Changelog: v0.2.4...v0.2.5
v0.2.4
v0.2.4
Major features and improvements:
- Upgrade python to 3.9 by @0mdc in #2030
- Better Camera unproject by @aclegg3 in #2001
- MultiGoalShortestPath improvements by @aclegg3 in #2014
- Don't default to joined collision objects by @aclegg3 in #2021
- Coordinate system tutorial by @rpartsey in #2009
- Update to latest Magnum with: full skinning support, MeshData Python bindings, new MaterialTools, improved glTF import/export, and much more by @mosra in #1968 #1999 #2015 #2032
- Configuration support for Magnum Vector2, Vector4, Color3 and Color4, UserDefinedAttr support of str Lists by @jturner65 in #2028
- Update pybind11 to v2.10.4 by @Skylion007 in #1974 #2051
Other improvements and bug fixes:
Bugfixes
- Ray distance scaling fix by @aclegg3 in #2022
- Fix color overflow in get_island_colored_map by @aclegg3 in #2024
- Fix baselines installation in colab_install.sh by @rpartsey in #1966
- Update magnum-bindings for MeshData fix on py3.7 by @aclegg3 in #2003
- Fix dataset download re-linking by @rpartsey in #1989
- Remove file being written by test by @jturner65 in #2013
Batched Renderer and GFX Replay
- Decouple gfx-replay player from scene graph; integrate the batch renderer into it by @0mdc in #1947
- Batch renderer integration into Python viewer. by @0mdc in #1964
- Gfx-replay: Record scene graph deletions. by @0mdc in #1975
- Clear replay renderer when all instances are deleted. by @0mdc in #1976
- Lighting support in the batch renderer by @mosra in #1970
- Add replay renderer bindings to get CUDA device pointers. by @0mdc in #2011
- Allow the batch renderer to draw empty scenes. by @0mdc in #2019
- Disable sim sensors when using the batch renderer. by @0mdc in #2031
- Add more rigorous context checks when creating classic replay renderer. by @0mdc in #2041
- Fix standalone batch renderer context deletion. by @0mdc in #2043
CI
- Fix Pytorch-CUDA dependency on CI. by @0mdc in #1973
- Fix Miniconda installation on CI. by @0mdc in #1977
- Pin toml-sort version to fix pre-commit issue on CI. by @0mdc in #1983
- Bump black and isort. by @0mdc in #2000
- Pin patchelf version on CI. by @0mdc in #2017
- Fix flake8 errors. by @0mdc in #2039
Other
- Update DATASETS.md by @dhruvbatra in #1985
- Add HM3DSem category mappings file by @srama2512 in #2004
- Add Human Armature into Downloader by @xavierpuigf in #2016
- Fixed colab tutorial links by @rpartsey in #2020
- Update Spot mesh by @jimmytyyang in #2023
- Receptacle test assets by @aclegg3 in #1994
- Add python binding to render color sensors into CPU images. by @0mdc in #2029
- Add .idea to gitignore. by @0mdc in #2038
New Contributors
- @rpartsey made their first contribution in #1966
- @xavierpuigf made their first contribution in #2016
Full Changelog: v0.2.3...v0.2.4
v0.2.4-rc1
v0.2.4 rc1
v0.2.3
Major features and improvements:
- Nav module improvements by @aclegg3:
- Batched Renderer prototype by @mosra and @0mdc in #1904 ,#1798, #1874, #1961
- Add rolling and spinning friction coefficient parameters by @aclegg3 in #1845
- Document SceneDataset JSON config system by @aclegg3 in #1863
- Added settings.py to habitat_sim.utils by @jaraujo98 and @aclegg3 in #1832, #1879, #1949
- Robots module moved to Habitat-lab by @zachavis in #1790
Other improvements and bug fixes:
Datasets
- update to HM3D v0.2 by @aclegg3 in #1910, #1916, #1927
- add Franka download by @laikhtewari in #1837
- add Spot download by @jimmytyyang in #1885
- add Stretch download by @jimmytyyang in #1936
- updated Fetch assets by @ASzot in #1959
Bugfixes
- remove direct usage of hsim_bindings for audio and fix missing reexports by @Skylion007 in #1788
- viewer.py navmesh recompute skip for "none" scene by @aclegg3 in #1809
- Gfx-replay and JSON serialization fixes by @eundersander in #1758
- declare allocator in IOTest by @aclegg3 in #1816
- add mp3d_example scene dataset config to the tutorials by @aclegg3 in #1847
- minor fix to viewer text string creation for semantic labels by @aclegg3 in #1859
- remove an extra tmp copy of lightsetup in Simulator.cpp by @Skylion007 in #1867
- prevent unnecessary copies with more std::move and emplace by @Skylion007 in #1870
- support habitat-lab requirements.txt after split by @aclegg3 in #1890
- assorted fixes for more robust handling of asset corner cases by @mosra in #1915
- don't give up when encountering lines/points/... in collision mesh data by @mosra in #1888
- skip non-triangle mesh primitives in mesh join for navmesh recomputation by @aclegg3 in #1951
CI
- updating docs should wait until lab-build is complete by @aclegg3 in #1826
- fix nightly conda preserve_egg_dir by @aclegg3 in #1844
- fix ci pytorch cuda by @aclegg3 in #1946
- don't cache habitat-lab by @aclegg3 in #1952
Other
Documentation
- adding instructions on how to build docs by @vincentpierre in #1779
- update citation by @ChanganVR in #1787
- Documenting habitat test scenes and pointnav episodes by @srama2512 in #1821
- making README consistent with Habitat-Lab readme by @dhruvbatra in #1830
- Better colors for "info" and "success" notes in the documentation and website by @mosra in #1893
- changed header from facebook to meta platforms by @NakuraMino in #1913
- add comment blocks by @NakuraMino in #1917
- README updates in #1957, #1955, #1962
Corrade | Magnum
- update Corrade and Magnum with prefixed CMake options by @mosra in #1797
- update Magnum to latest & fix various minor buildsystem issues by @mosra in #1819
- update to Magnum with initial support for glTF export and CPU feature dispatch by @mosra in #1834
- update to Magnum with windowed EGL support; better static plugin linking for Python by @mosra in #1861
- allow GLX to still be used if EGL doesn't work for whatever reason by @mosra in #1877
- update Magnum submodules with support for querying MeshData size from Python by @mosra in #1878
- update Doxygen tagfiles and Python inventories for Corrade/Magnum doc crosslinking by @mosra in #1889
- update Magnum submodules to latest, fix AssimpImporter assertion by @mosra in #1911
Infra Improvements
- [mypy] - ignore erroneous type warning in new imageio version. by @aclegg3 in #1817
- update pybind11 to v2.10.0 by @Skylion007 in #1815
- add build info to pytest_report_header by @Skylion007 in #1806
- chore: optimize src/esp by removing temporaries by @Skylion007 in #1835
- hhore: Remove unnecessary casts from SensorSpec bindings by @Skylion007 in #1858
- refactor GfxReplayTest::testSimulatorIntegration by @0mdc in #1855
- random "header hygiene" cleanups by @mosra in #1880
- temporarily work around lost code coverage reports by @mosra in #1892
- better check of type before converting vector to quaternion by @vincentpierre in #1896
- update pybind11 to v2.10.1 by @Skylion007 in #1926
- (perf): Improve codebase by adding std::move on last use of object by @Skylion007 in #1930
- (perf): add another missing move in pathfinder by @Skylion007 in #1931
- chore: Add a few missing std::move to shared_ptr. by @Skylion007 in #1954
- serialize lights into gfx-replay json format. by @0mdc in #1857
- properly handle non-indexed collision meshes by @mosra in #1876
- update rlr-audio-propagation dependency to main by @aclegg3 in #1923
Viewer Application:
- port stage_requires_lighting arg to python viewer by @aclegg3 in #1807
- viewer py add magnum text by @jrreyna in #1862
- use Magnum's builtin text rendering instead of ImGui; expose it in Python by @mosra in #1853
New Contributors
- @zachavis made their first contribution in #1790
- @ChanganVR made their first contribution in #1787
- @laikhtewari made their first contribution in #1837
- @jaraujo98 made their first contribution in #1832
- @0mdc made their first contribution in #1855
- @jrreyna made their first contribution in #1862
- @jimmytyyang made their first contribution in #1885
- @NakuraMino made their first contribution in #1913
Full Changelog: v0.2.2...v0.2.3
v0.2.3 rc2
v0.2.3 rc2
v0.2.3 rc1
v0.2.3 rc1