From 7548d370ed1d91831e9d6de52c0192f8ea7eab0f Mon Sep 17 00:00:00 2001 From: Yuval Tassa Date: Thu, 3 Jul 2025 04:23:33 -0700 Subject: [PATCH] Add missing changelog item and enum documentation, clarify breaking changes. PiperOrigin-RevId: 778842895 Change-Id: I53f7f639ce8f1d3d5066fa7364bc1b74f2ed14ef --- doc/APIreference/APItypes.rst | 10 +++++++++ doc/changelog.rst | 40 ++++++++++++++++++++++++++--------- 2 files changed, 40 insertions(+), 10 deletions(-) diff --git a/doc/APIreference/APItypes.rst b/doc/APIreference/APItypes.rst index f1df0615..d72e1b69 100644 --- a/doc/APIreference/APItypes.rst +++ b/doc/APIreference/APItypes.rst @@ -197,6 +197,16 @@ uses RGB textures. These values are used to store the texture index in the mate .. mujoco-include:: mjtTextureRole +.. _mjtColorSpace: + +mjtColorSpace +~~~~~~~~~~~~~ + +Type of color space encoding for textures. + +.. mujoco-include:: mjtColorSpace + + .. _mjtIntegrator: mjtIntegrator diff --git a/doc/changelog.rst b/doc/changelog.rst index 2fdd87d5..f2eb5768 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -26,6 +26,11 @@ Bug fixes - Inverse dynamics were not being computed correctly when :ref:`tendon armature` was present, now fixed. +Documentation +^^^^^^^^^^^^^ +- Added missing item documentation and clarified the nature of breaking changes in the 3.3.3 changelog. + See items 3 and 4 below. + Version 3.3.3 (June 10, 2025) ----------------------------- @@ -35,19 +40,34 @@ General solver and clears the way for the addition of the Newton and PGS solvers (currently only CG is supported). 2. Removed the :at:`shell` plugin. This is now supported by :ref:`flexcomp` and is active depending on the :ref:`elastic2d` attribute (off by default). -3. Replaced the :ref:`directional` (boolean) field for lights with a - :ref:`type` field (of type :ref:`mjtLightType`) to allow for additional lighting - types. -4. Added new sub-component :ref:`mj_makeM` which combines the :ref:`mj_crb` call with additional logic to support the + +.. admonition:: Breaking API changes + :class: attention + + 3. Replaced the :ref:`directional` (boolean) field for lights with a + :ref:`type` field (of type :ref:`mjtLightType`) to allow for additional lighting + types. + + **Migration:** Replace light/directional="false/true" with light/type="spot/directional", respectively. + + 4. Added :ref:`mjtColorSpace` enum and associated :ref:`colorspace` attribute that allows + to specify the color space of textures (either linear or `sRGB `__). Since + this property is now read correctly from PNG files, textures files which use sRGB will now be rendered + differently. + + **Migration:** Set :ref:`colorspace` to "linear" for all textures that should be + look like they did before this change. + +5. Added new sub-component :ref:`mj_makeM` which combines the :ref:`mj_crb` call with additional logic to support the introduction in 3.3.1 of :ref:`tendon armature`. In addition to the traditional ``mjData.qM``, :ref:`mj_makeM` also computes ``mjData.M``, a CSR representation of the same matrix. -5. Added a new function :ref:`mj_copyBack` to copy real-valued arrays in an mjModel to a compatible mjSpec. -6. Removed the limitation of :ref:`fusestatic` to models which contain no references. The fusestatic - flag will now fuse all bodies which are not referenced and ignore bodies which are referenced. +6. Added a new function :ref:`mj_copyBack` to copy real-valued arrays in an mjModel to a compatible mjSpec. +7. Removed the limitation of :ref:`fusestatic` to models which contain no references. The + fusestatic flag will now fuse all bodies which are not referenced and ignore bodies which are referenced. Simulate ^^^^^^^^ -7. The struct ``mjv_sceneState`` has been removed. This struct was used for partial synchronization of ``mjModel`` and +8. The struct ``mjv_sceneState`` has been removed. This struct was used for partial synchronization of ``mjModel`` and ``mjData`` when the Python viewer is used in passive mode. This functionality is now provided by :ref:`mjv_copyModel` and :ref:`mjv_copyData`, which don't copy arrays which are not required for visualization. @@ -58,11 +78,11 @@ Simulate Python bindings ^^^^^^^^^^^^^^^ -8. Added examples of procedural terrain generation to the Model Editing tutorial: |mjspec_colab| +9. Added examples of procedural terrain generation to the Model Editing tutorial: |mjspec_colab| MJX ^^^ -9. Added tendon armature. +10. Added tendon armature. Version 3.3.2 (April 28, 2025) ------------------------------