Taylor Howell
89152fb39e
Import NVIDIA/warp from GitHub.
...
PiperOrigin-RevId: 806000657
Change-Id: I5127baf8d212c5fc7bd597c843957f4b279d52db
2025-09-11 15:06:55 -07:00
Haroon Qureshi
ad5f07e060
Extract functions from mjv_updateCamera for calculating frames and frustums.
...
PiperOrigin-RevId: 805770746
Change-Id: Id2a6022a2ee2e8b1a783debf54b470a9df81051a
2025-09-11 04:10:59 -07:00
Haroon Qureshi
017e7d5a73
Add light ids.
...
PiperOrigin-RevId: 805755907
Change-Id: I92a1b1ea4ce1495c2746fd518f33ab2d1ad81399
2025-09-11 03:20:44 -07:00
Google DeepMind
da2fad4530
Catch RuntimeErrors when importing warp.
...
PiperOrigin-RevId: 805586914
Change-Id: Ica3ca016c8056316d1d2f052e4d3481f578a8aad
2025-09-10 17:53:41 -07:00
Rishi Krishnan
4b18009f47
Revert Eigen version
...
PiperOrigin-RevId: 805395095
Change-Id: I9c8184f2e667dd7595a6211626be606878f9c04f
2025-09-10 09:34:06 -07:00
Rishi Krishnan
6ec5f8b9c2
Update Mujoco Deps in preperation for the 3.3.6 release
...
PiperOrigin-RevId: 805007266
Change-Id: I9332d0b8439f8941b9dc9889c1e27d54e9a70b99
2025-09-09 12:01:53 -07:00
Alessio Quaglino
9d5063799f
Resize keyframes also at the start of compilation.
...
Previously, it was assumed that attaching was the last operation performed on the mjSpec, so keyframes resulted in the incorrect size. In order to prevent information loss, we now only allow the resize function to expand the keyframe array, since attach should never remove a degree of freedom.
PiperOrigin-RevId: 804917828
Change-Id: Icfacd207ced1c6aac600d514f8d9065ceff2d347
2025-09-09 08:16:32 -07:00
Sam Haves
3b738ebb67
In USD exporting docs change NVIDIA mujoco-usd-converter to Newton.
...
PiperOrigin-RevId: 804866989
Change-Id: I9ee060a85a0671e4ca07654a48d791b456a6e1f9
2025-09-09 05:39:07 -07:00
Kyle Bayes
ea660f4c13
Expose minimal asset cache API.
...
PiperOrigin-RevId: 803126923
Change-Id: Iabf63802572f7cb86864b5ece85f44b3f15a4ec0
2025-09-04 12:18:36 -07:00
Michiel Blokzijl
02a535b44f
Update https://pypi.org/project/glfw/ to 2.9.0.
...
This ensures that Python bindings build also uses GLFW 3.4, similar to C/C++
MuJoCo.
The hashes are from https://pypi.org/project/glfw/2.9.0/#files .
PiperOrigin-RevId: 802536702
Change-Id: Ie9cfc17a5f9146fe6731681115f7aaa98fcb323e
2025-09-03 07:01:53 -07:00
Alessio Quaglino
767996ab17
Transform inputs to global before calling rayMesh in SDF collisions.
...
PiperOrigin-RevId: 802523399
Change-Id: I889b020e4e721fbf471992f5c87446df601ba766
2025-09-03 06:12:34 -07:00
Yuval Tassa
7a93e22514
Refactor MJMODEL_POINTERS into category-specific macros.
...
PiperOrigin-RevId: 802089588
Change-Id: Id3443f88e8243c5167a23b6e42eb32a32f88e8d3
2025-09-02 04:41:50 -07:00
Haroon Qureshi
8d884585dd
Add target relative mouse motion actions.
...
PiperOrigin-RevId: 802072880
Change-Id: I1ff204594a126f8e50df4c703709f70ec4dd458c
2025-09-02 03:39:49 -07:00
Michiel Blokzijl
ee777f74d3
Explain how to build Python and C/C++ sources from the same codebase.
...
The previous instructions use a pre-built binary from MuJoCo and do not cover
the use-case of building C/C++ and Python bindings from the same codebase.
PiperOrigin-RevId: 802060401
Change-Id: I6d0b9c7c2269ff596ac706b716ff6c95b42c5d99
2025-09-02 02:51:49 -07:00
Alessio Quaglino
8acd83f317
Add passive collision mode for flexes.
...
PiperOrigin-RevId: 801754907
Change-Id: I4147af2ee2596519d42cb9a03cf8d5488f0bc3e8
2025-09-01 04:13:58 -07:00
Yuval Tassa
b9900db00e
Extract memory allocation functions and core utilities
...
PiperOrigin-RevId: 801745499
Change-Id: Iaf05c3430769d3115743d8ab020d13148cb2eb59
2025-09-01 03:38:25 -07:00
Yuval Tassa
5d598a49a2
Documentation bug fixes.
...
PiperOrigin-RevId: 801283863
Change-Id: I85bb11f4970bd6206f99a91cee04c2b99f73c576
2025-08-30 11:03:43 -07:00
Yuval Tassa
b092563cab
Remove mjDSBL_PASSIVE, split it into mjDSBL_SPRING and mjDSBL_DAMPING.
...
PiperOrigin-RevId: 800870384
Change-Id: I273e0ceec090901e2620febb67e57914928e94bb
2025-08-29 06:06:28 -07:00
Saran Tunyasuvunakool
0eea5d6dbd
Add libwayland-dev and libxkbcommon-dev to GitHub Actions YAML.
...
PiperOrigin-RevId: 800462182
Change-Id: I771df8af3f827f0fe7f2d9975eb6fd04940f17dc
2025-08-28 07:40:38 -07:00
Michiel Blokzijl
508d22f794
Update the GLFW dependency used by MuJoCo to 3.4.
...
This makes it possible to build open-source MuJoCo with Wayland support out of
the box.
Currently, it is necessary to run cmake with -DGLFW_USE_WAYLAND=ON and ensure
cmake can find the "ECM" package somehow (a dependency of the 3.3.6 version of
GLFW), for which there is no automated fetching setup. As this is no longer a
dependency of GLFW it seems to make more sense to update GLFW to make out of the
box builds on Wayland.
PiperOrigin-RevId: 800456607
Change-Id: Iffdf1d65319bfb134e580faceb63ac3bed7b9c84
2025-08-28 07:24:26 -07:00
Yuval Tassa
b1c94c3761
Add printing of block-diagonalized matrices
...
PiperOrigin-RevId: 800345520
Change-Id: I4996c5a7509cb451744d3e428a975cceee845ea5
2025-08-28 00:54:39 -07:00
Baruch Tabanpour
ba47402853
Import google-deepmind/mujoco_warp from GitHub.
...
PiperOrigin-RevId: 800210640
Change-Id: I06d05ee2560f54d975458f0e13b37157c088c33b
2025-08-27 16:11:11 -07:00
Tom Power
79f2bbc727
Fix memory error when placing images in viewport
...
PiperOrigin-RevId: 800148735
Change-Id: I1c12ef23b0af9538b285d032460cf832eb48bf49
2025-08-27 13:20:45 -07:00
vidurvij-apptronik
28aa33b673
expose glfw
2025-08-27 12:00:37 -05:00
Yuval Tassa
643dc5bf4f
Update USD schema formatting
...
PiperOrigin-RevId: 800018484
Change-Id: I7677cd099415af1271c7475d80a660653199b984
2025-08-27 07:02:50 -07:00
Haroon Qureshi
ed6fa7fe09
Remove unused mjMOUSE_SELECT option.
...
PiperOrigin-RevId: 799957524
Change-Id: I69d091781dc2a2e4a762d2255d04fc411295602a
2025-08-27 03:19:04 -07:00
Yuval Tassa
7443e685ac
Allow contact sensor subtree1/subtree2 to be any body.
...
PiperOrigin-RevId: 799632590
Change-Id: If9cd6c5a3a5f83d89ae024a8f64232ab1f1d603a
2025-08-26 11:00:39 -07:00
Baruch Tabanpour
9eaa31af2f
Import google-deepmind/mujoco_warp from GitHub.
...
PiperOrigin-RevId: 799614257
Change-Id: Ie05d4dd7c45308ed5e8010c3eca4b68f552335ea
2025-08-26 10:17:11 -07:00
Taylor Howell
1ac51cf2a5
Update comment in engine_forward_test.cc.
...
PiperOrigin-RevId: 799550233
Change-Id: I75840bdcb94d4b10962f1fff5a225a6fe5bc0672
2025-08-26 07:12:51 -07:00
Yuval Tassa
debfdf011e
Add some missing Nullable annotations.
...
PiperOrigin-RevId: 799527319
Change-Id: If84a3b2f19243ea9cf8b114d1421879d8186eb1d
2025-08-26 05:52:01 -07:00
Yuval Tassa
ec94bb49aa
Make constraint island discovery on by default.
...
Also fix latent bug in mjData serialization.
PiperOrigin-RevId: 799505349
Change-Id: I299e7cc8133fa2ec0b339a7ff3d02543e06778b1
2025-08-26 04:27:24 -07:00
Taylor Howell
4cf5c37211
Fix spelling in engine_forward_test.cc.
...
PiperOrigin-RevId: 799147728
Change-Id: If5e734ba31961d459281f7cb5edea7c370c1f2fd
2025-08-25 09:15:48 -07:00
Yuval Tassa
2b45b39ce5
Move mjtConstraint from mjmodel.h to mjdata.h.
...
PiperOrigin-RevId: 798987338
Change-Id: I3117742de7eb3c16366f266fe0c0651262717cb4
2025-08-24 23:45:14 -07:00
Yuval Tassa
d77ecb3f06
Move mjtConstraintState from mjmodel.h to mjdata.h.
...
This is the correct location, this enum is only used in `mjData`, not `mjModel`.
PiperOrigin-RevId: 798860951
Change-Id: I48b9a2afc831bd9a6966cc9586429fd03605bdd2
2025-08-24 12:37:54 -07:00
Yuval Tassa
1c1bb14e1c
Order fields in mjxmacro like in mjmodel and mjdata headers, add tests.
...
PiperOrigin-RevId: 798848000
Change-Id: Id1a41f6a0a4e3e6f3bb197f096061bd1d72a4b51
2025-08-24 11:17:30 -07:00
Yuval Tassa
7479312218
Use LaTeX macros for prettier uppercase subscripts in documentation.
...
PiperOrigin-RevId: 798547203
Change-Id: I039886fd15ee022de780a19d0ad6e17d01c306f4
2025-08-23 05:39:36 -07:00
Yuval Tassa
a230aa60c5
Improve mj_addM and associated test
...
- Updated docs to clarify that only the lower triangle is touched
- The function was unnecessarily adding the upper triangle in the sparse case
- The test used an unnecessarily large model and stepping it leading to timeouts under ASAN
PiperOrigin-RevId: 798528736
Change-Id: I592cc17dfb62379bb0cd6b332a8eb7e8b0ef6355
2025-08-23 03:56:47 -07:00
Google DeepMind
a64a26c3ae
No public description
...
PiperOrigin-RevId: 798355907
Change-Id: I3a225e3200cbc60ccc3d93f21694a606a7ab296a
2025-08-22 15:04:46 -07:00
Yuval Tassa
93c5665730
Add some missing Nullable annotations.
...
PiperOrigin-RevId: 798298579
Change-Id: I773eda7deca10c820345a33835716072e0b9af5a
2025-08-22 12:15:02 -07:00
Sam Haves
1fb1810b07
Add ability to specify a material assignment to a mesh asset.
...
This extends both the spec and the XML definition to allow specification of a material name on a mesh. This material acts as a fallback in the case that the referencing geom element does not specify a material of it's own.
PiperOrigin-RevId: 798232378
Change-Id: Iaf300c727732744ea1b613e64334ee505ac6e209
2025-08-22 09:11:31 -07:00
Google DeepMind
42d8454555
Internal change.
...
PiperOrigin-RevId: 798190254
Change-Id: Ie3a3b6e074511991cc6ccb35f2c26c6d9ae7ccd8
2025-08-22 06:41:49 -07:00
Haroon Qureshi
debbd7c916
Fix cast; should be mjtGeom not mjtMouse.
...
PiperOrigin-RevId: 798177495
Change-Id: I5d95446dd7f7f84052b60cb378acdd856c1e4d50
2025-08-22 05:47:49 -07:00
Google DeepMind
ecfe65242f
Add nullable attribute to AST nodes for function parameters in API introspection. Fixes #309
...
This change introduces an `nullable` flag to `ArrayType`, `PointerType`, and `FunctionParameterDecl`. The code generation process now parses function comments from `mujoco.h` to identify parameters marked as "Nullable" and sets this flag accordingly.
PiperOrigin-RevId: 797870883
Change-Id: Ic7cac5a7a9c14177fbf97b8655c5c4809d4ef683
2025-08-21 12:35:10 -07:00
vidurvij-apptronik
df6b503101
Update simulate library name in python cmake
2025-08-21 14:34:12 -05:00
vidurvij-apptronik
b88ec4df73
Fix SimulateDependecies
2025-08-21 14:10:44 -05:00
Baruch Tabanpour
3dec35a91e
Do not update qacc_warmstart at the end of the solver call; instead, update it at the same time as all other state variables. This change makes mj_forward idempotent.
...
PiperOrigin-RevId: 797826112
Change-Id: Ibc51624adc3ec42c265958bf77696b33231431c1
2025-08-21 10:44:05 -07:00
Yuval Tassa
2f28473bc1
Remove transposed Jacobian fields from mjData
...
No longer computed unconditionally, only ad-hoc where required.
PiperOrigin-RevId: 797753297
Change-Id: I2030fc342c98ff33575b0526dd72e2110c4fcb74
2025-08-21 07:21:24 -07:00
Yuval Tassa
5fe4224ae7
Compute sparse Jacobian transpose inside solver.
...
PiperOrigin-RevId: 797745776
Change-Id: I2ec429120d0c6eb51bec340619ab178389482e69
2025-08-21 06:55:48 -07:00
Yuval Tassa
f71053243e
Replace std::array with C-style array for error buffer in GJK tests.
...
PiperOrigin-RevId: 797730796
Change-Id: I228c58e163c8c6d1426a88c1a6f447c4a56a34e6
2025-08-21 06:03:53 -07:00
Yuval Tassa
174a50442d
Allow transposing of sparse sub-matrices whose first row is > 0
...
PiperOrigin-RevId: 797728559
Change-Id: I3c825118dae198333d357d2e4f248d00b0f5d8ce
2025-08-21 05:56:33 -07:00