我正在使用Unity 2d,并且做到了这一点,因此用鼠标在x轴上转动相机就没有问题。但是我只想让相机转动一点。鼠标需要完全自由地移动,但摄像头需要在特定点停止。
我尝试制作一个空的游戏对象并将其设置为如果相机位置等于该游戏对象位置,则相机会稍微向后移动,但是如果相机剪切,则会导致很多情况。也尝试过改变速度,但是当然不起作用。有谁知道没有相机剪辑怎么办? 抱歉,由于我的计算机没有兴趣访问权限,因此缺少代码。目前,我的代码基本上是:
transform.position = newvector3.Movetowards(
Input.GetAxisRaw("mouse X") * speed * Time.DeltaTime,
0f,
Input.GetAxisRaw("mouse Y") * 0 * Time.DeltaTime
);
这可能有点不准确,但这是它的基础
答案 0 :(得分:0)
为防止在有限的相机移动时出现削波,请尝试以下操作
transform.position =新向量3(Mathf.Clamp(transform.position.x,MIN_X,MAX_X),0,0);
当然,请将MIN_X和MAX_X替换为您希望相机能够旋转到的最小和最大位置的数字。这太麻烦了,因此代码可能不是100%准确的。如果遇到问题,可以在Unity文档中找到Mathf.Clamp。