Unity实现简单小地图功能

前言

在很多的游戏中都有小地图的功能,例如现在大火的吃鸡类游戏、MOBA类游戏、FPS射击类游戏等等,而且我在开发的很多项目中也碰到过很多类似的需求,在这篇博客中简单介绍下使用Unity实现简单小地图的功能。

步骤

1.在主角身上新建一个子物体,在这里用一个sphere替代,起名为dummy,如下图所示:

2.新建一个Material,将其Shandr设置为Legacy Shader/Self-Illimin/Diffuse,随便选择一种颜色,如下图所示:

3.将此Material挂载到dummy上,并新建一个Layer层,取名为dummy,将dummy物体的Layer层选择为dummy,如下图所示:

4.继续新建一个Layer层,起名为diXing,将Terrain的Layer层选择为diXIng,如下图所示:

5.新建一个Camera,将此Camera拉至主角上方,并且调整角度,使其能够俯视主角,具体参数根据实际情况调整,如下图所示:

6.为Camera添加跟随功能,使其能够跟着主角移动但不会跟着主机旋转,脚本代码如下所示:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class MapCameraControl : MonoBehaviour
{#region 参数//跟随的物体public Transform followObject;//跟随的三位数Vector3 vector;#endregion#region 常规方法// Use this for initializationvoid Start (){vector = this.transform.position - followObject.position;}private void LateUpdate(){ToFollow();}#endregion#region 私有方法void ToFollow(){this.transform.position = followObject.position + vector;}#endregion
}

7.新建一个RenderTexture,它的作用是将小地图Camera显示在UI上,具体参数调整如下图所示:


8.将RenderTexture,Camera跟随脚本挂载到小地图Camera上,将小地图Camera的Culling Mask只选择dummy,diXing层,使它只能看到dummy物体和地形,设置如下图所示:

9.在场景中新建一个RawImage,将RenderTexture挂载到它的Texture上,如下图所示:

10.至此,一个简单的小地图搭建基本完成,里面主角移动以及其他设置不在这里赘述了,运行工程,效果如下图所示:

后记

知识和技能是一点一滴积累起来的,加油!

Unity实现简单小地图功能相关推荐

  1. Unity实现简单AR功能

    一.首先进入Vuforia官网:Home | Vuforia EDP,也可以直接百度,第一条就是,点击进入,注册登录. 二.点击develop进行许可管理注册,依次点击两个蓝色框框中的按钮,获取一个K ...

  2. unity实现简单fps游戏功能

    unity实现简单fps游戏鼠标功能 1.unity实现瞄准镜功能 实现原理 按下鼠标右键镜头拉近,再次按下镜头拉远(设置Camrea的FOV属性) 逐渐拉近(例如:60->20逐渐拉近) 设置 ...

  3. Unity_实现小地图功能

    在Unity中,模拟类似英雄联盟和csgo中 左上角小地图的功能 思路:在游戏中,玩家有两个视角,一个是玩家的游戏主视角,一个是小地图的视角,每个视角所看到的画面是不一样的,我们只需要创建两个摄像机, ...

  4. Unity webgl 弹窗直播功能

    unity弹窗播放直播功能,Button事件打开弹窗播放实时视频,动态关闭. 实现思路是unity发送消息给打包出来的Html,在网页代码里面弹窗和关闭视频.网页弹出一个layer层, 层里面内嵌一个 ...

  5. unity ui框架_用unity制作简单的太空游戏(2)-简单炮台

    多铆蒸刚,炮塔至大! 亿万星辰,亿万炮塔! 多铆蒸刚,炮塔至上! 亿万炮塔,亿万荣光! (PS:我没有咕咕咕,就是比较惨,一口气出了半个月的差,人瘦了,也黑了,心塞塞--赶紧写个文章压压惊--) 这一 ...

  6. 【转】在OpenGL场景中实现小地图功能

    http://www.c3dn.net/archiver/?tid-48.html 想象一下,我们在原始森林里寻找宝藏,没有地图,没有GPS,那结果应该只有一种:不但找不到目标地点,而且很容易迷失方向 ...

  7. 10年磨一剑,软件编程走火入魔之:把简单的功能做个彻彻底底、把劳动成果重复利用...

    让管理软件开发人员早点儿回家休息,做个跟老外有的一PK的软件组件,铜墙铁壁的权限组件. 年轻时.精力旺盛,有用不完的劲儿,但是工作经验不多,对各种行业实际应用没有深入的了解,大多停留在表面问题上,做不 ...

  8. python怎么建立画板_Python基于opencv实现的简单画板功能示例

    本文实例讲述了Python基于opencv实现的简单画板功能.分享给大家供大家参考,具体如下: import cv2 import numpy as np drawing = False # true ...

  9. Unity网络多玩家游戏开发教程第1章Unity自带网络功能

    Unity网络多玩家游戏开发教程第1章Unity自带网络功能 Unity拥有大量的第三方插件,专门提供了对网络功能的支持.但是,大部分开发者第一次接触到的还是Unity自带的网络功能,也就是大家经常说 ...

  10. python实现简单计算器功能键介绍_Python实现的简单计算器功能详解

    本文实例讲述了Python实现的简单计算器功能.分享给大家供大家参考,具体如下: 使用python编写一款简易的计算器 计算器效果图 首先搭建计算器的面板: 计算器面板结构 建造一个继承于wx.Fra ...

最新文章

  1. 输入vue ui没反应
  2. java ssh工具类_JAVA SSH2工具类
  3. php依次替换文本字符串中的图片src地址
  4. 散记 ~ 2016-09-23
  5. android 官方DrawerLayout的介绍和使用
  6. IIS8 使用FastCGI配置PHP环境支持 过程详解
  7. cisco 《连接网络》实验wan综合实验_GNS3实验环境优化与安装
  8. CSS Framework 960 Grid System (收)
  9. “C语言” 读书札记(五)之[让我们一起学习汇编吧!(段)]
  10. Java程序优化的一些最佳实践
  11. seo模拟点击软件_网站外链在SEO优化过程中不可或缺 - 360排名点击软件
  12. seaborn—seaborn.regplot绘制线性回归拟合图
  13. 如何在solarwinds中自定义 OID
  14. python传递参数*与**
  15. Python内置函数(55)——globals
  16. 3项目里面全局用less变量 cli vue_如何把 CSS 变量全局化
  17. 入门SVN基础使用教程
  18. 要写好综述类论文?这几个点你需要注意
  19. 全球名校课程作业分享系列(6)--斯坦福计算机视觉与深度学习CS231n之神经网络细解与优化尝试
  20. Serein 【懒人神器】一款图形化、批量采集url、批量对采集的url进行各种nday检测的工具 摸鱼项目问题解决

热门文章

  1. php unshift,PHP Ds\Vector unshift()用法及代码示例
  2. 云加数支撑商业地产转型——无止境的商业想象力测试
  3. android方向传感器 指南针,Android如何实现电子罗盘(指南针)方向传感器的应用
  4. Greenplum小把戏 - 仿造Oracle rownum
  5. 插件化框架集成-360插件框架DroidPlug
  6. 信息系统项目管理师---第十五、十六章 知识管理及项目变更管理历年考题
  7. C#学习之Spilt用法
  8. 点点动画~画出懂你的3D魔方
  9. OpenCV情绪识别(Python实现,超简单)
  10. Python书法碑帖分割(分别以对于汉字命名)