You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity角色Z轴前后移动边界限制失效问题求助

Unity角色Z轴移动边界限制问题修复

你这段代码的问题很明显——在限制Z轴位置时,错误地修改了X轴分量,而不是Z轴分量。

原代码中,当判断Z轴超出边界时,你在new Vector3()里把第一个参数(X轴)设成了Z轴的边界值,完全搞错了修改的目标轴。正确的做法是保持X轴位置不变,只修改Z轴分量。

修正后的代码如下:

// 左右移动限制(X轴边界)
if(transform.position.x < -xRange)
{
    transform.position = new Vector3(-xRange, transform.position.y, transform.position.z);
}

if (transform.position.x > xRange)
{
    transform.position = new Vector3(xRange, transform.position.y, transform.position.z);
}

// 前后移动限制(Z轴边界)
if (transform.position.z < -zRangeBackwards)
{
    // 修正:保持X轴位置不变,将Z轴重置为下限边界
    transform.position = new Vector3(transform.position.x, transform.position.y, -zRangeBackwards);
}

if (transform.position.z > zRangeBackwards)
{
    // 修正:保持X轴位置不变,将Z轴重置为上限边界
    transform.position = new Vector3(transform.position.x, transform.position.y, zRangeBackwards);
}

修改后,角色的Z轴移动就会像X轴一样被限制在-zRangeBackwards到zRangeBackwards的范围内,同时不会影响当前的X轴和Y轴位置。

内容的提问来源于stack exchange,提问作者Richard Sims

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 14:35:22