团结如何实现瞄准镜效果

  介绍

这篇文章将为大家详细讲解有关团结如何实现瞄准镜效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

团结实现瞄准镜效果的具体代码,具体内容如下

using  UnityEngine;   using  System.Collections;   ,   public  class  TelesopicView : MonoBehaviour   {   ,   ,,,public  float  zoomLevel =, 2.0 f;   ,,,public  float  zoomInSpeed =, 100.0 f;   ,,,public  float  zoomOutSpeed =, 100.0 f;   ,   ,,,private  float  initFOV;   ,,,public  GameObject  obj;   ,,,void 开始()   ,,,{   ,,,,,,,//获取当前摄像机的视野范围,统一默认值60   ,,,,,,,initFOV =, Camera.main.fieldOfView;   ,,,}   ,   ,,,void 更新()   ,,,{   ,,,,,,,if  (Input.GetMouseButton (0))   ,,,,,,,{   ,,,,,,,,,,,ZoomInView ();   ,,,,,,,,,,,//激活ui窗口   ,,,,,,,,,,,obj.SetActive(真正的);   ,,,,,,,}   ,,,,,,,   ,,,,,,,{   ,,,,,,,,,,,ZoomOutView ();   ,,,,,,,,,,,//失活ui窗口   ,,,,,,,,,,,obj.SetActive(假);   ,,,,,,,}   ,,,}   ,   ,,,//放大摄像机的视野区域   ,,,void  ZoomInView ()   ,,,{   ,,,,,,,if  (Mathf.Abs (Camera.main.fieldOfView 安康;(initFOV /, zoomLevel)), & lt;, 0 f)   ,,,,,,,{   ,,,,,,,,,,,Camera.main.fieldOfView =, initFOV /, zoomLevel;   ,,,,,,,}   ,,,,,,,else  if  (Camera.main.fieldOfView 安康;(Time.deltaTime  *, zoomInSpeed),祝辞=,(时间/initFOV  zoomLevel))   ,,,,,,,{   ,,,,,,,,,,,Camera.main.fieldOfView  -=, (Time.deltaTime  *, zoomInSpeed);   ,,,,,,,}   ,,,}   ,   ,,,//缩小摄像机的视野区域   ,,,void  ZoomOutView ()   ,,,{   ,,,,,,,if  (Mathf.Abs (Camera.main.fieldOfView 作用;initFOV), & lt;, 0 f)   ,,,,,,,{   ,,,,,,,,,,,Camera.main.fieldOfView =, initFOV;   ,,,,,,,}   ,,,,,,,else  if (时间+ Camera.main.fieldOfView  (Time.deltaTime  *, zoomOutSpeed), & lt;=, initFOV)   ,,,,,,,{   ,,,,,,,,,,,Camera.main.fieldOfView  +=, (Time.deltaTime  *, zoomOutSpeed);   ,,,,,,,}   ,,,}   }

此脚本挂到统一主相机即可,可通过更改zoomLevel更改倍镜倍数

团结如何实现瞄准镜效果

关于“团结如何实现瞄准镜效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看的到。

团结如何实现瞄准镜效果