Bálint Hodossy
28f19fbe7c
Merge branch 'feature/unity-hmap-dyn' of https://github.com/Balint-H/mujoco into feature/unity-hmap-dyn
...
Merge in format from GitHub
2023-12-11 14:56:19 +00:00
Bálint Hodossy
af133f4022
Fix whitespace placements
2023-12-11 14:54:55 +00:00
Balint-H
d3429f97cc
Merge branch 'main' into feature/unity-hmap-dyn
2023-12-07 14:07:21 +00:00
Bálint Hodossy
0b413656b8
Restrict access to height range properties of the HField shape
2023-12-07 14:02:21 +00:00
Bálint Hodossy
2adfd09b87
Rebuild scenes on terrain changes for dynamic heighfields
2023-12-07 13:34:33 +00:00
Copybara-Service
e4359c04df
Merge pull request #1253 from Balint-H:feature/unity-hmap
...
PiperOrigin-RevId: 588420615
Change-Id: I2340f2fc025017133644eeedacf94b5c83e04669
2023-12-06 07:32:45 -08:00
Bálint Hodossy
3e3687d022
Add functionality to synchronise rendered terrain to position of the geom
2023-12-05 18:49:32 +00:00
Bálint Hodossy
f5a2879f9d
Fix braces convention
2023-12-04 14:00:24 +00:00
Bálint Hodossy
8ec1e4e2b8
Add heightfield geom type with Unity terrain, import not yet supported
2023-12-04 13:55:38 +00:00
Matthew Bennice
c0b7b9873d
Store paths for hfields, textures, and skins similar to meshes.
...
PiperOrigin-RevId: 587283093
Change-Id: Ie6d8d2ecb185697a27d1b6f7fca1312df006af12
2023-12-02 03:51:25 -08:00
Yuval Tassa
822b03446c
Improve pipeline documentation, expose mj_implicit function to public header.
...
PiperOrigin-RevId: 586380774
Change-Id: I3fafa563ebc852e17e1233288455b96f4499027b
2023-11-29 10:18:57 -08:00
Copybara-Service
9075f2cb74
Merge pull request #1222 from Balint-H:fix/ball-joint-tooltip
...
PiperOrigin-RevId: 585964341
Change-Id: I59fca025b1005317279f43b8f621e62b0f80fe62
2023-11-28 07:04:50 -08:00
Alessio Quaglino
8010aad7be
Add flex_elemlayer to mjvSceneState. Fixes #1193 and #1219 .
...
PiperOrigin-RevId: 585581657
Change-Id: Iec4da74437544184c19765a2feee1cca4c368d34
2023-11-27 02:25:05 -08:00
Bálint Hodossy
d37881d241
Fix wrong units indicated in ball joint tooltip.
2023-11-23 11:38:21 +00:00
Bálint Hodossy
4fb1787a3b
Use default value of memory option if not present in imported XML
2023-11-17 12:46:55 +00:00
Tom Erez
9952f1708c
Remove collision option from Unity plug-in GUI.
...
PiperOrigin-RevId: 582978831
Change-Id: I97275438c730655a9c942526fa410bf006189968
2023-11-16 03:24:05 -08:00
Baruch Tabanpour
1554048856
Bump dev version number to 3.0.2.
...
PiperOrigin-RevId: 582773849
Change-Id: I07a70911578fabb556eec1a4d8aa6fcb6557513f
2023-11-15 12:51:04 -08:00
Alessio Quaglino
e3b3f96373
Add flex_texcoordadr to mjvSceneState. Fixes #1193 .
...
PiperOrigin-RevId: 582630943
Change-Id: I113b135752268773e0afafe004b8f27c1e96ffc7
2023-11-15 05:02:05 -08:00
Yuval Tassa
893c404230
Runtime disabling of actuators according to group.
...
Added `option-actuatorgroupdisable` attribute and associated `mjOption.disableactuator` integer bitfield, used to disable sets of actuators at runtime according to their group.
- The first 6 actuator groups are toggleable in the `simulate` viewer.
- Minor refactor and cleanup of actuator documentation.
https://youtu.be/H9qG9Zf2W44
Fixes #1092 .
PiperOrigin-RevId: 578335600
Change-Id: I4cf663b90ea768e4380acfa2fe3b8c15c7cbb568
2023-10-31 16:24:38 -07:00
Google DeepMind
7e419276ca
Increase maximum number of UI elements per section in Simulate.
...
PiperOrigin-RevId: 578268786
Change-Id: Ia584fb1782a6f20cdb64ec13bfa0bbcb211b1165
2023-10-31 12:36:39 -07:00
Alessio Quaglino
034bb62986
Add cam_intrinsic to mjvSceneState.
...
Add `frustum.xml` to engine_vis_state_test models.
Fixes #1115 .
PiperOrigin-RevId: 576567292
Change-Id: I642c32a87427507580046d2d260263c689d50c99
2023-10-25 10:17:42 -07:00
Alessio Quaglino
1a47a97040
Disable shadows for geoms of category mjCAT_DECOR. Fixes #1114 .
...
Added `frustum` to `rgba` and `scale` in the `visual` section.
PiperOrigin-RevId: 576547599
Change-Id: I69bf528680e3d4a59d6e04f6db99a6d345001d1d
2023-10-25 09:08:20 -07:00
Yuval Tassa
a89412bb4a
Add components of qfrc_passive to mjData: qfrc_{spring, damper, gravcomp, fluid}.
...
PiperOrigin-RevId: 576493532
Change-Id: If8eda1a2bb728fe8ab91b8004f97fc729d999ad9
2023-10-25 05:01:45 -07:00
Alessio Quaglino
01a932e052
Fix flex constraint Jacobian for edges belonging to a single body.
...
PiperOrigin-RevId: 575161094
Change-Id: If4153bcb751cdd6dbdddeb08672f7107c7c5bbc2
2023-10-20 02:49:34 -07:00
Saran Tunyasuvunakool
269d88ad92
Bump dev version number to 3.0.1.
...
PiperOrigin-RevId: 574451745
Change-Id: Iedbbb3304b88876f31a6196d690a1f05c6428e2f
2023-10-18 15:01:21 +01:00
Erik Frey
8f9c690c85
Add MJX and bump version number to 3.0.0.
...
Co-authored-by: Baruch Tabanpour <btaba@google.com >
PiperOrigin-RevId: 574327508
Change-Id: Ia9b62fbc929c6869dfcec87636b2e10d405a1060
2023-10-18 10:33:29 +01:00
Copybara-Service
59164702ab
Merge pull request #978 from aftersomemath:depth-precision-in-place
...
PiperOrigin-RevId: 572961667
Change-Id: I69011ddf835ae286e30e7f84cca67867cfe94fa4
2023-10-12 11:18:36 -07:00
Alessio Quaglino
5a70ad08ab
Add Flex component.
...
PiperOrigin-RevId: 572830650
Change-Id: I6908228087b7b9683be3506c8d9cdc725ed5dcd5
2023-10-12 10:49:35 +01:00
Saran Tunyasuvunakool
2e15574b58
Allow user-defined visualization geoms to be added to the passive viewer.
...
Fixes #1023 , #1082
PiperOrigin-RevId: 572303635
Change-Id: Ia8399f816f311b38a7b137f5bd4f359f77a1da1c
2023-10-10 10:52:21 -07:00
Alessio Quaglino
8af09eb70d
Add timing of collision phases.
...
PiperOrigin-RevId: 572273621
Change-Id: Ib9440a996a05e42e00dcf4f1ce487a12f65e999b
2023-10-10 09:27:45 -07:00
Matthew Bennice
071af3b015
Implement threading for island constraint solving.
...
Humanoids22 No threads:
Benchmark Execution Time: 9.475905812s
Humanoids22 with 10 Threads:
Benchmark Execution Time: 4.871352s
PiperOrigin-RevId: 571214307
Change-Id: I1f4f2c761b4ae6bc8fac1f28c6c695f6c499f339
2023-10-05 21:05:19 -07:00
Yuval Tassa
ee78b8f76b
Added mjData.eq_active user input variable, for enabling/disabling the state of equality constraints.
...
Renamed `mjModel.eq_active` to `mjModel.eq_active0`, which now has the semantic of "initial value of `mjData.eq_active`".
Fixes #876 .
PiperOrigin-RevId: 570410643
Change-Id: Id03171e751377c7cc453f143abee64239ee2e2ed
2023-10-03 09:32:24 -07:00
Yuval Tassa
177aec68dc
Add overlay positions in the center of viewport edges, move PAUSE and LOADING... overlays to the top center.
...
PiperOrigin-RevId: 570054949
Change-Id: If0046df382e67ad3a48e7138a75e9e200c0626b9
2023-10-02 07:05:50 -07:00
Levi Burner
9e51f20ce2
More fixups to mjtDepthMap names
2023-09-29 19:53:58 -04:00
Levi Burner
56403b4dce
Fixups to comments and flags for reversed Z rendering
2023-09-29 19:53:58 -04:00
Levi Burner
2e52bf807b
Add flag to mjrContext to support legacy depth mapping by default
2023-09-29 19:53:57 -04:00
Levi Burner
d32eb6bd12
In place change to reverse Z rendering and 32 bit float offscreen depth buffer
2023-09-29 19:53:47 -04:00
Levi Burner
fc7b212369
Support reversed Z rendering and float32 offscreen depth buffer
...
Combined, both options greatly improve camera depth accuracy compared to
OpenGL default Z mapping and int24 depth buffer.
Requires GL_ARB_clip_control and ARB_depth_buffer_float extensions
2023-09-29 19:52:09 -04:00
Alessio Quaglino
36d2ffe4f2
Specify camera parameters using standard robotics conventions.
...
PiperOrigin-RevId: 569147555
Change-Id: I3443f95e5de56a17024f5e5c03f33888dd583edb
2023-09-28 05:19:19 -07:00
Saran Tunyasuvunakool
8ed321d469
Rename mesh_assetpathadr to mesh_pathadr and move it to the end of the mesh section.
...
PiperOrigin-RevId: 568911603
Change-Id: I8f21c3d1cc9c73b6a95292a50f262b1a199d0898
2023-09-27 11:32:10 -07:00
Matthew Bennice
7f8018a3f3
Update XML parsing to store asset path so that assets can be recovered and sent to external renderers
...
PiperOrigin-RevId: 567347908
Change-Id: I4d8e1abe35be3a67643ff925af709921280856f8
2023-09-21 10:27:52 -07:00
Matthew Bennice
4f34cacf35
Add maxuse_threadstack to mjData
...
PiperOrigin-RevId: 567334177
Change-Id: Ifd772350042e548a63ab269fd68fb5e5fef55831
2023-09-21 09:41:00 -07:00
Yuval Tassa
9cf1f6eba4
Remove mjOption.collision and associated option/collision attribute.
...
PiperOrigin-RevId: 566427090
Change-Id: I6e5873b8db707586820b17b53c7ab4bbff0f0b2b
2023-09-18 15:15:54 -07:00
Yuval Tassa
9902b73502
Rename mj_stackAlloc to mj_stackAllocByte.
...
PiperOrigin-RevId: 566351365
Change-Id: I91541168e83b05a730113661cc9f07985ac9ff0c
2023-09-18 10:53:35 -07:00
Yuval Tassa
63fd23a934
Remove mjTIMER_ACCELERATION, add mjTIMER_ADVANCE.
...
- mjTIMER_ACCELERATION is not very useful, it's usually very tiny (0.5% for humanoid, 1% for 22humanoids). It basically times a single call to `mj_solveM`.
- Added `mjTIMER_ADVANCE` to time `mj_Euler` and `mj_implicit` (which can be significant).
- Moved `mj_transmission` to `mjTIMER_KINEMATICS` where it belongs (and used to be).
PiperOrigin-RevId: 565936880
Change-Id: I26b8a067133594e5500ca1c809beb3518b4a8d9c
2023-09-16 08:03:45 -07:00
Yuval Tassa
86d8b912f4
Rejigged solver statistics in preparation for islanding.
...
- See public description below.
- Stopped incrementing the iteration count in saveStats().
- `sizeof(mjSolverStat) == 40`, so this ends up costing 160KB, up from 40KB.
BEGIN_PUBLIC
Changed the size of `mjData.solver`, the structure used to collect solver diagnostic information. The array is now of length `mjNISLAND * mjNSOLVER`, where each row of length `mjNSOLVER` contains separate solver statistics for each constraint island. Until solver islanding is implemented, only row 0 is used.
- The new constant `mjNISLAND` is set to 20.
- `mjNSOLVER` is reduced from 1000 to 200.
- Added `mjData.solver_nisland`, the number of islands for which the solver ran.
- `mjData.solver_niter` (renamed from mjData.solver_iter) and `mjData.solver_nnz` are now integer vectors of length `mjNISLAND`.
END_PUBLIC
PiperOrigin-RevId: 565030093
Change-Id: I773e918805c6ced79f0dab5f19ea23956760c8c5
2023-09-13 06:18:37 -07:00
Alessio Quaglino
8064ad59c8
Add camera projection sensor.
...
BEGIN_PUBLIC
Add camera projection sensor.
END_PUBLIC
PiperOrigin-RevId: 564726114
Change-Id: I33b8e5562eff29c21538bf8f38ce3116c7dfc5a9
2023-09-12 08:16:20 -07:00
Saran Tunyasuvunakool
78183e60e1
Refactor thread pool implementation.
...
- Make mjTask non-opaque and remove C++ Task class.
- Make C++ thread pool a subclass of a skeletal mjThreadPool C struct.
- Make the mjTask status enum more consistent with the rest of MuJoCo.
- Change mju_threadPoolEnqueue to take just the mjTask. Users must now prepare the mjTask by assigning the function pointer and argument into the struct.
- Rename files in thread/ to be more consistent with the rest of MuJoCo.
- Run threading tests in CMake.
- Allow use of C++20 designated initializers.
Otherwise the functionality remains identical.
PiperOrigin-RevId: 564374675
Change-Id: I37c9894566bc39faf217e5aa97a4e2713a70e467
2023-09-11 07:20:34 -07:00
Matthew Bennice
0ba10cc4f0
Save normalising transform applied to mesh assets in mjModel.mesh_{pos,quat}
...
Fixes #409
PiperOrigin-RevId: 564217402
Change-Id: I53ddeef4e343905021cd7852d548f6769c876474
2023-09-10 15:25:59 -07:00
Saran Tunyasuvunakool
7e5a7b76fc
Change GitHub org name to google-deepmind.
...
PiperOrigin-RevId: 563512242
Change-Id: Ife98501e95bb3459d96c7c73e5fb53be5513dd4b
2023-09-07 12:34:20 -07:00