所以我正在学习Unity教程,现在我的角色可以左右移动。但是现在我试着让它前后移动,我做到了,但是我有麻烦,所以它只能在一定的范围内。比较一下我的左右代码,我不知道我做错了什么,但我相信这对更了解的人来说很简单。
感谢帮助的家伙。zRangeBackwards设置为10。(浮点,10f)左和右工作完美,向前和向后工作,但不在我试图在这里设置的边界内。
感谢你的帮助。
`
// Move left to right within the XRange boundary
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);
}
//Move forwards and backwards within zRangeBackwards boundary
if (transform.position.z < -zRangeBackwards)
{
transform.position = new Vector3(-zRangeBackwards, transform.position.y, transform.position.z);
}
if (transform.position.z > zRangeBackwards)
{
transform.position = new Vector3(zRangeBackwards, transform.position.y, transform.position.z);
}
`
我试着将它与我的从左到右的代码进行比较,但不确定我做错了什么。
1条答案
按热度按时间nkoocmlb1#
我认为代码的问题在于,您尝试再次限制X轴的向前/向后方向,但您应该限制Z轴,如下所示: