Skip to content

Releases: Genesis-Embodied-AI/Genesis

v0.4.3

16 Mar 16:59
b7bb647

Choose a tag to compare

This release introduces additional sensors while significantly speeding up collision detection on GPU (up to 30%). As usual, a few bugs have been fixed.

New Features

Bug Fixes

  • Fix rendering FEM vertex normals in interactive viewer. (@duburcqa) (#2555)
  • Fix support of ellipsoid geometry. (@duburcqa) (#2554)
  • Fix mujoco compatible URDF parsing. (@duburcqa) (#2547)
  • Fix typing, validation, and compatibility issues with structured options. (@duburcqa) (#2548)

Miscellaneous

  • Speed up rigid collision detection on GPU for generic convex meshes. (@hughperkins) (#2527)
  • Fix spurious Quadrants compilation warnings. (@duburcqa) (#2546)
  • Improve typing of 'add_entity', 'add_sensor'. (@duburcqa) (#2552)
  • Add init/destroy registration mechanism for external modules. (@duburcqa) (#2551)
  • More flexible and reliable sensor plugin registration mechanism. (@duburcqa) (#2553)

v0.4.2

13 Mar 23:35
a468c29

Choose a tag to compare

This release introduces a new type of tactile sensors based on FOTS, and add support of parallel simulation of heterogeneous articulated robots. Beyond that, the performance of the simulation has been significantly improved, especially when rigid option 'noslip' is enabled.

New Features

Bug Fixes

  • Fix GJK multi-contact in mujoco-compatibility mode. (@SonSang, @duburcqa) (#2514, #2516)
  • Add support of morph option "fixed" for USD without explicit root and filter out invisible geometries from collision. (@ACMLCZH) (#2528)
  • More robust collision detection on 32bits precision. (@SonSang) (#2525)
  • Fix parsing of URDF with undefined inertial properties. (@duburcqa) (#2544)

Miscellaneous

  • Propagate interactive viewer exceptions when running in thread. (@duburcqa) (#2510)
  • More robust and versatile interactive viewer keybinding. (@duburcqa) (#2512)
  • Migrate 'gs view' to kinematic entity to reduce compile time. (@duburcqa) (#2522)
  • Fix Python-scope field read to avoid GPU-CPU sync. (@erizmr) (#2518)
  • Faster initialisation of collision pairs validity mask. (@ACMLCZH) (#2534)
  • Introduce structured options with validation. (@duburcqa) (#2536)
  • Accelerate noslip simulation on GPU backend. (@erizmr) (#2532)
  • Speedup rigid constraint solver. (@erizmr) (#2524)
  • Add dexterous hand benchmark. (@hughperkins) (#2500)

v0.4.1

06 Mar 13:52
fe051da

Choose a tag to compare

This release mainly improves experimental IPC coupler integration. Avatar entity has been re-introduced after being broken for months. Finally, Quadrants' dynamic arrays are now support on Apple Metal to avoid systematic scene compilation.

Breaking changes

New Features

Bug Fixes

Miscellaneous

v0.4.0

18 Feb 21:27
53811fc

Choose a tag to compare

This release completes the migration to Quadrants, our own high-performance cross-platform compiler which originally started as a fork of the official Taichi project back in May and has now sufficiently diverged to be renamed. Beyond that, this release polishes the newly introduced USD parser and the external interactive viewer plugin mechanism. Finally, the performance of the simulation has been significantly improved for collision-heavy scenes (up to 30%) and robots using capsule/sphere collision geometries (up to 20%).

Breaking changes

New Features

Bug Fixes

Miscellaneous

v0.3.14

10 Feb 10:41
fc9da3e

Choose a tag to compare

This release mainly focuses on asset loading and usability, introducing a new external plugin mechanism for the interactive viewer, and extending support of glTF meshes and USD scenes. Besides, the performance of the simulation has been significantly improved for collision-heavy scenes (up to 30%).

New Features

Bug Fixes

Miscellaneous

v0.3.13

22 Jan 15:42
f991a1f

Choose a tag to compare

This small release adds user-friendly diagnosis of invalid Rigid physics properties and improves support of GLTF meshes.

Breaking changes

  • Apply 'FileMorph.file_meshes_are_zup' to all meshes including GLTF. (@duburcqa) (#2275)
  • Do not officially support importing GLTF morph Mesh as Z-UP. (@duburcqa) (#2279)

New Features

  • Add Magnetometer measurement to IMU Sensor. (@sunkmechie) (#2265)
  • Check validity of links spatial inertia and support forcing computation from geoms. (@duburcqa) (#2273, #2276)

Bug Fixes

Miscellaneous

  • Improve performance and add torch support to 'utils.geom.slerp'. (@Kashu7100) (#2260)

v0.3.12

17 Jan 12:54
13d8962

Choose a tag to compare

This PR focuses on performance improvements (x4 faster for complex scenes with 64 < n_dofs < 96 and n_envs=4096 compared to 0.3.10). Besides, initial support of heterogenous object and USD stage import for rigid body simulation has been introduced.

Breaking changes

New Features

  • [FEATURE] Add method to compute axis-aligned bounding boxes of visual geometries. (@duburcqa) (#2185)
  • [FEATURE] Add partial support of batched camera sensor with Rasterizer. (@Narsil) (#2207, #2212)
  • [FEATURE] Add support for attaching MPM particles to rigid links. (@YilingQiao) (#2205)
  • [FEATURE] Add support of USD import for Rigid Body. (@alanray-tech) (#2067)
  • [FEATURE] Add support of batched textures to BatchRenderer. (@ACMLCZH) (#2077)
  • [FEATURE] Add support of fisheye camera mode to BatchRenderer. (@ACMLCZH) (#2138)
  • [FEATURE] Add batched simulation of heterogeneous objects. (@YilingQiao) (#2202)
  • [FEATURE] Filter out self-collision pairs active in neutral configuration. (@duburcqa) (#2251)

Bug Fixes

  • [BUG FIX] Fix zero-copy for fields on Apple Metal. (@duburcqa) (#2188, #2223)
  • [BUG FIX] Fix compatibility with 'numpy<2.0'. (@duburcqa) (#2197)
  • [BUG FIX] Fix invalid default particle sampler on Linux ARM. (@duburcqa) (#2211)
  • [BUG FIX] Fix 'RigidGeom.get_(pos|quat)' invalid shape. (@duburcqa) (#2218)
  • [BUG FIX] Fix various sensor bugs and add zero-copy to contact force sensors. (@duburcqa) (#2232, #2235)
  • [BUG FIX] Clear dynamic weld at scene reset. (@YilingQiao) (#2233)
  • [BUG FIX] Fix viewer not closed at scene destroy if running in background thread. (@duburcqa) (#2236)
  • [BUG FIX] More robust handling of corrupted cache. (@duburcqa) (#2241)

Miscellaneous

v0.3.11

31 Dec 18:26
bda9e0b

Choose a tag to compare

The main focus of this release is to improve scaling of the simulation wrt the complexity of the scene, and better leverage GPU compute for small to moderate batch sizes (0<=n_envs<=8192). As usual, a bunch of minor bugs have been fixed.

New Features

Bug Fixes

  • Avoid discontinuities in smooth animations caused by singularities. (@Rush2k) (#2116)
  • Fix forward update logics. (@duburcqa) (#2122)
  • Fix kernel caching mechanism hindering performance. (@duburcqa) (#2123)
  • Fix support of old torch for 'set_dofs_velocity' when velocity=None. (@YilingQiao) (#2160)
  • Force rendering systematically when updating camera sensor. (@YilingQiao) (#2162)
  • Fix incorrect lighting when offscreen cameras based on rasterizer. (@duburcqa) (#2163)
  • Fix rasterizer race conditions when running in background thread. (@duburcqa) (#2169)
  • Fix broken exception handling when loading obj files with unsupported face type. (@Kashu7100) (#2170)
  • Fix 'pysplashsurf' memory leak causing OOM error. (@duburcqa) (#2173, #2176)
  • Diagnose out-of-bound SDF gradient index. (@duburcqa) (#2177)

Miscellaneous

v0.3.10

14 Dec 22:58
11684db

Choose a tag to compare

Small release mainly fixing bugs.

Bug Fixes

  • Fix parsing for special material properties in glTF meshes (@duburcqa) (#2110)

Miscellaneous

  • More robust detection of invalid simulation state. (@duburcqa) (#2112)

v0.3.9

11 Dec 22:56
7879b01

Choose a tag to compare

Small release mainly polishing features that were introduced in previous release.

New Features

Bug Fixes

Miscellaneous