Drake v1.48.0

Back to Release Notes

Announcements

  • Drake now supports macOS 26 Tahoe (#23851).
  • Fix rendering energy loss in RenderEngineVtk (#23811). Change VTK BRDF model from a single-scatter approximation to a multi-scatter approximation. This will have an immediate change on rendered outputs – images will be brighter. Also fix a bug with a prior lighting patch.
    • Current camera configurations will need to be updated, especially with respect to their exposure values and lighting levels. Renderings for which high exposure values seemed necessary will now seem oversaturated. Furthermore, with more energy coming from the environment map, lights may need to be brighter to have a comparable effect as before.
    • The lighting configuration tutorial has been updated accordingly.
  • Add a flag to opt-in to the new AutoDiff implementation (#23870).
    • CMake builds have a new flag that defaults to DRAKE_USE_EIGEN_LEGACY_AUTODIFF=ON.
    • Bazel builds have a new flag that defaults to --@drake//tools/flags:use_eigen_legacy_autodiff=True.
    • When ON / True, Drake uses <unsupported/Eigen/AutoDiff> for its autodiff support.
    • When OFF / False, Drake uses a custom re-implementation at drake/common/ad/....
    • On 2026-04-01, both defaults will flip to OFF / False.
    • On 2026-07-01, support for ON / True will be removed.
    • Users should experiment with flipping the flag to OFF / False as soon as practical, to discover any problems early and file Drake issues when relevant.

Breaking changes since v1.47.0

  • None

Refer to our Drake Stability Guidelines for our policy on API changes.

Changes since v1.47.0

Dynamical Systems

New features

  • Overload Simulator::reset_integrator to take an integrator (#23896)

Mathematical Program

  • None

Multibody Dynamics and Geometry

Fixes

  • Fix rendering energy loss in RenderEngineVtk (#23811)
  • Add fmt formatters and to_string functions for geometry types (#23800)
  • Extend removal date on deprecated floating base API (#23901)

Planning

New features

  • IrisNp2 allows the user to set solver options for the counterexample search program (#23735)

pydrake bindings

New features

  • pydrake.visualization.model_visualizer environment map gets forwarded to render engine (#23771)

Fixes

  • Fix pydrake.common.CalcProbabililtyDensity type annotation (#23869)
  • Fix pydrake.geometry.QueryObject.FindCollisionCandidates return type (#23852)

Build system

  • Add support for macOS 26 Tahoe (#23851)
  • Add a flag to opt-in to the new AutoDiff implementation (#23870)
  • Remove Deepnote support from built packages (#23807)

Build dependencies

  • Update macOS supported CMake to 4.2 (#23816)
  • Update macOS supported Xcode to 26.1 (#23816)
  • Update dependency apple_support to 1.24.5 (#23840)
  • Update dependency curl_internal to 8.17.0 (#23883)
  • Update dependency drake_models to latest commit (#23845)
  • Update dependency gymnasium_py_internal to 1.2.2 (#23845)
  • Update dependency libpng_internal to 1.6.51 (#23845)
  • Update dependency mujoco_menagerie_internal to latest commit (#23845)
  • Update dependency nanoflann_internal to 1.8.0 (#23845)
  • Update dependency ruff_prebuilt to 0.14.4.2 (#23836)
  • Update dependency rules_java to 9.3.0 (#23841, #23889)
  • Update dependency rules_python to 1.7.0 (#23798)
  • Update dependency spdlog to 1.16.0.bcr.2 (#23837)
  • Update dependency suitesparse_internal to 7.12.1 (#23845)
  • Update dependency tinygltf_internal to 2.9.7 (#23845)
  • Update dependency usockets_internal to 20.74.0 (#23809)
  • Update dependency uwebsockets_internal to 0.8.8 (#23809)

Newly-deprecated APIs

  • drake::geometry::GeometryProperties::operator<< (#23800)
  • drake::geometry::Rgba::operator<< (#23800)
  • drake::geometry::Role::operator<< (#23800)
  • drake::geometry::render::LightFrame::operator<< (#23800)
  • drake::geometry::render::LightType::operator<< (#23800)
  • drake::geometry::render::RenderLabel::operator<< (#23800)
  • drake::geometry::render::to_string(RenderLabel) (#23800)
  • drake::math::hessian (#23823)
  • drake::math::jacobian (#23823)
  • drake::logging::get_disk_sink but only when included via drake/common/text_logging.h or if spdlog is disabled (#23815)

Removal of deprecated items

  • drake::geometry::optimization::IrisInConfigurationSpace (#23835, #23282)

Notes

This release provides pre-compiled binaries named drake-1.48.0-{jammy|noble|mac-arm64}.tar.gz. See Stable Releases for instructions on how to use them.

Drake binary releases incorporate a pre-compiled version of SNOPT as part of the Mathematical Program toolbox. Thanks to Philip E. Gill and Elizabeth Wong for their kind support.