[Unity3D]Unity3D游戏开发之鼠标滚轮实现放大缩小

[Unity3D]Unity3D游戏开发之鼠标滚轮实现放大缩小

大家好,又见面了,我是全栈君。

今天为大家分享的是在Rpg游戏中十分常见的鼠标滚轮调整摄像机视野效果。首先我们先创建一个游戏场景:

[Unity3D]Unity3D游戏开发之鼠标滚轮实现放大缩小

        接下来我们编写一段脚本代码:

[csharp] 
view plain
copy
print
在CODE上查看代码片派生到我的代码片

  1. using UnityEngine;  
  2. using System.Collections;  
  3.   
  4. public class CameraZoom : MonoBehaviour {  
  5.   
  6.     void Start () {  
  7.       
  8.     }  
  9.       
  10.   
  11.     void Update ()   
  12.     {  
  13.         //Zoom out  
  14.         if (Input.GetAxis(“Mouse ScrollWheel”) <0)  
  15.         {  
  16.            if(Camera.main.fieldOfView<=100)  
  17.            Camera.main.fieldOfView +=2;  
  18.            if(Camera.main.orthographicSize<=20)  
  19.            Camera.main.orthographicSize +=0.5F;  
  20.         }  
  21.         //Zoom in  
  22.         if (Input.GetAxis(“Mouse ScrollWheel”) > 0)  
  23.         {  
  24.           if(Camera.main.fieldOfView>2)  
  25.             Camera.main.fieldOfView-=2;  
  26.           if(Camera.main.orthographicSize>=1)  
  27.             Camera.main.orthographicSize-=0.5F;  
  28.         }  
  29.     }  
  30. }  

         从上面的代码中,我们能够看出。我们通过改变摄像机的视野就能够实现场景的放大和缩小,而对于鼠标滚轮的监听我们这里用到了GetAxis()方法。以下给出演示动画:

[Unity3D]Unity3D游戏开发之鼠标滚轮实现放大缩小

转载:原文出处:原本出处

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115819.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月30日 上午7:00
下一篇 2022年1月30日 上午8:00


相关推荐

  • 5G NSA 和SA 介绍

    5G NSA 和SA 介绍5G 组网模式 NSA 和 SANSA Non Standalone 非独立组网 SA Standalone 独立组网在 5G 网络架构中 3GPPTSG RAN 第 72 次全体大会上 提出了 8 个选项其中 选项 1 选项 2 选项 5 选项 6 是独立组网选项 3 选项 4 选项 7 和选项 8 是非独立组网 3 4 7 还有不同的子选项 5G 独立组网 选项 1 4G 核心网 4G 基站 UE

    2026年3月26日
    2
  • 小波变换–dwt2 与wavedec2

    小波变换–dwt2 与wavedec2https://www.cnblogs.com/xfzhang/p/7295041.htmlhttps://www.ilovematlab.cn/thread-45020-1-1.htmldwt2是二维单尺度小波变换,其可以通过指定小波或者分解滤波器进行二维单尺度小波分解。而wavedec2是二维多尺度小波分解.尺度可理解为级,即wavedec2可用于多级小波分解dwt2:[cA,cH,cV,cD]=dwt2(X,’wname’);wavedec2:[C,S]=wavede…

    2022年7月23日
    14
  • check the manual that corresponds to your MySQL server version for the right syntax to use near

    check the manual that corresponds to your MySQL server version for the right syntax to use near

    2021年7月15日
    86
  • ExtJs教程 3.0[通俗易懂]

    ExtJs教程 3.0[通俗易懂]ExtJs3.0入门教程教程

    2022年6月18日
    23
  • C#中using语句是什么意思「建议收藏」

    C#中using语句是什么意思「建议收藏」使用using语句最终生成的其实是一个try,finally代码块,在finally代码块里释放资源。要求是:为using语句提供的对象必须实现 IDisposable接口。此接口提

    2022年8月1日
    9
  • Canvas之translate、scale、rotate、skew方法讲解!「建议收藏」

    Canvas之translate、scale、rotate、skew方法讲解!「建议收藏」前面说Canvas大致可以分为三类:1.save、restore等与层的保存和回滚相关的方法;2.scale、rotate、clipXXX等对画布进行操作的方法;3.drawXXX等一系列绘画相关的方法;前面主要讲了drawBitmap方法,并举了一个星球浮动的栗子,在那个例子中,星球有大有小,需要移动,有时候可能需求上还需要旋转或错切,有了这些需求,我们就需要使用到与Canvas相关的translate、scale、rotate、skew这几个方法,平移、缩放、旋转、错切,这四个词听起

    2025年8月6日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号