Commit Graph

3139 Commits

Author SHA1 Message Date
Yuval Tassa 2937efd5f2 Use sparse math in mjd_actuator_vel.
PiperOrigin-RevId: 778924297
Change-Id: I221fb338c894f278e9f8401f25056539c62ccc65
2025-07-03 10:52:54 -07:00
Alessio Quaglino af7d20c035 Change mjs_nextChild to be DFS to match XML parsing.
PiperOrigin-RevId: 778915232
Change-Id: I5e290f47b7d2530597bb6c85b66ff2ae807e5510
2025-07-03 10:07:13 -07:00
Alessio Quaglino 67f9ffddbd Delete outdated mjs_delete doc.
PiperOrigin-RevId: 778912984
Change-Id: I2c09c67706679e9e85ea29fd63e698cddb0ef6ca
2025-07-03 09:54:52 -07:00
Alessio Quaglino 69ce5dbd05 Consolidate tree traversal tests in the C and Python APIs.
PiperOrigin-RevId: 778883024
Change-Id: I0d30ed011e60a6da7148cebc1f715895fd0c6fd6
2025-07-03 07:25:23 -07:00
Taylor Howell 465fb3234c Updates for documentation.
PiperOrigin-RevId: 778872216
Change-Id: I01406dcc03b11dfde80d6f59c6138b1ceb670716
2025-07-03 06:35:11 -07:00
Tom Erez 7aa3b81c67 Fix minor typo in changelog.
PiperOrigin-RevId: 778854401
Change-Id: Ie1a2f2b4b6e0524d0ca7463b84c8fc550dcbdda7
2025-07-03 05:16:11 -07:00
Yuval Tassa 7548d370ed Add missing changelog item and enum documentation, clarify breaking changes.
PiperOrigin-RevId: 778842895
Change-Id: I53f7f639ce8f1d3d5066fa7364bc1b74f2ed14ef
2025-07-03 04:24:23 -07:00
Alessio Quaglino 564c51ddb9 Check for duplicated names when setting element names.
PiperOrigin-RevId: 778827590
Change-Id: I77a208c1571cf735cae80840ea830aa347681f71
2025-07-03 03:20:55 -07:00
Alessio Quaglino 594e17074a Replace name attribute with setters and getters in the C API of mjSpec.
PiperOrigin-RevId: 778816015
Change-Id: Ieffb7a5bce37e887ff009f9a02d2434435e79ca1
2025-07-03 02:30:56 -07:00
Yuval Tassa 1c5d47c94b Fix paragraph rendering in texture docs.
PiperOrigin-RevId: 778803841
Change-Id: I17412b4d549984b361cab9edc20d04a708a71985
2025-07-03 01:42:26 -07:00
Sam Haves d2840ce665 Add missing files to mjusd cmake.
PiperOrigin-RevId: 778800306
Change-Id: I1bd5766108c59fb05a6a2c6c8b3207476aca60ea
2025-07-03 01:27:12 -07:00
Sam Haves 1d613b9b9a Add support for mjcPhysics keyframes to USD interop.
PiperOrigin-RevId: 778552679
Change-Id: I04026599f7a2836e3fe1cf0d553bcc86a5795f98
2025-07-02 10:17:41 -07:00
Robin Alazard 072b327430 Fix the parsing of USD scenes that use ResetXformStack
Also add a new test for it

PiperOrigin-RevId: 778114814
Change-Id: Ib019768ac45ecf7ec6d437199a3d1427557b2f06
2025-07-01 11:07:07 -07:00
Robin Alazard 50de1b3c2c Read new Mujoco-specific JointAPI when converting USD.
PiperOrigin-RevId: 778037519
Change-Id: Idd81dc5dc14e2dfb40ba7db4404fd09f9ff50a9f
2025-07-01 07:40:23 -07:00
Robin Alazard 9dc67b50cd Write new Mujoco-specific JointAPI data to USD.
PiperOrigin-RevId: 778035661
Change-Id: I945aa38fc58973023d78ab0ab5fad7783d23e1ef
2025-07-01 07:35:34 -07:00
Robin Alazard 862436f9b3 Add JointAPI schema in mjcPhysics.
PiperOrigin-RevId: 778030981
Change-Id: I22a4bf2a550fb78e47bef0ff171b10ce5912887e
2025-07-01 07:22:05 -07:00
Nimrod Gileadi 3db03dcce5 Don't output a warning about duplicate geom names for unnamed geoms in URDF.
PiperOrigin-RevId: 777998616
Change-Id: Id87533e30567fe5a0e372220ba57819383d42236
2025-07-01 05:36:17 -07:00
Taylor Howell 9eb0745968 Fix comment typo in getimpedance.
PiperOrigin-RevId: 777997980
Change-Id: I0fe87196360e6771db10f4d9b08d43448ea5f54e
2025-07-01 05:33:47 -07:00
Alessio Quaglino 5c1f1f9dba Add octree to meshes of SDF geoms.
PiperOrigin-RevId: 777634862
Change-Id: I3210c2f8d73fd30ceecb0a11abd1d82e086b3d5d
2025-06-30 10:50:15 -07:00
Sam Haves 106df98946 Create Keyframe schema in mjcPhysics.
PiperOrigin-RevId: 777568003
Change-Id: I036fd54e2926c138f9ca8de87040b263b8427df3
2025-06-30 07:48:48 -07:00
Yuval Tassa 1c98dfd86e Remove unused header
PiperOrigin-RevId: 777505320
Change-Id: I39d4ccf47a49bfb6f74090e59c68373e76a0bcf5
2025-06-30 04:09:10 -07:00
Taylor Howell 2ce5caa239 Update MJX rne_postconstraint with contributions from equality connect and equality weld constraints.
PiperOrigin-RevId: 777491801
Change-Id: Ib32dda4178def7a96d31e91787f3d0866a56cd76
2025-06-30 03:21:45 -07:00
Yuval Tassa 57b3d6d0f4 Make island discovery compatible with flex
PiperOrigin-RevId: 777490642
Change-Id: Iae2f4e8297cc24bded833e04ebfe32895f3a5460
2025-06-30 03:16:57 -07:00
Yuval Tassa c945247e7c Don't write limited and actuatorfrclimited attributes when "true" is not a valid value.
Saved XMLs are filled with
```
<joint type="free" limited="false" actuatorforcelimited="false"/>
```

but since these are hardcoded to "false" at compile time, there is no point in saving them to XML.

PiperOrigin-RevId: 776606516
Change-Id: Iac61c5126231f776077a8c265be732f9215fbfbb
2025-06-27 09:07:30 -07:00
Sam Haves e80a62c6d5 Allow loading USD files into simulate.
PiperOrigin-RevId: 776584803
Change-Id: I66a5277b3752d69ba5d44ed419204951edb18d41
2025-06-27 07:59:21 -07:00
Alessio Quaglino e97e5d31d0 Replace box SDF with a smooth approximation.
This approximation is equivalent to the exact SDF on the surface and externally, but it is smooth on the inside, rotating the gradient from radial at the box center to normal to the faces at the surface, and interpolated linearly (using two Euler angles) in between. This enables stable contact gradients for deeper penetrations.

PiperOrigin-RevId: 776574022
Change-Id: I562976e9f0535b0067aa12b2bc9d48eccb6472e9
2025-06-27 07:21:30 -07:00
Robin Alazard 931ea6938c Add parsing tests for joints.
Also remove the not properly supported SphericalJoint (ball joint).

PiperOrigin-RevId: 776550199
Change-Id: I863dfa89c4cb564cf453e57c19df563ddade92b8
2025-06-27 06:01:19 -07:00
Sam Haves 2e8e38b492 Add double quotes when setting rpath property fixing handling of lists.
PiperOrigin-RevId: 776549203
Change-Id: I51375c536729356f023076037ec1f5335d407fa4
2025-06-27 05:57:36 -07:00
Matija Kecman 09f44b3c92 Explain why mjpython is needed on MacOS
PiperOrigin-RevId: 776500649
Change-Id: Ifc4c944284f541cdb3a7027365ee27caaee39731
2025-06-27 03:01:10 -07:00
Matija Kecman 09f7154e57 Add option to only sync the state to improve sync performance in passive mode.
By default this option is off, which preserves the current behavior of syncing all of `mjModel` and `mjData`.

PiperOrigin-RevId: 776498017
Change-Id: I02127c9397efbabebb89b0e0d139b00b6e665d35
2025-06-27 02:49:58 -07:00
Robin Alazard 8f6a13aa8f Add support for displayColor/Opacity (convert to rgba)
PiperOrigin-RevId: 776488857
Change-Id: I34713748ac553b5fdfad736801cdaa7dc2b7f1b0
2025-06-27 02:16:49 -07:00
Sam Haves 24789f8fe5 Apply articulation API to the correct body when converting to USD.
PiperOrigin-RevId: 776206773
Change-Id: I84b5687a9900b42fd208124414ac98feaaa9f8c4
2025-06-26 11:07:11 -07:00
Sam Haves 1e319aebed Support joint actuator authoring in Mjcf SdfFileFormat plugin.
PiperOrigin-RevId: 776202325
Change-Id: I8503dd98c1b64502550b879e70039ae568517508
2025-06-26 10:55:49 -07:00
Yuval Tassa 21bae3a388 Report which body has too-small mass/inertia in compilation error.
PiperOrigin-RevId: 776196017
Change-Id: Ib81efb170347a57cdc4b446c14cd7b8f5357958c
2025-06-26 10:40:40 -07:00
Sam Haves afc35451a0 Expose ability to go from USD stage to MjSpec.
PiperOrigin-RevId: 776184388
Change-Id: I0325b347c9896183d148a196897e1e5d0c4bbde2
2025-06-26 10:09:55 -07:00
Sam Haves 672746f509 Use brackets for USD schema code.
PiperOrigin-RevId: 776157077
Change-Id: Id8c55a98dc695348430a99ca59ec509a6db26403
2025-06-26 08:54:55 -07:00
Robin Alazard 3441e0aa03 mj_usd plugin: add joints export.
Note that ball joint is missing, will come later.

PiperOrigin-RevId: 776057523
Change-Id: I8d13c3ea9e7f3d894af73a4640eb93202f8a2a03
2025-06-26 03:02:17 -07:00
Baruch Tabanpour 48205fb570 Symmetrize dense matrices before cho_factor, since the jax.scipy.linalg.cho_factor API had a breaking change in https://github.com/jax-ml/jax/commit/a981e1c4b99b7628efe2bf70a75c0422a70e9524.
PiperOrigin-RevId: 775740310
Change-Id: I1a172ec4851b5d6a7f3d56179c54fec5d4c9e0c5
2025-06-25 10:15:00 -07:00
Yuval Tassa 18d5d5d03f Improve documentation related to mjSpec element deletion.
PiperOrigin-RevId: 775677830
Change-Id: I02e51b57956b0b6a20c654326b54e001b498dd96
2025-06-25 07:23:51 -07:00
Taylor Howell d0faa3624e Update MJX inverse dynamics for tendon armature.
PiperOrigin-RevId: 775658246
Change-Id: Ie6a71b971d4b165e0235689b7b4ee3246486e10d
2025-06-25 06:14:46 -07:00
Google DeepMind da831f5d3e Add support for separate occlusion, roughness and metallic textures
PiperOrigin-RevId: 775632047
Change-Id: I40ba0b3d4ecb0c0a03534b8d93f85d279febbc9c
2025-06-25 04:37:19 -07:00
Google DeepMind 81d16b7ccc Add some comments to the material construction code
Grouped similar lines together, since they have become separated.

PiperOrigin-RevId: 775595031
Change-Id: Id75e87e07eb2e6b745698a57ea048daaff34f35c
2025-06-25 02:22:42 -07:00
Sam Haves 9089059517 Move headers from src/experimental/usd to include/experimental/usd
PiperOrigin-RevId: 775269423
Change-Id: Ifca6c3ead32b9fb3f02784ed38a9efae300be410
2025-06-24 09:33:26 -07:00
Google DeepMind 78df2ae7fa Add support mjcf emissive layer materials
Mujoco supports emission as a constant coefficient, and emissive, an rgb texture. This cl supports the rgb emissive texture for usd.

PiperOrigin-RevId: 775236677
Change-Id: I0e2ce1d9f68d79b6e9d2c28eecab22b2692f061c
2025-06-24 08:06:32 -07:00
Sam Haves a0614fff1f Fix tinyxml2 includes.
PiperOrigin-RevId: 775204246
Change-Id: Ia5c692eb29b2a670cb01e3efdeb85fd6e1474b99
2025-06-24 06:18:00 -07:00
Taylor Howell 8d9556db7c Update MJX feature parity.
PiperOrigin-RevId: 775147260
Change-Id: I48097c2ac4ef17b7f17f6fd8a894ae00a25abf63
2025-06-24 02:54:23 -07:00
Taylor Howell 862300def5 Fix comment typo in _resetData.
PiperOrigin-RevId: 774705647
Change-Id: Id933cae9a219798eae266b36bd3efba2a3b88163
2025-06-23 03:49:55 -07:00
Alessio Quaglino a00bfa819c Raise error when binding to a removed element.
PiperOrigin-RevId: 774462737
Change-Id: I820c0e1c010ae9fbf6d9667c3364d4b65bf21002
2025-06-22 10:15:31 -07:00
Yuval Tassa 419cdf1ff3 Add mesh fit image to XMLreference
PiperOrigin-RevId: 774458193
Change-Id: I3bae60e431c628ccc4cb96f96cc7b045dc365698
2025-06-22 09:54:44 -07:00
Yuval Tassa 2707eadc00 Refactor mj_crb and mj_tendonArmature to use CSR M.
PiperOrigin-RevId: 774077388
Change-Id: Id57118a5d66c074766f5c69fd3b889ebc625cbf7
2025-06-21 04:49:06 -07:00