unity2d 游戏,怎么像unity 编辑器里那样,平滑地放大视角,保持鼠标一直在目标点。
请用鼠标中间的滚轮。
如过你是用的透视摄像机的话;
调整你Camera的Filed of View 属性,那个Slider你左右拖一下就知道效果了~~
如果你是用的正交摄像机的话;
就调整Size的值,也是一样的~
放大视角自古两个办法:正交:物体scale放大;非正交:增加Camera距离
void Update()
{
float delX = Input.mousePosition.x - transform.position.x;
float delY = Input.mousePosition.y - transform.position.y;
float scaleX = delX / GetComponent<RectTransform>().rect.width / transform.localScale.x;
float scaleY = delY / GetComponent<RectTransform>().rect.height / transform.localScale.y;
if (Input.GetAxis("Mouse ScrollWheel") > 0)
{
transform.localScale += Vector3.one * 0.1f;
}
else if (Input.GetAxis("Mouse ScrollWheel") < 0)
{
transform.localScale += Vector3.one * -0.1f;
}
GetComponent<RectTransform>().pivot += new Vector2(scaleX, scaleY);
transform.position += new Vector3(delX, delY, 0);
}