Commit Graph

1969 Commits

Author SHA1 Message Date
Alessio Quaglino 2f46dec669 Fix bug in frame saving. Fixes #1802
PiperOrigin-RevId: 651696068
Change-Id: Ie1e2e1de4e83c42f2b5ebcc3afd0540b9afe7bbd
2024-07-12 01:56:38 -07:00
Yuval Tassa 3d1d1d0718 Multithreaded mesh compilation.
PiperOrigin-RevId: 651358120
Change-Id: Id6272aac84ec6ac1b709d2f4a44b7593307bd158
2024-07-11 04:21:49 -07:00
Nimrod Gileadi e7301edd20 Copy arena contents in mj_copyData.
Fixes #1710.

PiperOrigin-RevId: 651351384
Change-Id: I56e3204b30bb18f48278117e85e90464177da973
2024-07-11 03:54:44 -07:00
Kyle Bayes f9ab89b205 Refactor user cache to just support void pointers so user objects can be cached whole.
PiperOrigin-RevId: 651307384
Change-Id: I92c058a900727070235d00b6d2165c29fd12e7b0
2024-07-11 01:01:27 -07:00
Erik Frey c145b79f6e Using typing instead of collections.abc. Fixes #1763
PiperOrigin-RevId: 651186508
Change-Id: I844ec884b802837554b0b60f2414d6bc37f2da14
2024-07-10 16:21:00 -07:00
Alessio Quaglino 27b9ddda5b Add attach tag to MJCF.
PiperOrigin-RevId: 651117953
Change-Id: I57b0e53ed44607d479b3785d908e0837c0804cf3
2024-07-10 12:41:43 -07:00
Copybara-Service 5b080bacc4 Merge pull request #1799 from JewelryForge:main
PiperOrigin-RevId: 651069985
Change-Id: I758e27e2f4bf19bba38d9e1189a41accae40d028
2024-07-10 10:29:22 -07:00
Copybara-Service 60afda949c Merge pull request #1714 from abhihjoshi:tendons
PiperOrigin-RevId: 651048034
Change-Id: If5b7cb55ff0007c3c6f932e62f068d1168778a33
2024-07-10 09:26:54 -07:00
Alessio Quaglino 7f9f8b5429 Catch errors in attach during replicate.
PiperOrigin-RevId: 651041336
Change-Id: I59986e157b4e22c74f8b8493899cdd4a3d5df839
2024-07-10 09:04:37 -07:00
Chengrui Zhu 1a47860577 Add a xml test file whose mesh has a default class. user_api_test will have a segmentation fault before #1799. 2024-07-10 23:10:22 +08:00
Yuval Tassa b483ce608e Use std::thread in compiler on all platforms.
PiperOrigin-RevId: 651005412
Change-Id: I8dfb142dc2d87ab0af79583f2df168c105b50138
2024-07-10 07:10:45 -07:00
Yuval Tassa 7e97caaafd Add a test for lengthrange computation, with and without threading.
PiperOrigin-RevId: 650997405
Change-Id: I45c3725dacb6ccf17977953a9ffed717c927b786
2024-07-10 06:39:18 -07:00
Yuval Tassa 17f6b12930 Report model load time in simulate if it takes more than 0.5 seconds.
PiperOrigin-RevId: 650933302
Change-Id: Id33aa9935a6b4f493dfa9a913f8a424b3f387fa1
2024-07-10 02:56:47 -07:00
Chengrui Zhu 5bd13b4982 Copy all keys of def_map when copying a mjCModel. Fixes #1798 2024-07-10 16:40:36 +08:00
Alessio Quaglino 462cfa5ceb Attach the tree of defaults recursively and with namespacing.
PiperOrigin-RevId: 650664018
Change-Id: I17751a02a406dcb2a2ca218c316b5eb0370071b8
2024-07-09 09:54:09 -07:00
Yuval Tassa d0f86bc2c5 Correct API documentation of mjvSceneState. Fixes #1793
PiperOrigin-RevId: 650662466
Change-Id: Ie887a63ca9136bbc688db6a79036701b9516c1d6
2024-07-09 09:49:07 -07:00
Nimrod Gileadi 393895bb29 Explicitly specify actdim on PID plugin actuators, to allow them to be used with keyframes.
Support actdim attribute on plugin actuators.

Remove the actuator_actdim callback. This callback leads to crashes when loading keyframes for models that have a stateful plugin.

PiperOrigin-RevId: 650649505
Change-Id: I40d1994d02ae4e20ce631b2702a984766cf2628e
2024-07-09 09:08:48 -07:00
Alessio Quaglino e0d33eb1d0 Remove mjCBase::def and use mjCBase::classname instead.
PiperOrigin-RevId: 650629741
Change-Id: I10a9955b99e4a5ff0b5a742e22635ccad1455f1a
2024-07-09 08:02:32 -07:00
Nimrod Gileadi c5f958bdff When reporting compilation errors, include warning strings.
This allows plugins to call mju_warning, and have the string propagate to users.

PiperOrigin-RevId: 650621601
Change-Id: I608e7a3a1ad126ab8da2ff0634fa708458fb9ccc
2024-07-09 07:33:11 -07:00
Kyle Bayes 450e7ff777 Move user_resource.c to C++.
PiperOrigin-RevId: 650592110
Change-Id: I5e043970e3aa722e3961e478334cad4f3f1c191e
2024-07-09 05:33:38 -07:00
Yuval Tassa 70f86617f8 Fix typos in documentation.
PiperOrigin-RevId: 650191926
Change-Id: I84d098782c6e4585a31e1de6bb1a7af3b3698f94
2024-07-08 03:49:12 -07:00
Alessio Quaglino f57dc90669 Refactor Default class to use pointers instead of indices.
This in order to make it easier to append the default tree to another tree.

PiperOrigin-RevId: 649812975
Change-Id: I2915ac7e37957e45eadc24d6caaf7beea236bf29
2024-07-06 03:51:30 -07:00
Yuval Tassa 9d0812911c Add a test for type attribute.
PiperOrigin-RevId: 649635359
Change-Id: Ibe5d9fcb5f14371e5f154d645b838a9d012331d5
2024-07-05 06:16:46 -07:00
Kyle Bayes c6fd002f87 Move engine/engine_resource.{c,h} to user/user_resource.{c,h}.
PiperOrigin-RevId: 649628768
Change-Id: Id90c983cf70c0f92c3b033ac1b1654c53696955d
2024-07-05 05:41:55 -07:00
Abhishek Joshi e734527e7b Fixing formatting for USD scripts 2024-07-04 16:25:44 -05:00
Abhishek Joshi fcb247e35b Merge remote-tracking branch 'upstream/main' into tendons 2024-07-04 15:10:29 -05:00
Abhishek Joshi c79ae6f242 fixing frame rate bug in demo file 2024-07-04 15:06:25 -05:00
Saran Tunyasuvunakool d029e4ff99 Get rid of unnecessary return value policy specification.
PiperOrigin-RevId: 649437250
Change-Id: I61f8db0af526ebf667244124fcd4984881c6ef13
2024-07-04 09:45:22 -07:00
Yuval Tassa 47d25bc4ac Add missing id attributes in Python bindings of mjsElements.
PiperOrigin-RevId: 649435098
Change-Id: I16383958c25cb8fdc16a107d5abef8626a675632
2024-07-04 09:32:33 -07:00
Kyle Bayes 57e6760ec9 Re-implement VFS internals in C++, removing the constraints of the previous implementation.
PiperOrigin-RevId: 649433087
Change-Id: Icaa3e6b7f2ef14f56b04fef2f4360b46d8b5f022
2024-07-04 09:22:23 -07:00
Yuval Tassa 118b6810b3 Make "id" a property rather than a method of mjsElements in Python bindings.
PiperOrigin-RevId: 649424035
Change-Id: I8226b3040aa2001ae9748399257e36ac263b7c8b
2024-07-04 08:35:37 -07:00
Kyle Bayes f8b944bf7f Fix missing fclose when resource is closed without being read. Fixes #1685.
PiperOrigin-RevId: 649416747
Change-Id: I05eeb1071868116b6e5be76e26b465788e4d35b1
2024-07-04 08:07:34 -07:00
Alessio Quaglino a5a3c9efc7 Discard all keyframes when attaching models.
PiperOrigin-RevId: 649415647
Change-Id: Ie2defe248df7078684d987351985cb66bd754e5b
2024-07-04 08:04:40 -07:00
Alessio Quaglino a0945e4b5a Add non-tree element lists to python bindings.
Fixes #1752.

PiperOrigin-RevId: 649405039
Change-Id: Ie0b575a3ec912b773141694397ac2f394bff1227
2024-07-04 07:24:02 -07:00
Kyle Bayes d831153401 Reorganize GJK support logic.
PiperOrigin-RevId: 649361144
Change-Id: I9868377cf36cccdcf66de3bc27afb872a164da8d
2024-07-04 03:48:52 -07:00
Abhishek Joshi 59303bb161 Fixing formatting for usd files and adding pylint configuration 2024-07-03 18:32:59 -05:00
Copybara-Service 4b733b14d7 Merge pull request #1770 from fanminshi:fix_mjx_import
PiperOrigin-RevId: 649199077
Change-Id: Ie1e404cfb0c33db077fa6299edc45645aaecd1cf
2024-07-03 14:27:00 -07:00
Yuval Tassa ca44ad4f0f Improve docstrings and layout in mjdata.h
PiperOrigin-RevId: 649195756
Change-Id: Iadf6589c226acacd9f3e85959de552a98fc7435a
2024-07-03 14:15:51 -07:00
Kyle Bayes 5cce67439b Clean up user_util.
PiperOrigin-RevId: 649166858
Change-Id: I79423dda628fb4bf3ceae438dd8dc5b96d69d2a9
2024-07-03 12:38:36 -07:00
Kyle Bayes 2a4410e4e5 Fix bug with absolute meshdirs in included XML files. Fixes #1772.
PiperOrigin-RevId: 649150979
Change-Id: I5df08c689afc4f5bc625e989a8c0b9733fcfa3c2
2024-07-03 11:49:17 -07:00
Alessio Quaglino 9107d3b507 Add mjs_findKeyframe.
PiperOrigin-RevId: 649036650
Change-Id: If514d5c333dd6084af9509324fd658c72576d7b5
2024-07-03 05:17:41 -07:00
Yuval Tassa 8f16b72f44 Rename mjSpec.euler to eulerseq to match MJCF.
PiperOrigin-RevId: 649007737
Change-Id: Iedb53c1d8a6e6a082a6ba30a1fb2bb4516839fa1
2024-07-03 03:10:02 -07:00
Tom Erez df7ea3ed33 Add support for multiple textures in one material (mjModel).
PiperOrigin-RevId: 648732764
Change-Id: I29b60dd62a069789a32017ff0d55e36b57e0052b
2024-07-02 08:50:23 -07:00
Tom Erez 3b73dfe33b Add textured materials to render context, and refactor mjvGeom to refer to those textures.
PiperOrigin-RevId: 648719103
Change-Id: Idb4425bdeea3cbc1133cda3e4366574ed3bb5ccc
2024-07-02 08:01:40 -07:00
Yuval Tassa af3233f98d Delete unused code.
PiperOrigin-RevId: 648658198
Change-Id: I1bec6b07becd7cec22af4c67e9cc1a9bcda669b0
2024-07-02 03:32:55 -07:00
Copybara-Service 0676ad499f Merge pull request #1769 from fanminshi:renderer_context
PiperOrigin-RevId: 648508835
Change-Id: Ice87cd1221723ed44ba0ddca97b6aac245dd8975
2024-07-01 15:48:41 -07:00
Yuval Tassa 19d505d847 Remove unused texture attribute in some models.
PiperOrigin-RevId: 648497401
Change-Id: I9f9a843abfb710afaf25798fa659efd92bcd7007
2024-07-01 15:05:02 -07:00
Alessio Quaglino 9106f40e2b Add mjSpec bindings.
Co-authored-by: Saran Tunyasuvunakool <stunya@google.com>
PiperOrigin-RevId: 648444641
Change-Id: I08ee1d3f4fae1efbc7934ba94702b1c06d8cb92a
2024-07-01 12:05:50 -07:00
Yuval Tassa f2c3be470f Make seed fixed for random number generator when using <texture mark="random"/>
Also improve documentation regarding texture height and width attributes.

PiperOrigin-RevId: 648427167
Change-Id: I59a0fe75d3526f8563a5252584ed60ef7fb8fd70
2024-07-01 11:11:17 -07:00
Yuval Tassa c1ade85490 Add tests for mju_normalize4.
PiperOrigin-RevId: 648422309
Change-Id: Ie363b396cd854588dc59994ae76059f42f2a54b0
2024-07-01 10:58:35 -07:00