栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > 其他

unity实现简单fps游戏功能

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

unity实现简单fps游戏功能

unity实现简单fps游戏鼠标功能 1.unity实现瞄准镜功能 实现原理
  • 按下鼠标右键镜头拉近,再次按下镜头拉远(设置Camrea的FOV属性)
  • 逐渐拉近(例如:60->20逐渐拉近)
  • 设置缩放等级使每次点击的缩放效果不同
public class ScaleCamera : MonoBehaviour
{
    private bool isFar=true;
    private Camera cam;
    private int[] zoomLength = { 60,40,20 };//设置缩放等级
    private int length = 0;
    // Start is called before the first frame update
    void Start()
    {
        cam = GetComponent();//获取Camera组件
    }

    // Update is called once per frame
    void Update()
    {
        ScaleCameraf();   
    }
    public void ScaleCameraf(){
    	//获取鼠标右键
        if (Input.GetMouseButtonDown(1))
        {
            length = (length + 1) % zoomLength.Length;//利用取余计算使缩放等级一直在zoomLength这个数组中循环
        }
        cam.fieldOfView = Mathf.Lerp(cam.fieldOfView, zoomLength[length], 0.1f);//缩放功能实现代码,利用Mathf.Lerp()函数实现平滑缩放效果
        if (Mathf.Abs(cam.fieldOfView - zoomLength[length]) < 0.1f)
        {
            cam.fieldOfView = zoomLength[length];//使cam.fieldOfView的数值为缩放等级中的精确数值
        }
    }
}
2.通过鼠标滚轮调节摄像机视野(FOV) 实现原理

通过获取虚拟轴"Mouse ScrollWheel"鼠标滑轮来调节FOV的数值,代码如下:

public class MouseScrollWheelDemo : MonoBehaviour
{
    private Camera m_Camera;
    public float speed = 5;
    void Start()
    {
        m_Camera = GetComponent();
    }

    void Update()
    {
        MouseScrollWheelRun();
    }
    public void MouseScrollWheelRun()
    {
        m_Camera.fieldOfView -= Input.GetAxis("Mouse ScrollWheel")*speed;
    }
}
3.菜单确认后进行场景转换
  • 首先先利用UI系统绘制游戏开始菜单,给Button加上加载游戏事件,事件代码如下:
using UnityEngine;
using UnityEngine.SceneManagement;

public class LevelManager : MonoBehaviour
{
	public string sceneToLoad = "Game";


	public void LoadGame ()
	{
		SceneManager.LoadScene(sceneToLoad);//可以写Build-setting中的索引号,也可以写场景的名字
	}
}
  • 制作游戏界面Game(与Button加载事件的方法LoadScene()中的名字一样)
  • 在Build-setting中加入这两个场景,菜单栏因放在上层
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/901324.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号