Before this change, xipos[0,1,2] was only set to 0 by mj_resetData zeroing the entire buffer.
When using mj_resetDataDebug, the value would be wrong.
PiperOrigin-RevId: 450939814
Change-Id: I887dd977161c7d132a80b766db7be23350ffb50b
We currently skip building the Python bindings on Windows since MSVC takes an hour+ on them. Internally, we use Clang for our Windows build, so are not affected by this issue.
PiperOrigin-RevId: 450914163
Change-Id: I329aab28f3a2aeb1896242a8712f89d8ecff2f92
Fixes a bug introduced in CL/432455486, which stopped saving explicit inertias if they were inferred from geoms. But if we don't save inertias then we need to save mass/density specifiers.
BEGIN_PUBLIC
xml_native_writer saves geom mass or density, if specified.
END_PUBLIC
PiperOrigin-RevId: 450667775
Change-Id: Ibb5b269b58f1143013091729642bb501243ed943
This PR added necessary annotations, following what we did for mjData
and mjModel for length of the given array.
This is useful because my parser used to generate Swift interface:
https://github.com/liuliu/swift-mujoco/blob/main/Sources/codegen/main.swift#L297
such that the access to underlying array is bound-checked.
Please let me know if this makes sense. After this change, I can
successfully generate all mj* struct interfaces in Swift without problem
(with notable exception of mjui): https://github.com/liuliu/swift-mujoco/tree/main/Sources
The previous commit missed out some recent changes in the internal repo. This commit brings the public GitHub repo in sync.
PiperOrigin-RevId: 450377010
Change-Id: I59a68ae4a39c5cd5ed5f7df77ba870273243d623
Added analytic derivatives of smooth (unconstrained) dynamics forces, with respect to velocities:
- Centripetal and Coriolis forces computed by the Recursive Newton-Euler algorithm.
- Damping and fluid-drag passive forces.
- Actuation forces.
A new implicit-in-velocity integrator is implemented using the analytic derivatives. This integrator lies between the Euler and Runge Kutta integrators in terms of both stability and computational cost.
PiperOrigin-RevId: 450377010
Change-Id: Ie192b441876c22e732fb749333926f296e0a09cc
NumPy arrays with an empty shape cannot be assigned via the usual syntax.
Fixes: #238.
Related: #237.
PiperOrigin-RevId: 441265437
Change-Id: Ib0de22c83f9babe9a97682dc5a32660c198ad68c
GCC's linker drops dependency on libGL because neither MuJoCo, GLFW, nor the sample applications themselves explicitly depend on OpenGL symbols.
PiperOrigin-RevId: 439372170
Change-Id: I122d1d9658484e901f422d35395ad5929c7a9021
This commit requires a new binary build, and therefore breaks compatibility with version 2.1.3.
Fixes#217.
Change-Id: I1e08b6fd2c468e3845e2166a1e4cc9d265de64de
- Rename "set key", "reset to key" to "save key" and "load key", respectively.
- Change bindings of F6 and F7 from the not very useful "vertical sync" and "busy wait" to the more useful cycling of frames and labels (as in Domain Explorer).
PiperOrigin-RevId: 438017260
Change-Id: I6d67e99f785f2777e131c591188f554722af7f49
This is useful when writing or modifying collision functions, when the actual direction of the x and y axes of a contact can be important.
PiperOrigin-RevId: 437256700
Change-Id: I5eab737fc98018399e151552778c6109088bf614
- Add '[' and ']' to cycle through fixed cameras.
- Remove options to step backwards or step 100 steps forwards or back.
- Add missing elements from built-in help.
- Reorder help strings.
PiperOrigin-RevId: 436497103
Change-Id: I9f910ea328c859239b46c9d7a47e4ee16a43f1ad
Up the mujoco bindings version to 2.1.2.post2.
Keep the capsule deconstructor which calls mj_freeContext, because mjr_freeContext is idempotent.
PiperOrigin-RevId: 435714183
Change-Id: I9f8615f85f2b3e383f447f6684e61200039d57d4