Commit Graph

478 Commits

Author SHA1 Message Date
Kevin Zakka bc02c2455e Sensor plugin parsing: Ensure sensor reftype is only assigned if a value in the XML exists.
PiperOrigin-RevId: 495314131
Change-Id: I5f955c435474de1dd1d75f7a7492e3a21ea9d289
2022-12-14 07:57:29 -08:00
Saran Tunyasuvunakool 05216f183c Fix broken test on MSVC.
Test was broken by 2e6af64b31.

PiperOrigin-RevId: 495196716
Change-Id: I0402b05da2778c54c2761efe5d9977fd091cddd6
2022-12-13 20:22:50 -08:00
Yuval Tassa 30b4309af9 Rename mjpPlugin.capabilities -> mjpPlugin.capabilityflags
PiperOrigin-RevId: 495080532
Change-Id: I81743472b816a331890a7cb05bfb7a89ebf07ff9
2022-12-13 11:33:27 -08:00
Saran Tunyasuvunakool 5c021d042b Modify signature of plugin reset callback.
The `reset` function is called inside `mj_resetData`, before any physics forwarding call has been made. It is therefore an error to read anything from mjData at this stage.

The only valid operation on mjData during `reset` is for a plugin to write into its own state variable slots and data struct. We modify the function signature to only provide access to these.

PiperOrigin-RevId: 495032492
Change-Id: Ic6d2967d2571a9083cbca1ba239ca70a8a51f474
2022-12-13 08:41:35 -08:00
Saran Tunyasuvunakool 2e6af64b31 Change mj_versionString test to not rely on a golden value.
PiperOrigin-RevId: 495026376
Change-Id: I378d2cff1edfe4d49c1bd7c131d92502d0a6b5b2
2022-12-13 08:16:55 -08:00
Saran Tunyasuvunakool 093125c2bd Fix incorrect plugin error message during model compilation.
PiperOrigin-RevId: 495023028
Change-Id: Iec0fa213235793c1b96409d86b9e2af1055404b2
2022-12-13 08:03:36 -08:00
Alessio Quaglino 3de2873883 Add deprecation warning for the Rope Composite type.
PiperOrigin-RevId: 494985209
Change-Id: I6ce7ca2aeae6f1e798bd4bda9b755852add26a36
2022-12-13 04:35:48 -08:00
Nimrod Gileadi 7076da6909 Correctly validate the size of user sensors in mj_validateReference.
PiperOrigin-RevId: 494877162
Change-Id: I0a070d7813efea6216d15270f62b6009c55e1a54
2022-12-12 17:49:06 -08:00
Tom Erez 21f10ce1b6 Add user sensor bindings.
Stop force-setting nusersensor, instead allow MuJoCo to infer the size.

PiperOrigin-RevId: 494783883
Change-Id: Ia2a1b1803b2904f2dded7b790d01eb6f1920dbaf
2022-12-12 11:43:00 -08:00
Tom Erez 7a248a8bde Rename bindings file for consistency.
PiperOrigin-RevId: 494779230
Change-Id: I693a0e389febc51276bde565bbbfc87c241f15e0
2022-12-12 11:24:12 -08:00
Saran Tunyasuvunakool 946c12faae Add missing semicolons after mjFREESTACK.
The code is already well-formed since the macro itself contains a semicolon, however this is stylistically inconsistent with the rest of the codebase. The missing semicolon is also problematic for automated code transformations.

PiperOrigin-RevId: 494734527
Change-Id: I9aef5844c8c3cce6eefea8f8bf13a4ab3dd79878
2022-12-12 08:22:37 -08:00
Copybara-Service 63d1c0ccea Merge pull request #634 from Balint-H:fix/unity-bindings-meta
PiperOrigin-RevId: 494391719
Change-Id: I22e16ab38d6d81565d96814a67f93cd334678d7b
2022-12-10 07:18:36 -08:00
Saran Tunyasuvunakool e9869d3bf3 Add a missing TM_END call when mj_fwdConstraint returns early.
PiperOrigin-RevId: 494375187
Change-Id: I013b6cdac06350a6c563fb686df9104dfb7258dd
2022-12-10 04:13:58 -08:00
Copybara-Service b9f7e400f7 Merge pull request #638 from cool-RR:patch-1
PiperOrigin-RevId: 494142429
Change-Id: Ic279ab235b5c8dd0fb467495ee8136b7fcab56c4
2022-12-09 05:01:11 -08:00
Copybara-Service 320a342162 Merge pull request #632 from LocutusOfBorg:patch-1
PiperOrigin-RevId: 494141201
Change-Id: I20777ddd0102eab4f90157ac764c1fa15d27acac
2022-12-09 04:53:06 -08:00
Copybara-Service 3a00e025ce Merge pull request #619 from traversaro:fixpypytests
PiperOrigin-RevId: 494129535
Change-Id: I301cb505a224eaa26df4896924d36c623b1a4a26
2022-12-09 03:39:22 -08:00
Copybara-Service 064d9f9707 Merge pull request #629 from kevinzakka:github-action-change
PiperOrigin-RevId: 494105265
Change-Id: Idaad9a69ba54b280e34fbebe4e47497ba822137c
2022-12-09 01:04:18 -08:00
Nimrod Gileadi 91455b3e1e Add a naive test of mujoco.viewer.
It just tries to import mujoco.viewer and sees that nothing crashes.

PiperOrigin-RevId: 493998120
Change-Id: I56ee696283a3c28f6c8b72de45c8fdbedb41b05f
2022-12-08 14:35:20 -08:00
Gianfranco Costamagna 0b33fd9eaa sed s/atomic_bool/atomic_int/g -i simulate/simulate.h
Change atomic_bool to atomic_int to make sure that the compiler will try the best to
generate machine code, instead of relying on an external atomic library
2022-12-08 21:24:00 +01:00
Ram Rachum 0b0002c8c6 Fix exception causes in introspect/type_parsing.py 2022-12-08 19:50:39 +02:00
Kevin Zakka 29a8c69825 Undo doc permalink change.
PiperOrigin-RevId: 493858259
Change-Id: I7467fd4b405fa71cd47f0beab6b654e0c74b51da
2022-12-08 04:33:12 -08:00
Silvio Traversaro bfe1017fc8 Skip tests that cannot run on PyPy 2022-12-07 19:19:21 +01:00
Alessio Quaglino b712e0757e Define kNumEdges and kNumVerts constants in Solid plugin.
PiperOrigin-RevId: 493587525
Change-Id: Ifa82211a4dfc3b288825b0961c48fc679aae204c
2022-12-07 06:30:40 -08:00
Kyle Bayes 7baee096a5 Update references.h for docs.
PiperOrigin-RevId: 493571258
Change-Id: Ie2c5f2a16116e8a056e69aed3adbed9b891c4eea
2022-12-07 04:52:06 -08:00
Bálint Hodossy ae2a8a4247 Add .meta file to Bindings folder 2022-12-07 11:44:44 +00:00
Copybara-Service bebfcad685 Merge pull request #628 from Balint-H:feature/unity-mesh-import
PiperOrigin-RevId: 493556582
Change-Id: I26bac07a8fc996043ec478d0ec0c5b56fe447e50
2022-12-07 03:18:38 -08:00
Kevin Zakka d7e082ae96 Testing doc change. 2022-12-06 18:15:10 +00:00
Alessio Quaglino 2d304d65e5 Use memcmp for mju_compare if no AVX. 15% faster on Humanoid.
PiperOrigin-RevId: 493324356
Change-Id: I5f71dc1a8ae40c18864ea80f00a5f86ff952f72c
2022-12-06 09:14:33 -08:00
Alessio Quaglino 7f459ab8ca Print vertex IDs when inconsistent face is found.
PiperOrigin-RevId: 493311839
Change-Id: I0283d86bc6092fbe4f47b845fa8ec212bffdfa1a
2022-12-06 08:24:46 -08:00
Saran Tunyasuvunakool e4f1d584ad Add control plugin API.
PiperOrigin-RevId: 493311715
Change-Id: Iccd99fb26004f39832818e378f01f9149a0e3e3b
2022-12-06 08:23:49 -08:00
Bálint Hodossy 8312f37e7e Reuse existing mesh assets in MjMeshFilter 2022-12-06 16:11:03 +00:00
Kyle Bayes 60fbb77b2a Fix typos in MuJoCo 2.3.1 changelog.
PiperOrigin-RevId: 493305455
Change-Id: I10c8dc198e60d9dd5ef107fc7210c80b66e123c9
2022-12-06 07:56:21 -08:00
Saran Tunyasuvunakool 8f3a771209 Update tutorial notebooks to use the built-in Renderer class.
PiperOrigin-RevId: 493303419
Change-Id: I5ddca087d522e7d43f8880641e8bc8d82d4f07a3
2022-12-06 07:46:16 -08:00
Saran Tunyasuvunakool 0d608282dd Fix viewer.py for Python 3.7 and 3.8.
PiperOrigin-RevId: 493301329
Change-Id: I44ffe5b33595d2dec7cd1aefbdd77d535901d894
2022-12-06 07:36:25 -08:00
Saran Tunyasuvunakool 36641cdb2c Update release date for 2.3.1.
PiperOrigin-RevId: 493165432
Change-Id: Ib88d2e487d7726076f50f8a44a44d1d2d72a15ab
2022-12-05 18:16:08 -08:00
Yuval Tassa 687bd15e05 Make comment more precise
PiperOrigin-RevId: 493165357
Change-Id: Ibdd86de67caf0e528e20ff6829e8ed4a8b967d4c
2022-12-05 18:15:14 -08:00
Saran Tunyasuvunakool 1408a63a02 Bump version number in Windows resource files.
PiperOrigin-RevId: 493091034
Change-Id: I65f2a68e6f182500dbd55cf93669f32e25d7ae66
2022-12-05 13:08:18 -08:00
Kyle Bayes 73fb61e3e2 Bump version number to 2.3.1.
PiperOrigin-RevId: 493076656
Change-Id: I48c7a45b503c4a7363ea1455a4a3788262d007f7
2022-12-05 12:13:55 -08:00
Kyle Bayes ef695bb8a8 Add Renderer class to Python native bindings.
PiperOrigin-RevId: 492994751
Change-Id: Iebbe5980668a15b1cd62c0076cc131255462b2eb
2022-12-05 06:54:33 -08:00
Kyle Bayes 341578450f Update dependency versions for Benchmark and Pybind11.
PiperOrigin-RevId: 492978119
Change-Id: Id48037950a6beac2f04f5e08448bd2fb3cb88678
2022-12-05 05:20:08 -08:00
Kevin Zakka 1ef5f9266e Improve the documentation.
* Add code block `copy` button via `sphinx_copybutton`
* Change permalink icon

PiperOrigin-RevId: 492955205
Change-Id: I2bcebcf7dd1fcace26ba03a4e348cb46eb838b57
2022-12-05 02:48:22 -08:00
Copybara-Service dc212c276d Merge pull request #612 from qleonardolp:patch-1
PiperOrigin-RevId: 492705106
Change-Id: I2265892aeca413e221a2cbb2244021c74afefd58
2022-12-03 10:49:22 -08:00
Saran Tunyasuvunakool 0846f38c82 Rename Python mujoco.simulate to mujoco.viewer.
PiperOrigin-RevId: 492701386
Change-Id: I059c572e2a63bd5529e863a9404720973df8ea46
2022-12-03 10:09:42 -08:00
Yuval Tassa dee1d6020a Make "acc" the default computation stage for sensors of type user.
PiperOrigin-RevId: 492689134
Change-Id: I21c07c74cb4b94d39c091ae98b169fd1235769d4
2022-12-03 07:50:15 -08:00
Saran Tunyasuvunakool 66cb7d611b Remove mujoco-py from the list of bindings advertised in README.
Also make the mention of Python bindings and Unity plugin in the intro section more prominent by breaking it into a separate paragraph.

PiperOrigin-RevId: 492686331
Change-Id: I7ff04219e29d0bd2051c4f218e59aca1639237b7
2022-12-03 07:14:16 -08:00
Alessio Quaglino 0d52feaa94 Add updateScene callback for plugins.
PiperOrigin-RevId: 492497689
Change-Id: I4a15cc5fa39dc7c9b85d132727f82033d4aec2c8
2022-12-02 10:11:32 -08:00
Saran Tunyasuvunakool 9fcf3b0c2e Modify Python simulate so that the Reload button works.
Also allow a `Callable[[], [MjModel, MjData]]` to be provided as an argument to `launch` instead of a fixed MjModel/MjData instance. This allows users to customise the behaviour of the Reload button.

Context: https://github.com/deepmind/mujoco/discussions/576#discussioncomment-4161429
PiperOrigin-RevId: 492296268
Change-Id: Ic4b797d2ea8a6967f7e3e7316f2184ea94a86d8b
2022-12-01 14:12:35 -08:00
Alessio Quaglino 89185b4af2 Using full path when adding a file to VFS. Fixes #616.
PiperOrigin-RevId: 492204185
Change-Id: If2b2230c095fe0bb776fcc3ffda48f13d0be5cb2
2022-12-01 08:34:20 -08:00
Francesco Romano b9b224bfbd Remove qhull patching as upstream has been updated.
PiperOrigin-RevId: 492136751
Change-Id: Ifc149c761a6c6cf3f32011ecb8af3523f39e8f00
2022-12-01 01:56:42 -08:00
Kevin Zakka 07371e5e08 Make Python bindings source installation instructions in docs match README.
PiperOrigin-RevId: 491961258
Change-Id: I4d2749b3963db3034d5fc8fca5bd43ab416117f7
2022-11-30 10:45:36 -08:00