# MuJoCo Unity插件HField地形高度非0-1归一化时物理碰撞穿透

> 原文链接：https://robotics.hellobike.com/pitfalls/2026-10-23-mujoco-1930
> 频道：pitfalls | 更新日期：2026-10-23 | 标签：auto, github-issue, mujoco
> 核心摘要：MuJoCo Unity插件中HField高度数据未归一化至[0,1]导致物理与渲染不一致，通过应用修复分支或更新PR解决。

# MuJoCo Unity插件HField地形高度非0-1归一化时物理碰撞穿透

::: v-pre
> 本文由 AI 根据公开内容整理，可能有误，请以原文为准：[Wrong HField vertical scaling in unity plugin](https://github.com/google-deepmind/mujoco/issues/1930)（GitHub google-deepmind/mujoco #1930）

**状态**：已解决

## 问题

在Unity中使用MuJoCo插件加载HField地形时，若高度数据范围小于[0,1]（如全平面高度0.7），物理引擎错误地将最高点视为1，导致实际碰撞高度变为0.49，物体穿透地形；仅当存在高度为1的点时碰撞才正常。

## 环境

OS: Windows 10; MuJoCo: 3.2.0 / 3.1.4; Unity Editor: 2022.3.28f1; MuJoCo Unity Plugin

## 解决办法

1. 临时绕过：在地形数据中强制添加一个高度为1的参考点，使高度范围覆盖[0,1]以触发正确缩放逻辑
2. 根本修复：使用包含 `feature/unity-hfield-context` 分支的MuJoCo Unity插件版本进行测试验证
3. 最终方案：升级至合并了 PR #1504 的MuJoCo官方版本，该提交已修正非归一化高度图的垂直缩放计算

讨论原作者：@kezzyhko 等，版权归原作者所有。
:::

## 原始参考来源 (Sources)

- [GitHub google-deepmind/mujoco #1930：Wrong HField vertical scaling in unity plugin](https://github.com/google-deepmind/mujoco/issues/1930)