相机跟随角色移动镜头缩放方法

admin3年前unity基础API607

这种方法最简单可以实现相机跟随角色平移


1:计算相机和目标物体的距离 

 offset = this.transform.position - target.transform.position;


2:Update方法中实时变化相机位置


 this.transform.position = target.transform.position + offset;



3:镜头缩放

  //镜头缩放

    public void CamRotation() {


        if (Input.GetAxis("Mouse ScrollWheel") != 0)
        {
            //鼠标滚动滑轮 值就会变化
            if (Input.GetAxis("Mouse ScrollWheel") < 0)
            {
                //范围值限定
                if (Camera.main.fieldOfView <= 100)//摄像机采用Perspective透视
                    Camera.main.fieldOfView += 2;
                if (Camera.main.orthographicSize <= 20)//摄像机采用Orthograpic正交
                    Camera.main.orthographicSize += 0.5F;
            }
            //Zoom in  
            if (Input.GetAxis("Mouse ScrollWheel") > 0)
            {
                //范围值限定
                if (Camera.main.fieldOfView > 2)//摄像机采用Perspective透视
                    Camera.main.fieldOfView -= 2;
                if (Camera.main.orthographicSize >= 1)//摄像机采用Orthograpic正交
                    Camera.main.orthographicSize -= 0.5F;
            }
        }

    }


相关文章

Unity 插值运算

在unity3d中经常用线性插值函数Lerp()来在两者之间插值,两者之间可以是两个材质之间、两个向量之间、两个浮点数之间、两个颜色之间,其函数原型如下: 1.Material.Lerp&nbs...

Unity给UI元素物体添加操作响应事件

可以给自定义物体如图片等添加响应事件引入命名空间using UnityEngine.EventSystems;类中继承接口IPointerDownHandler实现接口  ...

blender导出模型和动画到Unity

blender导出模型和动画到Unity

1:首先我们确保导出的模型是FBX2:模型的Rig设置为泛型 avatar根据实际情况可以选择无或则从此模型创建3:设置动画控制器,把模型中的动画拖入就可以了...

Unity 读取Asset目录下物体

读取方法:AssetDatabase.LoadAssetAtPath使用方法path = "Assets/CustomizableAnimeGirl/Models/Mat...

Unity 手机触摸Touch事件

1:判断是否触摸如果大于0那就是最少一个手指触摸了屏幕 以此类推 如果=2就是2个手指 最多10个if(Input.touchCount >0)2:判断单...

通过刚体移动的方法

1:MovePosion移动的新的位置,传入的参数是最新的位置 一般是旧的位置加上变化的参数2:velocity这个方法是瞬间给物体一个恒定的速度,将物体提升至该速度 3:addF...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。