Commit Graph

593 Commits

Author SHA1 Message Date
Alessio Quaglino 5e353efaaf Add mjmModel opaque pointer to C API.
PiperOrigin-RevId: 607619891
Change-Id: Ic1eaaa842438d9c2e19f742deff41967287853f5
2024-02-16 02:21:25 -08:00
Yuval Tassa f9f7827a64 Trim trailing default values in saved xmls.
For attributes which accept variable-length inputs. Currently used for `gainprm, biasprm, friction, solref, solimp` Example:

- Saved before: `biasprm="0 -3 -4 0 0 0 0 0 0 0"`.
- Saved after: `biasprm="0 -3 -4"`.

PiperOrigin-RevId: 607609550
Change-Id: I0501348280663867693175236872e2aabc703601
2024-02-16 01:36:06 -08:00
Alessio Quaglino 414a67640a Add mjmDef to C API.
PiperOrigin-RevId: 607310534
Change-Id: I530f32c8fd4340dc1006585259a5e05cb4aa62b8
2024-02-15 06:17:58 -08:00
Alessio Quaglino 6f958bc404 Add mjmSkin to C API.
PiperOrigin-RevId: 607295996
Change-Id: I63bf7213d41acbfb98770c097979ce9b889f21ca
2024-02-15 05:09:10 -08:00
Yuval Tassa bafe490ea8 Sort assets in schema according to order in docs.
PiperOrigin-RevId: 607272771
Change-Id: Ifd1220671a59effd0a841babbe746dd23d02eefd
2024-02-15 03:10:43 -08:00
Yuval Tassa ddabfb9b6a Clean up handling of auto-limits.
PiperOrigin-RevId: 607266967
Change-Id: Iec8332cc8467ea3c2dc046acf87d221b5af67259
2024-02-15 02:43:53 -08:00
Alessio Quaglino 80a986c0f5 Add mjmBodyPair to C API.
PiperOrigin-RevId: 606997065
Change-Id: Iefc2dff6ae942ce93ca83ec5f5fe9d7ae8bb6a40
2024-02-14 08:40:05 -08:00
Alessio Quaglino c9e7586499 Add mjmHField to C API.
PiperOrigin-RevId: 606933108
Change-Id: I21c895ed3e137dab8f57e2d0bcfb558aae2b971a
2024-02-14 04:12:29 -08:00
Alessio Quaglino 2ee8a4dabd Add mjmNumeric, mjmText, mjmTuple, mjmKey to C API.
PiperOrigin-RevId: 606919327
Change-Id: I477f6cd8beefcb3962238722565e3b398b73446c
2024-02-14 03:10:38 -08:00
Kyle Bayes 266161ee4c Convert mju_openResource to write warnings to a given error string.
PiperOrigin-RevId: 606907392
Change-Id: Ic70e980aa9ba2bdbe1787773f51749b34f74afed
2024-02-14 02:17:40 -08:00
Alessio Quaglino 9ecd700923 Add mjmMesh to C API.
PiperOrigin-RevId: 606642150
Change-Id: Iae69ce8426729b1e2394d9da9f349a2f0f7ccf98
2024-02-13 09:09:59 -08:00
Alessio Quaglino 06505f49f9 Add mjmTexture to C API.
PiperOrigin-RevId: 606543622
Change-Id: I2db743c1c40116f0503329fb1d004d9b041e83e7
2024-02-13 02:09:39 -08:00
Kyle Bayes eabd4c06f9 Move schema definition validation from runtime to a test.
PiperOrigin-RevId: 606280564
Change-Id: I9fec9eb3538f63f84e1982f21e1a93f16342d540
2024-02-12 09:49:48 -08:00
Alessio Quaglino 13d6eeacdd Add mjmPair to C API.
PiperOrigin-RevId: 606274243
Change-Id: I15e2a38096a61bc1377a666c96113ae20ce3ed59
2024-02-12 09:25:33 -08:00
Alessio Quaglino b224367a9b Add mjmFlex to C API.
PiperOrigin-RevId: 606264589
Change-Id: Ifd94f5241a3eaaf23653b136cece81c054f43202
2024-02-12 08:48:11 -08:00
Yuval Tassa ab209c41be Align comments in mjm_ structs.
PiperOrigin-RevId: 606214754
Change-Id: I4d5ddd98baf52fc71acc1bfca0b345cafda4ce7f
2024-02-12 04:54:03 -08:00
Kyle Bayes ff39d0b812 Keep include elements while parsing XML. No change in behavior.
PiperOrigin-RevId: 606203141
Change-Id: Ica06f7c121a90597cd29f74692230365edd4302f
2024-02-12 03:54:44 -08:00
Alessio Quaglino 4e5b194e88 Add mjmMaterial and mjmFrame to C API.
PiperOrigin-RevId: 606191307
Change-Id: Iaf43f81522029002b28bba14ea046b1c968ab2e7
2024-02-12 02:56:03 -08:00
Yuval Tassa 3601026b1d Refactor handling of auto-limits.
PiperOrigin-RevId: 605972151
Change-Id: If468af2081182787178d805124f2d2c90ee29951
2024-02-10 22:01:13 -08:00
Yuval Tassa cebd2a657e Clean-up user_api.h and user_init.cc
PiperOrigin-RevId: 605967516
Change-Id: Ieaf75d764778d81932b860ca9f16007adc0037a1
2024-02-10 21:21:13 -08:00
Yuval Tassa 230f8c7b63 Increase maximum compiler error message length from 300 to 600.
PiperOrigin-RevId: 605947931
Change-Id: I5564d0e2d6690ee75996a10e05cd6c7eca49f279
2024-02-10 18:51:44 -08:00
Alessio Quaglino 1bd6a32af2 Add mjmEquality, mjmTendon and mjmWrap to C API.
PiperOrigin-RevId: 605853716
Change-Id: Ieb468cdec5a3032200cf1121960408a61bb08fc5
2024-02-10 03:30:31 -08:00
Saran Tunyasuvunakool dc40bbd1f5 Refactor global object tables logic.
This unifies the implementation for plugins and resource providers.

PiperOrigin-RevId: 605617372
Change-Id: I2ea52b4c53f48c4c59edd5fdc1c51c7edba7340e
2024-02-09 06:50:06 -08:00
Alessio Quaglino 6fa139a693 Add mjmActuator and mjmSensor.
PiperOrigin-RevId: 605600704
Change-Id: I0a2f5eb9d894c068ca9ee08940c752066021b6ec
2024-02-09 05:11:13 -08:00
Alessio Quaglino e3cbad280c Add mjmJoint, mjmCamera, and mjmLight to C API.
PiperOrigin-RevId: 605596008
Change-Id: Ie53ac4b99f5336380039ab5eb9b2ca4a82768b28
2024-02-09 04:44:58 -08:00
Alessio Quaglino 1fe258fb60 Add mjmGeom to C API.
PiperOrigin-RevId: 605302719
Change-Id: Ib4208e60cf4299473a96f62db2c9dc8c7a5b0b36
2024-02-08 06:53:01 -08:00
Matthew Bennice e4fada1963 Correct use of uninitialized value and clean up FullInertia function
PiperOrigin-RevId: 605049375
Change-Id: I7ffb6bd56b08111036e8490bf767fb9393499f13
2024-02-07 11:38:02 -08:00
Alessio Quaglino 8b17d260a3 Add user_init for setting default parameters.
PiperOrigin-RevId: 604942840
Change-Id: I746ac7bb28f508b606bc0b8544136f523ce50d4c
2024-02-07 04:42:41 -08:00
Alessio Quaglino a3e49d582e Add mjmBody and mjmPlugin and their compiler C APIs.
PiperOrigin-RevId: 604937231
Change-Id: Ib8a2105ce6c0500d6a610258b46f192d9e73169d
2024-02-07 04:17:30 -08:00
Matthew Bennice b9c50ad79c Move fullinertia from mjCAlternative to mjCBody with correction to handle URDF with 0 inertias.
PiperOrigin-RevId: 604812870
Change-Id: I018254d1362a654a4f99bf5e621d5abc7129a0c6
2024-02-06 17:21:31 -08:00
Matthew Bennice 84f20ffb66 Automated g4 rollback of changelist 604607692.
*** Reason for rollback ***

breakage resulting in "inertia must have positive eigenvalues" when parsing URDF's

*** Original change description ***

Move fullinertia from mjCAlternative to mjCBody.

***

PiperOrigin-RevId: 604677400
Change-Id: Iab8263b5b0aee310bd75404e314f3b707ce3300e
2024-02-06 09:47:04 -08:00
Alessio Quaglino 737342bdfe Move fullinertia from mjCAlternative to mjCBody.
PiperOrigin-RevId: 604607692
Change-Id: Ic2fcc08b9073d01ab190e7acacc3d827dbdfbca4
2024-02-06 04:43:12 -08:00
Alessio Quaglino 01439f28b3 Add AddFreeJoint and remove isfree from AddJoint.
PiperOrigin-RevId: 604597442
Change-Id: I2fe03cf0f9a59b425080cc5cc12b236fea9c020d
2024-02-06 03:49:49 -08:00
Alessio Quaglino 3b2dd06c54 Add compiler C API for mjmSite.
PiperOrigin-RevId: 604573450
Change-Id: I6ba7fcece0942ddc0d109413ba5684b2df3fab96
2024-02-06 01:50:47 -08:00
Meghha Dhoke f763254a00 Updating Mujoco Release version number to v3.1.3
PiperOrigin-RevId: 604459311
Change-Id: I766f704c28740cf751cb935bb48fb6954fccf024
2024-02-05 15:59:20 -08:00
Nimrod Gileadi e3dc54f609 Emit only one warning about ARB_depth_buffer_float or ARB_clip_control.
This code was warning on every frame, which was unhelpful.

PiperOrigin-RevId: 604267726
Change-Id: Ied1d46e3d84d58f3b21201e3752e3c2d43ea3ba9
2024-02-05 03:36:23 -08:00
Alessio Quaglino 1ed8694dbe Replace xmlpos with info string for mjCError.
PiperOrigin-RevId: 603759456
Change-Id: I0d86d8e61e31a70da77169107268728d6c052778
2024-02-02 12:34:52 -08:00
Alessio Quaglino b3f93d436b Convert mjmStruct to a C-struct.
PiperOrigin-RevId: 603357871
Change-Id: I27918b0030fc6a589c361cad965611adc3bf7247
2024-02-01 06:57:47 -08:00
Alessio Quaglino 7a98038e88 Move mjCSite attributes to mjmSite struct.
PiperOrigin-RevId: 603051589
Change-Id: I31eeeccffa15b96e7393b8e64f6be8c964fc5948
2024-01-31 08:07:48 -08:00
Yuval Tassa e143b3dbc0 Allow height-field elevation data to be specified in XML.
PiperOrigin-RevId: 602374498
Change-Id: I2d3364d68876a35799b24aca1051e2f5aebdda75
2024-01-29 06:59:28 -08:00
Kyle Bayes 3b0a680fa7 Refactor GlobalModel class in the XML API.
PiperOrigin-RevId: 601761425
Change-Id: I9c24f670c1e9766867ec75aab56cec1c0b4f5703
2024-01-26 07:33:47 -08:00
Alessio Quaglino fb8f77df74 Throw error if qhull is called with NaNs.
PiperOrigin-RevId: 601745538
Change-Id: I590673ca7975e4abc171f98704a6c8f8d08f8327
2024-01-26 06:13:27 -08:00
Alessio Quaglino 076db5d366 Copy face_ into facetexcoord_ if not specified and needed.
PiperOrigin-RevId: 601732448
Change-Id: Iffe01076db22201dba2611ea36174f808ae00c1e
2024-01-26 04:54:43 -08:00
Kyle Bayes 4f53d9a0d7 Add AddVector and GetVector to user cache.
PiperOrigin-RevId: 601485067
Change-Id: I1a31f15c2495de4f057316022dcddf4df39afd64
2024-01-25 10:13:13 -08:00
Alessio Quaglino c8e839a666 Do not create contact if there are no DOFs.
PiperOrigin-RevId: 601146599
Change-Id: I68b1975a3217b266bbbfb0a15c85a65cfa46facb
2024-01-24 09:37:40 -08:00
Kyle Bayes aede8cf5cf Rename user_asset_cache to user_cache.
PiperOrigin-RevId: 601097322
Change-Id: Iea3d6481cd214028ef63ed72868999ecb0b1eeb4
2024-01-24 06:05:56 -08:00
Kyle Bayes a1ddbdf7f8 Add an implementation of a cache for assets for compilation speedups.
PiperOrigin-RevId: 599850003
Change-Id: I83e299e127058a5657d7b262aa98d36451b530f6
2024-01-19 09:04:01 -08:00
Yuval Tassa fea7c10b95 Add bvhactive flag to visual/global. Fixes #1279.
PiperOrigin-RevId: 599778272
Change-Id: If5530629035cc68b198447503388f59a04041b13
2024-01-19 02:59:56 -08:00
Yuval Tassa 2feefbc5d2 Remove fine-grained timing from narrow-phase collision functions, delete mjTIMER_COL_MID.
PiperOrigin-RevId: 599225419
Change-Id: Ieca166753c20a0abf660e2821b2844dda8758951
2024-01-17 10:54:23 -08:00
Yuval Tassa a14a584f1d Fix bug in muscle length-gain curve. Fixes #1342
PiperOrigin-RevId: 599165049
Change-Id: Ic5ef77b4349a8a9c343eacfd781195bfebea9aca
2024-01-17 07:20:01 -08:00