Commit Graph

2154 Commits

Author SHA1 Message Date
Yuval Tassa 42eb669e4e Precompute mappings between M <-> D sparse representations.
PiperOrigin-RevId: 670898353
Change-Id: I4b15477b1b6eb4a64cf7d4a0bb5af8fcb95d4e45
2024-09-04 02:57:13 -07:00
Baruch Tabanpour 303e5e7718 Fix test threshold for external tests.
PiperOrigin-RevId: 670720396
Change-Id: I28bff46535ffdd99724c75f8137834d84c3ec534
2024-09-03 15:06:42 -07:00
Baruch Tabanpour 49711fa14f Add support for joint and tendon frictionloss to MJX.
PiperOrigin-RevId: 670679777
Change-Id: I2eb56d013c11d4e1851f1c2edd6d98faaf854db9
2024-09-03 13:17:41 -07:00
Yuval Tassa 2d3d5415b7 Add mj_jacDot: Time derivative of kinematic Jacobian.
PiperOrigin-RevId: 670505417
Change-Id: Icf30cff5dc955e002bd2f5d5fb3a04f8388d0780
2024-09-03 04:49:47 -07:00
Nimrod Gileadi fb38727303 Update zipp to 3.19.1 in make_sdist_requirements.txt
PiperOrigin-RevId: 670486730
Change-Id: I1dfabb8d5206024595a49d2421f148a284a4eac7
2024-09-03 03:37:49 -07:00
Copybara-Service a02934a408 Merge pull request #2036 from kevinzakka:doc-fix
PiperOrigin-RevId: 670207735
Change-Id: I810720a41e6b770f8d7d3bacea9f5dc1433827b7
2024-09-02 07:08:56 -07:00
Kevin Zakka f60ab4492d Remove vestigial mentions of mjOption.collision in the docs. 2024-08-31 16:49:25 -07:00
Yuval Tassa 7abd5d427a Restore mistakenly deleted/modified changelog items.
PiperOrigin-RevId: 669732777
Change-Id: I473480acb06f881049c1f338e1e87ff86c30f330
2024-08-31 15:04:08 -07:00
Taylor Howell 9805df616b Add framelinvel and frameangvel sensors to MJX.
PiperOrigin-RevId: 669647542
Change-Id: I612230e81b456c26f29173d1cb5a60975791875a
2024-08-31 06:12:37 -07:00
Yuval Tassa 651868ab05 Add GitHub Issue and Discussion templates.
PiperOrigin-RevId: 669365189
Change-Id: I6e14bdf68de0ddc0029937291d7258d26eb65b75
2024-08-30 10:13:38 -07:00
Taylor Howell 5391e6011a Add sensor cutoff to MJX.
PiperOrigin-RevId: 669363779
Change-Id: Ia5c3f913c1b84e1893aa6072268a334123f00aeb
2024-08-30 10:09:17 -07:00
Taylor Howell cf02171bf8 Add velocimeter and gyro sensors to MJX.
PiperOrigin-RevId: 669337697
Change-Id: I5e7f245b96eb334ffddd01757a9f631d9ad862cd
2024-08-30 08:39:40 -07:00
Taylor Howell a94694f608 Fix formatting in mjx.rst
PiperOrigin-RevId: 669262462
Change-Id: I6354b152eff36923b85918e10fedf89a44c851f6
2024-08-30 03:16:46 -07:00
Taylor Howell 8272211dd5 Update MJX documentation for ellipsoid and cylinder collision support.
fixes #1908

PiperOrigin-RevId: 669244021
Change-Id: I5f757562be333b5b9923655d155d51ed3dbd09c4
2024-08-30 01:59:27 -07:00
Erik Frey 494e166f28 Fix a bug where mjx.make_data qLDiagInv has wrong size for sparse mass matrices.
PiperOrigin-RevId: 669087189
Change-Id: I39e97264a192a621e67ae5e079334fc8be38a25d
2024-08-29 15:40:08 -07:00
Taylor Howell 9cab5a42a4 Remove unnecessary normal vector computation from mju_wrap cylinder case.
PiperOrigin-RevId: 669010760
Change-Id: Ie3869a9f112ca88b2a7ec4990c402ef3e92d36a8
2024-08-29 11:46:38 -07:00
Yuval Tassa a1036b86d3 Allow connect constraints to be specified using sites.
PiperOrigin-RevId: 668925419
Change-Id: I10cb71e6706e617c830cd90d6d0836b94a5a8cfa
2024-08-29 07:10:51 -07:00
Taylor Howell 646455406c Fix changelog by moving bug fix to proper section.
PiperOrigin-RevId: 668435872
Change-Id: I9042eb3f119cc778675944e7cfb8f6be0e9379b2
2024-08-28 07:07:11 -07:00
Yuval Tassa f3cfe7a84a Minor clean up in mj_jac.
PiperOrigin-RevId: 668395751
Change-Id: I5c3104ad59a5a709cf1639df663c864fa9d02399
2024-08-28 04:45:40 -07:00
Taylor Howell 3e701b2125 Fix tendon sphere wrapping when using external sidesite.
PiperOrigin-RevId: 668391942
Change-Id: I78b44e1f90bb26fa6f5544eeb884c8ea22e41d33
2024-08-28 04:30:07 -07:00
Yuval Tassa 72a0ab145d Refactor frustum drawing to use a local makeTriangle function.
PiperOrigin-RevId: 668168658
Change-Id: I0ee9038c36eb28e2c4a0a8c94bea7430f68c6b77
2024-08-27 15:42:31 -07:00
Kyle Bayes ddb29e9293 Fix bug in computing pos in EPA by replacing S2D with computing affine coordinates directly to recover the witness points.
PiperOrigin-RevId: 668006152
Change-Id: I1de33c5bb94de1a14523a88a5dff7d6ec984628e
2024-08-27 08:55:40 -07:00
Kyle Bayes cad8ca6ffd Do pre-checking when creating initial polytope for EPA.
PiperOrigin-RevId: 666807572
Change-Id: I64c3715dc72c24f9b6b2206b3568951bd8c2384a
2024-08-23 08:37:34 -07:00
Yuval Tassa 9d4f8edad9 Avoid pointer access in loop conditionals in engine_core_smooth.c
PiperOrigin-RevId: 666800203
Change-Id: Iec6ce752d0cac1a98809ab085ed8f94416f79e95
2024-08-23 08:13:52 -07:00
Kyle Bayes d360ea1ce6 Minor GJK + EPA improvements:
1. Correct stopping criteria for GJK.
2. Store witness points from EPA in mjCCDObj,
3. Get dir directly from EPA instead of computing dir from witness points.

PiperOrigin-RevId: 666791852
Change-Id: I6a168f635b57c17692d31da6f6076b48c32ff2e3
2024-08-23 07:44:30 -07:00
Alessio Quaglino 505d01a1c1 Add error handling to mj_recompile.
This CL adds error handling to the mj_recompile function. If the recompile fails, the function will return -1 and set the error message in the spec. The Python wrapper for mj_recompile will catch the error and raise a ValueError exception.

PiperOrigin-RevId: 666784579
Change-Id: I225eca1769ea839c782be3c03fc4ff1ea5885a48
2024-08-23 07:18:28 -07:00
Yuval Tassa 088079eff0 Rename mpr_tolerance and mpr_iterations to ccd_tolerance and ccd_iterations.
PiperOrigin-RevId: 666438658
Change-Id: I23dbdf939b9ab581f0fca4445f95c5bb36f6b463
2024-08-22 12:01:54 -07:00
Yuval Tassa abe57c234b Use bullets instead of numbering in latest changelog
PiperOrigin-RevId: 666335980
Change-Id: Ifbeba31e34e9891f4d0791aa4b014d1fa1403398
2024-08-22 07:10:47 -07:00
Yuval Tassa 2efbd31762 Add mjSAMEFRAME_BODYROT and mjSAMEFRAME_INERTIAROT frame alignment shortcuts.
PiperOrigin-RevId: 666318799
Change-Id: I0af1824d2bd9eaca7b48a9e33e09f873dd33b22d
2024-08-22 06:08:25 -07:00
Yuval Tassa 8b03daa09b Add mjtSameFrame enum to specify frame alignment of bodies with their children.
PiperOrigin-RevId: 666303674
Change-Id: I53dc56e1ca52afa280ae5abaf4158edc465fb1e0
2024-08-22 05:17:06 -07:00
Taylor Howell a2649d6cec Add efc_margin to MJX.
PiperOrigin-RevId: 666273240
Change-Id: I12d6cc0d3edd3c3faff5a876335910b42e9cc9bf
2024-08-22 03:27:02 -07:00
Nimrod Gileadi f75ead2203 Improve the build instructions for mac.
The app bundle doesn't include mujoco.framework, so the instructions were a bit stale. I verified that with these new instructions I'm able to build the Python bindings from source with a prebuilt MuJoCo binary.

Fixes #313.

PiperOrigin-RevId: 666272041
Change-Id: I8bcf14c8ab6268cdaa617a8b5940b155ef64a8c5
2024-08-22 03:22:17 -07:00
Taylor Howell b2174a7ec3 Add framequat sensor to MJX.
PiperOrigin-RevId: 666254481
Change-Id: I50be8574e1e4677ef5dc23a2bdcbc296f301d7fc
2024-08-22 02:21:20 -07:00
Taylor Howell b42780a5f4 Add subtree_vel function to MJX. This function matches mj_subtreeVel.
PiperOrigin-RevId: 666078305
Change-Id: Ia0ecbf8279e914f49ee60b862541d697e8d4abb1
2024-08-21 16:21:57 -07:00
Copybara-Service e76168141a Merge pull request #1914 from google-deepmind:dependabot/pip/mjx/zipp-3.19.1
PiperOrigin-RevId: 665892706
Change-Id: Ib9891d5bb75560251d9eb0dac8100e04ca06f54f
2024-08-21 08:35:00 -07:00
Taylor Howell 806b8c8e2e Add support for actuatorfrc and jointactfrc sensors in MJX.
PiperOrigin-RevId: 665804850
Change-Id: I99371fc4da055382f1564b2c67d25f7b30a0a0cf
2024-08-21 03:46:26 -07:00
Kyle Bayes f986a52e1e Compute witness points from EPA, and use witness points to determine pos and dir for contact.
PiperOrigin-RevId: 665791337
Change-Id: If33ca1f455804c4cda534508803f5c3e99c3c52a
2024-08-21 03:06:17 -07:00
Yuval Tassa cf3e60f9a4 Fix load time reporting in simulate.
Before this change, a model which took more than 1/4 seconds to load caused the simulation to pause, which is a behavior that is only supposed to occur for models that loaded with a warning.

PiperOrigin-RevId: 665786861
Change-Id: Ie3a6c8d18a6abbb425a0bbcc5a8e55d5fd7a0c72
2024-08-21 02:54:10 -07:00
Yuval Tassa ad9cd7301e Correctly apply frame transform to light direction.
PiperOrigin-RevId: 665340267
Change-Id: Ida16ddbf3a057ffd3e260b71180a45acbf749931
2024-08-20 06:48:11 -07:00
dependabot[bot] 029fbd5172 Bump zipp from 3.17.0 to 3.19.1 in /mjx
Bumps [zipp](https://github.com/jaraco/zipp) from 3.17.0 to 3.19.1.
- [Release notes](https://github.com/jaraco/zipp/releases)
- [Changelog](https://github.com/jaraco/zipp/blob/main/NEWS.rst)
- [Commits](https://github.com/jaraco/zipp/compare/v3.17.0...v3.19.1)

---
updated-dependencies:
- dependency-name: zipp
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-20 12:13:10 +00:00
Copybara-Service 2425358c3b Merge pull request #1796 from google-deepmind:dependabot/pip/python/zipp-3.19.1
PiperOrigin-RevId: 665308489
Change-Id: I2db78ac1445cd12a3a4c0ea5d8f4f4fa2403517f
2024-08-20 05:11:29 -07:00
Erik Frey a68141eeff Implicitfast integration for MJX.
PiperOrigin-RevId: 664889120
Change-Id: Id3bd3916fe821ab2af79c52e53e14837ae829b2a
2024-08-19 11:12:36 -07:00
Yuval Tassa 5d91231d31 Rename mjBuffer to mjByteVec.
PiperOrigin-RevId: 664872558
Change-Id: I7b003374c390958667635fb21089faf2ece54b14
2024-08-19 10:40:26 -07:00
Yuval Tassa 4aab00fa2d Minor cleanups to body and joint compilers.
PiperOrigin-RevId: 664824939
Change-Id: I6014ff10683849e2926f1b1c8df8b6862192cd00
2024-08-19 08:43:10 -07:00
Yuval Tassa 0fa39164f7 Speed up mesh support function with warmstarts.
PiperOrigin-RevId: 664807396
Change-Id: I9124e65efd9140a8e858b7b6be0867c26961477b
2024-08-19 07:54:50 -07:00
Taylor Howell 6241814ad7 Add velocity-dependent sensors to MJX. Includes: joint velocity, actuator velocity, and ball joint angular velocity.
PiperOrigin-RevId: 664461284
Change-Id: I5063f662d707fbe342493f9cd7993f009fac9c76
2024-08-18 08:47:35 -07:00
Taylor Howell 6a12787a32 Add camera projection sensor to MJX.
PiperOrigin-RevId: 664426007
Change-Id: I0f2681c156b12ab62503d45beb2cd8752e7202d6
2024-08-18 05:57:33 -07:00
Taylor Howell 51733c2a8a Add rangefinder sensor to MJX.
PiperOrigin-RevId: 664417458
Change-Id: I1ad7720e48541349f155984584314b2b49ccbf36
2024-08-18 05:15:58 -07:00
Taylor Howell 6acf40613d Add support for disabling MJX sensors.
PiperOrigin-RevId: 664410169
Change-Id: Icb278e9d7a9a493d5a61ab04c1300d8e412d0e83
2024-08-18 04:41:24 -07:00
Kyle Bayes 0bffd744f9 Add nativeccd flag. When this flag is enabled, general convex collision detection is handled natively, as opposed to using libccd.
PiperOrigin-RevId: 663859009
Change-Id: Ife18bb1de62f2154e4725fdf764484a18586b836
2024-08-16 14:08:35 -07:00