Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Unity:如何缩小摄影机并在两个对象之间放置cam_C#_Unity3d - Fatal编程技术网

C# Unity:如何缩小摄影机并在两个对象之间放置cam

C# Unity:如何缩小摄影机并在两个对象之间放置cam,c#,unity3d,C#,Unity3d,使用Unity 2018.3 2D 我有一个使用正投影的相机,默认尺寸为6-8,但我想在按钮点击时缩小相机的尺寸,使其在2个对象内,第一个对象位于屏幕左侧,第二个对象位于屏幕右侧。现在相机的尺寸大约是20-30 我知道如何移动摄影机变换,但如何计算两个对象之间的距离,然后缩小大小,使这两个对象位于屏幕的角落 怎么做?我会先得到左右两个物体,然后计算矢量2的距离,然后得到一个相机大小的数字,这样两个物体都在??这是一种方法吗 谢谢你的帮助 我假设您在2D中工作。在我看来,使用ortographic

使用Unity 2018.3 2D

我有一个使用正投影的相机,默认尺寸为6-8,但我想在按钮点击时缩小相机的尺寸,使其在2个对象内,第一个对象位于屏幕左侧,第二个对象位于屏幕右侧。现在相机的尺寸大约是20-30

我知道如何移动摄影机变换,但如何计算两个对象之间的距离,然后缩小大小,使这两个对象位于屏幕的角落

怎么做?我会先得到左右两个物体,然后计算矢量2的距离,然后得到一个相机大小的数字,这样两个物体都在??这是一种方法吗


谢谢你的帮助

我假设您在2D中工作。在我看来,使用ortographic map进行缩放时,您只需将相机重新定位到对象的中心,并调整
正交尺寸
,例如:

    centerPoint = (objectRight.transform.position - objectLeft.transform.position)/2;
    centerPoint.z  = -10;

    CameraSize = (objectRight.transform.position - objectLeft.transform.position).magnitude 
               -objectLeft.transform.localScale.x;

    Camera.main.transform.position = centerPoint;
    Camera.main.orthographicSize = CameraSize / 2;
您还可以使用
Lerp
使其平滑