在Unity 2d中使用鼠标进行有限的头部转动

问题描述 投票:0回答:1

我正在使用Unity 2d,我做了它,以便相机在x轴上用鼠标转动没问题。但我希望相机只能少量转动。鼠标需要完全自由移动,但相机需要在某一点停止。

我尝试制作一个空的游戏对象并设置它,如果相机位置等于游戏对象的位置,相机会稍微向后移动,但如果相机剪裁会导致很多。也尝试改变速度,但当然不起作用。没有相机剪辑,有谁知道我怎么做?很抱歉因为我的电脑无权访问而导致代码不足。目前我的代码基本上是:

transform.position = newvector3.Movetowards(
        Input.GetAxisRaw("mouse X") * speed * Time.DeltaTime, 
        0f,  
        Input.GetAxisRaw("mouse Y")  * 0 * Time.DeltaTime
);

这可能有点不准确,但这是它的基础

c# camera
1个回答
0
投票

在使用有限的相机移动时防止剪裁尝试这样的事情

transform.position = new vector 3(Mathf.Clamp(transform.position.x,MIN_X,MAX_X),0,0);

当然,将MIN_X和MAX_X替换为您希望相机能够旋转到的最小和最大位置的数量。这是我的头脑,所以代码可能不是100%准确。如果遇到问题,可以在Unity文档中找到Mathf.Clamp。

© www.soinside.com 2019 - 2024. All rights reserved.