Commit Graph

278 Commits

Author SHA1 Message Date
Yuval Tassa 42a16f65c2 Fix typo in mjd_inverseFD documentation.
PiperOrigin-RevId: 529022023
Change-Id: I2f9e014e271910989f96cd9bfd28c6adaf2e62e5
2023-05-03 01:30:44 -07:00
Yuval Tassa 8686339726 Fix typo.
PiperOrigin-RevId: 528763706
Change-Id: Ia8c92fdd7e21ecd456684b4ea443aea017971972
2023-05-02 06:24:18 -07:00
Yuval Tassa b0bc330b54 Add utility functions for banded-then-dense symmetric matrices.
PiperOrigin-RevId: 528757637
Change-Id: I916d843140322c28e857100a6b305a041f704d53
2023-05-02 05:58:08 -07:00
Alessio Quaglino 2ad82d5998 Add mj_multiRay function to perform multiple ray intersection with the same source.
PiperOrigin-RevId: 528684535
Change-Id: I6e1747a4a0910e6061d6154e19ad8723f56c22e3
2023-05-01 23:02:45 -07:00
Yuval Tassa ced9e0872f Load DM Mono font in CSS file
PiperOrigin-RevId: 528360725
Change-Id: I32cde6dc6c9cdc5dbd8ba1d8d22586027b0476f0
2023-04-30 19:30:08 -07:00
Yuval Tassa c50177d301 Add mjd_inverseFD for finite-difference approximations of inverse dynamics Jacobians.
Fixes #703.

PiperOrigin-RevId: 527899700
Change-Id: I10e41a381dcecf62c53b3b9aa72a4ce666161366
2023-04-28 09:04:41 -07:00
Saran Tunyasuvunakool 90e14ac8d0 Bump version number to 2.3.6.
Going forward, the version number at head will be kept one ahead of the latest released version. The rationale behind this change is so that it is clear that the source code at head is more recent.

PiperOrigin-RevId: 527687981
Change-Id: I7982ecd0b99ad70dccec6a8ffe86629754558bda
2023-04-27 14:40:32 -07:00
Yuval Tassa b397b3123e Added touch grid sensor plugin.
PiperOrigin-RevId: 527512624
Change-Id: I0f316eb6eb2c52472abbec484e5538b66ba2e82e
2023-04-27 02:03:03 -07:00
Yuval Tassa e3cdc410d6 Rename centered argument of mjd_transitionFD to flg_centered, to conform with the rest of the API.
PiperOrigin-RevId: 527258079
Change-Id: I77817be8ee007a572c79e9cd41f7c5728a091fb3
2023-04-26 07:18:52 -07:00
Saran Tunyasuvunakool a8d202a0c2 Reword "undefined" to "unspecified" on the topic of units.
To a software engineering audience, "undefined" has a strong connotation that the concept is fundamentally ill-defined or ill-behaved (c.f. "undefined behaviour").

PiperOrigin-RevId: 527192289
Change-Id: I8e81d1256c1330cd0e29c00f9913b9772d5344e6
2023-04-26 01:10:59 -07:00
Saran Tunyasuvunakool d23c5e784e Update changelog for 2.3.5.
PiperOrigin-RevId: 526984300
Change-Id: I40f0280c5366f3a7f9f61862fe6c9adc123c67fb
2023-04-25 09:09:36 -07:00
Saran Tunyasuvunakool db3b49b60f Bump version number to 2.3.5.
PiperOrigin-RevId: 526918869
Change-Id: I9f19600b0c1b855ef0834e5c026b204bf1dc06c4
2023-04-25 03:52:12 -07:00
Yuval Tassa d65bffd8ff Shorten section title
PiperOrigin-RevId: 526727580
Change-Id: Ibfeb752e5cde480beee04032df047c1124983d54
2023-04-24 12:47:34 -07:00
Yuval Tassa 51126caf3f Cosmetic improvements to Actuation Model documentation.
PiperOrigin-RevId: 526659426
Change-Id: If0ca9a505bb77e496739938a946ead5780b93d0f
2023-04-24 09:03:26 -07:00
Yuval Tassa 62a675ba28 Improve Python bindings documentation.
PiperOrigin-RevId: 526658768
Change-Id: Ife5640ed4328427e24e9f0302ee8a5424d82a974
2023-04-24 09:00:58 -07:00
Yuval Tassa a2a1ac9fc2 Pass mjvOption to plugin visualize callback.
PiperOrigin-RevId: 526047180
Change-Id: Ia63f02184f5c6a7e3b588298639fa0ab4a6da649
2023-04-21 08:44:20 -07:00
Yuval Tassa 967b07314f Improve rendering of [state section](https://mujoco.readthedocs.io/en/latest/computation.html?highlight=qfrc_applied#the-state) in documentation.
PiperOrigin-RevId: 526023870
Change-Id: If650cefa0cc6c22d63e909fb763767a77067af4e
2023-04-21 07:08:32 -07:00
Yuval Tassa 0295d972cb Improve comments in mjplugin.h, align to header standard (column 35).
PiperOrigin-RevId: 525868504
Change-Id: I8edfcea737e6e94458015a0e4fa6522cf89a1230
2023-04-20 15:39:09 -07:00
Yuval Tassa 2d69b158aa Improve changelog item.
PiperOrigin-RevId: 525860902
Change-Id: Ib753fca46d451af2ab796d6698303dbde081a469
2023-04-20 15:09:01 -07:00
Saran Tunyasuvunakool 101c647aad Clarify the 2.3.4 implicitfast bug fix situation in the changelog.
PiperOrigin-RevId: 525793327
Change-Id: Ib440c80d1a56d2f484dca2348118e3790882a2cc
2023-04-20 10:56:28 -07:00
Saran Tunyasuvunakool 0db9a453dc Update changelog for version 2.3.4.
PiperOrigin-RevId: 525773208
Change-Id: I54a0e16f069718737719e3d145f3f4795d19e9c8
2023-04-20 09:47:31 -07:00
Saran Tunyasuvunakool 0630b7543d Bump version number to 2.3.4.
PiperOrigin-RevId: 525745444
Change-Id: I8a9994b72a0a2ba3f371bee2c2bea947ad8f4fd1
2023-04-20 07:52:46 -07:00
Saran Tunyasuvunakool b362cb4972 Expose a handle for the Python viewer.
This change also requires user scripts to explicitly synchronize changes to physics state to the viewer. The Simulate class was reconfigured so that certain UI events are handled during this sync operation, outside of the render loop on the main thread. These correspond to operations that require access to the full mjModel/mjData.

To support other, more interactive operations (e.g. camera movements), a new mjvSceneState struct is introduced which captures only the portion of the physics state required for scene re-rendering. The mjvSceneState is updated from mjModel/mjData during the viewer sync operation, and is significantly cheaper than a full mj_copyModel and mj_copyData.

Fixes https://github.com/deepmind/mujoco/issues/796

PiperOrigin-RevId: 525723636
Change-Id: Id08d0210a2c067d5afe85e2bf104f276aeddd75e
2023-04-20 05:59:19 -07:00
Kyle Bayes fe3dccfd1d Add a new plugin / extension mechanism called a resource provider along with retrofitting VFS on top of it.
A resource provider provides a mechanism for MuJoCo to read from filesystems other than the OS filesystem or the Virtual File System (VFS).

PiperOrigin-RevId: 525394983
Change-Id: I077ff5a7e2e76806b48b6defb531280aadc8b169
2023-04-19 03:02:22 -07:00
Yuval Tassa d7ec409eb6 Improve code block for mjFREESTACK documentation.
PiperOrigin-RevId: 525150006
Change-Id: Ief5af7ea78658f89449795b58466dac14ab7e32a
2023-04-18 08:11:45 -07:00
Yuval Tassa c69e0b97fb Improve documentation of the internal stack.
PiperOrigin-RevId: 525119946
Change-Id: I49c757506f4af2b588dc07f978c8a72acad1b5bc
2023-04-18 05:40:44 -07:00
Yuval Tassa 9b7d42acb8 Improved numeric constants docs section.
PiperOrigin-RevId: 524799733
Change-Id: Ibb941d5bbb57f884ec31e1f00ae0e99cedac2980
2023-04-17 03:26:30 -07:00
Nimrod Gileadi 0e1f948c0a Change some redirecting links to direct links.
Files in github should be linked to using /blob/ rather than /tree/ URLs, while directories should be linked with /tree/.

PiperOrigin-RevId: 524796430
Change-Id: I72492a6acde0709b55d8d8620ad9b538619e7606
2023-04-17 03:06:06 -07:00
Yuval Tassa d7456f5d35 Add image and model explaining the geom-fromto attribute.
PiperOrigin-RevId: 524796118
Change-Id: I9e694d84a4be308baafbdbaab89cfb2570b13586
2023-04-17 03:05:10 -07:00
Nimrod Gileadi a1de6ee693 Update MuJoCo docs dependencies.
PiperOrigin-RevId: 524796002
Change-Id: I8fa2492e3fc5544bc8dadab710b4eae9822a5bb8
2023-04-17 03:04:08 -07:00
Tom Erez 4204109a5a Add some notes to the Python documentation.
PiperOrigin-RevId: 524293742
Change-Id: I43fcfcddd374a73e3a8fe4929784a4ac070fa067
2023-04-14 08:10:04 -07:00
Yuval Tassa 018503a0ec Fix badly formed links in the changelog.
PiperOrigin-RevId: 523988103
Change-Id: I069700af2328104b38831a544b61e136e8d8c6db
2023-04-13 06:51:56 -07:00
Saran Tunyasuvunakool 2e23594fe8 Add an introspect module for structs.
Also missing struct fields to the Python bindings that were discovered as a result of the new `introspect` metadata.

PiperOrigin-RevId: 523947396
Change-Id: I367fd2dc8d5fd7e5712a45b70a5c50da51d152e4
2023-04-13 02:50:23 -07:00
Saran Tunyasuvunakool 34226bf52d Fix a race condition in launch_passive and launch_repl.
Before this change, these functions can return before an internal call to `mj_forward`, which results in a race condition if the user script then tries to modify the physics state.

Fixes #783
Fixes #790

PiperOrigin-RevId: 523214378
Change-Id: I8a4c6cef0f5d3ec781fd2c5cae3c20dd4b8be67f
2023-04-10 14:35:53 -07:00
Saran Tunyasuvunakool 6d63e046fd Add low-level CGL context management for macOS.
This allows rendering from non-main threads as the context is not tied to a Cocoa window.

Fixes #742
Fixes #798

PiperOrigin-RevId: 523144359
Change-Id: I98432debdd034814c313eda94e38c248c3c1f76c
2023-04-10 10:09:49 -07:00
Yuval Tassa b536e46cc0 Add implicitfast to XML reference.
PiperOrigin-RevId: 522916631
Change-Id: Ica9261b7b84a3c269503a4ae21af251803c76b63
2023-04-09 02:06:00 -07:00
Yuval Tassa 7cc42ecf2a Remove "global" option from [compiler/coordinate](https://mujoco.readthedocs.io/en/latest/XMLreference.html#compiler-coordinate) attribute.
Keeping this rarely-used setting complicates the compiler logic and is blocking future improvements. In order to convert older models which used this option, load and save them in MuJoCo 2.3.3 or older.

PiperOrigin-RevId: 521739137
Change-Id: If0cb40d5db4879a4db9318cc2be258a7923e6e85
2023-04-04 05:59:38 -07:00
Yuval Tassa 01b84089dd Document engine plugins.
Rename `mjPLUGIN_DYNAMIC_LIBRARY_INIT` -> `mjPLUGIN_LIB_INIT`.

PiperOrigin-RevId: 521458377
Change-Id: I42aaec923e4f392899dfe53ab6ce1dddc75a83b3
2023-04-03 07:55:21 -07:00
Yuval Tassa ebb150fa3d Change docs preferred monospace font to Inconsolata
PiperOrigin-RevId: 521425957
Change-Id: Ie3014b924fbf711ce643f1e555aa723b85383023
2023-04-03 04:53:38 -07:00
Yuval Tassa 4ce00f7e2d Add notes section to APItypes documentation, add note about representation of convex hulls.
PiperOrigin-RevId: 521416156
Change-Id: Ia752b2fc5e4826a8d27af4167c40d9d7424bb069
2023-04-03 03:55:10 -07:00
Yuval Tassa 64229c089a Cosmetic improvements to public headers.
PiperOrigin-RevId: 521415262
Change-Id: Iee5d6baec78242f5a033c8b5cdd285af4a0895fa
2023-04-03 03:49:24 -07:00
Alessio Quaglino 5f132af625 Add midphase and broadphase statistics to mjData.
PiperOrigin-RevId: 521387641
Change-Id: Id50f2549d119e364216491a23b107e04d9ebb5b6
2023-04-03 00:59:59 -07:00
Yuval Tassa c29f32657c Fix broken links in the documentation.
PiperOrigin-RevId: 520657874
Change-Id: Idd01c40f87e0f2afcbd2d2bfd98fab95edc2371e
2023-03-30 09:18:06 -07:00
Yuval Tassa 3fd5164524 Fix heading level of function types.
PiperOrigin-RevId: 520653499
Change-Id: I8b5265b9a9b43eab40616a78570f558ff85e4ec8
2023-03-30 09:00:46 -07:00
Yuval Tassa 7951b4597f Improve favicons for iOS and Android.
PiperOrigin-RevId: 520336136
Change-Id: I002393b49a42ce257b3d36942203c0acadc01685
2023-03-29 08:01:55 -07:00
Yuval Tassa 045609c704 Add high-res readthedocs favicons for iOS and Android.
PiperOrigin-RevId: 520324992
Change-Id: If22c228eee50570c63357f08b8cd1eab2fab55f8
2023-03-29 07:06:34 -07:00
Yuval Tassa 24b9bf9bc7 Lint doc/conf.py
PiperOrigin-RevId: 520317031
Change-Id: I33fb5bdc8344a6a69e4c3d3038b52ece81c73000
2023-03-29 06:23:11 -07:00
Yuval Tassa 2127d0bb3f Improvements to API TOC
PiperOrigin-RevId: 520284861
Change-Id: Iac8c05d6d18f1e7f89728c5c5f5aa6395d0a1899
2023-03-29 03:21:43 -07:00
Yuval Tassa 62aa38f5f1 Reduce size of ellipsoidinertia image in changelog.
PiperOrigin-RevId: 519203289
Change-Id: Ia23cd9429d8266a7e293ae9310609724276d1d12
2023-03-24 12:00:27 -07:00
Kevin Zakka 3f14d97f6b Add equivalent inertia ellipsoid visualization.
PiperOrigin-RevId: 519154067
Change-Id: I35f1993c1493df9be752b7163385004649498070
2023-03-24 08:47:43 -07:00