Commit Graph

1115 Commits

Author SHA1 Message Date
Abhishek Joshi f094f964ed Merge branch 'usd-integration' of github.com:awesome-aj0123/mujoco into usd-integration 2023-10-19 12:25:14 -05:00
Abhishek Joshi 49e8cd0fd3 Updating output file structure for USD frames 2023-10-19 12:24:57 -05:00
Abhishek Joshi 495a9ac8c0 Merge branch 'google-deepmind:main' into usd-integration 2023-10-14 12:23:40 -05:00
Yuval Tassa a1b6026b8c Delete derivative code sample.
PiperOrigin-RevId: 573477509
Change-Id: I0e619e36dd3fe677a27bbbdac87a15f04670cc13
2023-10-14 08:38:37 -07:00
Yuval Tassa c0357ef3d0 Improve documentation related to engine-internal threading.
PiperOrigin-RevId: 573346658
Change-Id: I112eba10b8f71b3a0aa27fa162a4a589be7ec3a7
2023-10-13 16:32:38 -07:00
Kevin Zakka e90b347cbf Add mesh conversion utilities.
PiperOrigin-RevId: 573343028
Change-Id: I4b258f91a11d1994659b0129de5ddb2077689f01
2023-10-13 16:13:24 -07:00
Saran Tunyasuvunakool efdc89e347 Update dependency versions.
PiperOrigin-RevId: 573323079
Change-Id: I01fbcc582626b179ce72b2aabcac0f389801a97f
2023-10-13 14:41:48 -07:00
Nimrod Gileadi eb41c720d4 Restore full state in mjd_stepFD.
Make sure that plugin state is also restored after finite-difference calculations.

PiperOrigin-RevId: 573272654
Change-Id: Ie276ecc391c463ae5c47cafa5b8de873b9345a7d
2023-10-13 11:23:52 -07:00
Yuval Tassa fb4cf472ed Delete testxml code sample.
PiperOrigin-RevId: 573202693
Change-Id: Ic8d284293bd5c51693415d4186bb0b72a5416dca
2023-10-13 06:33:24 -07:00
Yuval Tassa d88675a034 Change the default of <compiler autolimits> from "false" to "true".
PiperOrigin-RevId: 573184793
Change-Id: I24075a8d953d0a3c3ddf65c67e1e18075cd029b6
2023-10-13 05:05:24 -07:00
Alessio Quaglino 389e13938e Fix typos in docs.
PiperOrigin-RevId: 573172715
Change-Id: I0073d0872597b01d84151b9eea578cc0ae0a5013
2023-10-13 04:05:30 -07:00
Abhishek Joshi b785642b3f Adding support for in memory usd scenes 2023-10-12 14:40:39 -05:00
Saran Tunyasuvunakool 36de0cc084 Tweak CSS selector
PiperOrigin-RevId: 572980162
Change-Id: Ic4d4e58f20c4324d24824fd2b62f4138e5384a5d
2023-10-12 12:25:58 -07:00
Copybara-Service 59164702ab Merge pull request #978 from aftersomemath:depth-precision-in-place
PiperOrigin-RevId: 572961667
Change-Id: I69011ddf835ae286e30e7f84cca67867cfe94fa4
2023-10-12 11:18:36 -07:00
Yuval Tassa 493ae95d69 Add stack leak test to WriteReadCompare
PiperOrigin-RevId: 572953669
Change-Id: Id6cad3fc86777d68f218119f67c9dc473bdcfcc8
2023-10-12 10:53:24 -07:00
Saran Tunyasuvunakool 86859ad382 Restore shadows when flex is present.
PiperOrigin-RevId: 572936749
Change-Id: I57f8d486810767422bc2874433497eb5073bf63b
2023-10-12 09:58:59 -07:00
Nimrod Gileadi 60fd6a3298 Check if there's enough data in the buffer before reading fields while loading MJB.
Before this change, loading a truncated MJB file would crash with mjERROR. After this change it will just return NULL.

PiperOrigin-RevId: 572928724
Change-Id: I9611eaffcc2e5ef1b957f48162ce2ef29619e087
2023-10-12 09:30:00 -07:00
Alessio Quaglino 6f8128dc6a Fix benchmark label for plugin flag test.
PiperOrigin-RevId: 572891541
Change-Id: I442e31f7e4164789759be0d2c71275fdb1398955
2023-10-12 06:53:38 -07:00
Alessio Quaglino 386b65086b Reduce contact label length.
PiperOrigin-RevId: 572868387
Change-Id: Icedec0792516b05d083068b9a3dad7e47e4ccc41
2023-10-12 05:10:03 -07:00
Alessio Quaglino 3addd490a4 Increase contact label length.
PiperOrigin-RevId: 572856066
Change-Id: I9d68481644b5a67720c055461607c95de8ec16ac
2023-10-12 04:10:25 -07:00
Alessio Quaglino 5a70ad08ab Add Flex component.
PiperOrigin-RevId: 572830650
Change-Id: I6908228087b7b9683be3506c8d9cdc725ed5dcd5
2023-10-12 10:49:35 +01:00
Saran Tunyasuvunakool 649a474788 Migrate to pyproject.toml.
PiperOrigin-RevId: 572726851
Change-Id: Iad254df70d15c962a5e58c8caf82b32530d26b06
2023-10-11 16:55:34 -07:00
Saran Tunyasuvunakool f32219c37c Install locally built wheels with --no-deps --no-index.
PiperOrigin-RevId: 572665469
Change-Id: I65c93e42155024d8dbfb42e45fd5b4be09f3528e
2023-10-11 13:13:59 -07:00
Yuval Tassa bad6bee64f Improve component printout in testspeed
PiperOrigin-RevId: 572610538
Change-Id: I28745840e457ccef7276c3d37ecf3055d0f594da
2023-10-11 10:12:32 -07:00
Matthew Bennice 2842245ca9 Multithread parallelizable operations in mj_fwdPosition
PiperOrigin-RevId: 572576240
Change-Id: I70eb518385366a0027c5dad44ac15e3904d1b4a3
2023-10-11 08:01:53 -07:00
Saran Tunyasuvunakool ba03ebdadd Fix a segfault in the passive viewer on macOS.
The segfault is caused by a call to mjui_update outside of the macOS main thread, introduced in 3e12f0d50c.

PiperOrigin-RevId: 572531447
Change-Id: Ib8424c746d18a776c0b91087d9501aa8ee463026
2023-10-11 04:06:23 -07:00
Saran Tunyasuvunakool 742f15fb18 Add redirects for {computation,programming,APIreference}.html.
This prevents us from breaking existing URLs pointing to computation.html before we turned it into a directory.

PiperOrigin-RevId: 572522650
Change-Id: Ib0e6679099be38b002777c08ffa647c9902439a9
2023-10-11 03:21:40 -07:00
Saran Tunyasuvunakool 7e549495d9 Fix macOS mjpython launcher to suppoer show_{left,right}_ui.
PiperOrigin-RevId: 572377315
Change-Id: Iee734a6e49821b42e94dc19d9ed92a45ee605ea7
2023-10-10 15:04:02 -07:00
Saran Tunyasuvunakool a84499e904 Fix non-graceful exiting behaviour in launch_passive.
The viewer currently hard crashes when the user script loops on the passive viewer handle without paying attention to `is_running`. This is considered user error, however this change makes the user script hang on the loop rather than hard crashing.

Startblock:
   diffbase is submitted
PiperOrigin-RevId: 572336261
Change-Id: Id53126a158242b947584da1f946304ae8e792d4a
2023-10-10 12:39:37 -07:00
Saran Tunyasuvunakool a1d0cbd654 Add show_{left,right}_ui kwarg to viewer.launch(_passive).
Fixes #857

PiperOrigin-RevId: 572333909
Change-Id: I12247fe856afddf808eb8f386a594acac47c34b5
2023-10-10 12:31:11 -07:00
Saran Tunyasuvunakool 2e15574b58 Allow user-defined visualization geoms to be added to the passive viewer.
Fixes #1023, #1082

PiperOrigin-RevId: 572303635
Change-Id: Ia8399f816f311b38a7b137f5bd4f359f77a1da1c
2023-10-10 10:52:21 -07:00
Google DeepMind 1bd6c94e6d Fix setting wrong value in efc_diagApprox for rotational components of weld constraints.
PiperOrigin-RevId: 572276016
Change-Id: Ic985a342777aca976f5c4bc781133fb4a8976e3f
2023-10-10 09:34:34 -07:00
Alessio Quaglino 8af09eb70d Add timing of collision phases.
PiperOrigin-RevId: 572273621
Change-Id: Ib9440a996a05e42e00dcf4f1ce487a12f65e999b
2023-10-10 09:27:45 -07:00
Yuval Tassa 7cd6b3db73 Fix typo in changelog
PiperOrigin-RevId: 572264830
Change-Id: Ifbbb9d7ee06a73c768b4c13aad843146e8aa9dde
2023-10-10 08:55:59 -07:00
Yuval Tassa 95fec9f84e Add derivation of ellipsoid projection lemma in collapsible element.
PiperOrigin-RevId: 572243118
Change-Id: I7b6c97dcf046f1bec85a0970bc018411d3009ae7
2023-10-10 07:34:59 -07:00
Yuval Tassa 18d9f1abb0 Improvements to timing.
- Fixed bug in timing of kinematics, was under-reported.
- Moved timing of inertia and collision into respective functions, in preparation for multi-threading.
- Detailed profiling in `testspeed` is always on, removed command-line flag.
- Improved `testspeed` self-documentation.

PiperOrigin-RevId: 571989548
Change-Id: If0e3cc17f6f3511b98fc36339f406a19968a9361
2023-10-09 11:14:44 -07:00
Saran Tunyasuvunakool a1b39d5959 Fix a segfault in simulate on mouse scroll without a loaded model.
Fixes #1089

PiperOrigin-RevId: 571985561
Change-Id: I4acc7c2a6032d678023783646c3f00cfe30641f2
2023-10-09 11:01:08 -07:00
Nimrod Gileadi cd06629a92 Give the test fixture a local name in elasticity_test.
PiperOrigin-RevId: 571900967
Change-Id: Ie9bfea00dff1f9068f7fb3bf426dcbf6bfd6b4d2
2023-10-09 04:35:00 -07:00
Alessio Quaglino f0608648cb Stricter swapping condition in mju_eig3.
This solves the texture rendering issue with the Rubik's cube. The texture were specified with respect to the incorrect frame, so a default rotation of (0, 0, pi/2) is now applied to the model file.

PiperOrigin-RevId: 571715153
Change-Id: I3efae3b1fc8f64e6c9e4db90a7609506e3cbed86
2023-10-08 04:04:34 -07:00
Alessio Quaglino 77d0400733 Accelerate inertia computation for simple bodies.
PiperOrigin-RevId: 571411319
Change-Id: I82732e95795cc0f0645f8273a1b084f2a9187a75
2023-10-06 12:51:14 -07:00
Google DeepMind df48624d0d Place mjx tutorial correctly in copybara excludes.
PiperOrigin-RevId: 571390140
Change-Id: I8d0b9ac7b30391e4abaa1ba03fd941e028fd2991
2023-10-06 11:29:54 -07:00
Yuval Tassa 7b7cf5e86c Add cards.xml model.
PiperOrigin-RevId: 571341445
Change-Id: I3a02bb01099cacb62e0c599e6198ed90b48baad0
2023-10-06 08:13:33 -07:00
Yuval Tassa a9b761ee1b Add double underscore suffix to all links in the changelog.
PiperOrigin-RevId: 571304907
Change-Id: Ie726f3d703421f9d13a5d16f2282123c71c2b530
2023-10-06 05:01:09 -07:00
Yuval Tassa d61d0349b8 Fix mju_eig3 declarations.
PiperOrigin-RevId: 571296456
Change-Id: Ic05f44c8c0883fe96e5671d71fe9b447c2e91162
2023-10-06 04:10:44 -07:00
Matthew Bennice 071af3b015 Implement threading for island constraint solving.
Humanoids22 No threads:
 Benchmark Execution Time: 9.475905812s

Humanoids22 with 10 Threads:
 Benchmark Execution Time: 4.871352s

PiperOrigin-RevId: 571214307
Change-Id: I1f4f2c761b4ae6bc8fac1f28c6c695f6c499f339
2023-10-05 21:05:19 -07:00
Google DeepMind 06670155c4 Add MJX training colab.
PiperOrigin-RevId: 571066455
Change-Id: I8b0638181cdc751cf9fbacfb84c1ac551d7ce4bd
2023-10-05 10:45:36 -07:00
Saran Tunyasuvunakool 991aa97bc4 Make the doc search text readable in dark theme.
Currently it's dark blue text on dark grey background.

PiperOrigin-RevId: 570985075
Change-Id: I7dc97163babd4d6c2f99fa600b259274e69fdd8b
2023-10-05 05:33:55 -07:00
Yuval Tassa 22fab04c02 Add keyframe to golden data test model, start simulation from that keyframe.
0. Keyframe was generated by simulating passively for 64 timesteps and then saving from `simulate`.
1. This makes forward.data much more informative. There are more contacts, velocities are not 0.
2. Added non-zero controls to forward.data.
3. 70 timesteps is a lot to integrate, things can change a lot. Since we now start at time = 0.128 = after 64 steps of passive simulation, we continue to integrate for only 6 timesteps.

PiperOrigin-RevId: 570966233
Change-Id: I9538aa44619393ff05ed8c3177e73993e222150a
2023-10-05 03:52:57 -07:00
Yuval Tassa e9613f0cc9 Rename simulate.fully_managed_ to simulate.is_passive_ with flipped semantics.
PiperOrigin-RevId: 570815258
Change-Id: Iaffdb0e52bcdb31cff7bd29cb820913e3838f0ee
2023-10-04 14:49:52 -07:00
Yuval Tassa 3e12f0d50c Add history scrubbing mechanism to simulate.
[screen capture](https://www.youtube.com/watch?v=YSvWn_poqWs)

PiperOrigin-RevId: 570676968
Change-Id: Id9a1fccc9418b851e007ddcf3fa89acd4edff3e9
2023-10-04 06:36:34 -07:00