技术方案

一:从顶视图获取实时小地图(优点实现快容易对地图进行放大缩小操作而且地图,缺点是不好对地图做出修改,只能在顶部加个另外的相机层来遮盖)

1.创建Redertexture并改名为smallmaptexture;

2.在主角的上方创建一个相机,并将它正对主角,为正交模式,而且targettexture设置为上述的smallmaptexture;注意下列所示的参数,是主要的影响。Cullmask来让其他不需在小地图显示的物体忽略,Size对小地图的可视范围进行调节。并将这个摄像机当做玩家的子物体。

3.使它们显示在屏幕上,这里用的是Ugui,创建两个rawimage组件,一个给之前的smallmaptex,另一个给一个箭头sprite充当小地图的玩家位置,并移到小地图的初始玩家的位置。

到了这步,你已经可以看到一个很丑但是可以用的小地图了,而且可以跟随你的玩家运动了

下面可以考虑优化了,

1.箭头随着主角的视觉而移动,将主角旋转的y值赋给箭头的旋转z值

ArowImg.transform.rotation = Quaternion.Euler(0,0,-eye.rotation.eulerAngles.y);

2.对图片进行圆形遮罩-有两种方案,1.可用mask-shader  2.unity只带的mask组件

3.添加一些额外的如放大缩小,寻路或者更改玩家的颜色的功能或者战争迷雾等。

放大缩小-就是调节camera的size的值,寻路使用A*然后获取点再在图上相应的点画线,战争迷雾可依赖shader进行(类似另一种的mask遮罩)

步骤:

  1. 利用rendertexture和layer来制作小地图的底层
  2. 通过脚本将主角映射到小地图并用其他图标替代。

二.先获取顶视图然后通过美术加工得到绘制小地图,然后通过与原始坐标的差值对地图比例进行小地图渲染。

1.通过顶视图进行截图

2.美术人员进行优化和调整。

3.脚本进行玩家比例匹配

主要的方法,起始点(参考点)与现在的位置的距离,起始地图位置(参考点)和现在的地图位置的比例换算

三.通过unity插件生成小地图,自行百度相关的插件如:KGFMapSystem,NJG MiniMap

最新文章

  1. css3动画之小牛奔跑
  2. 阿里im即时通讯 h5 demo
  3. Android进程管理及静态变量垃圾回收
  4. start.s 解析(一)
  5. Android 2.3 NFC简介
  6. idea开发工具中你可能不知道的却又比较好用的快捷键
  7. 锚点链接和hash属性
  8. jq的遍历节点
  9. [Noi2008]假面舞会
  10. Windows Server 2008 R2 Enterprise x64 部署 nginx、tomcat、mysql
  11. Go语言基础之接口
  12. Lua实现Map
  13. 图解HTTPS协议
  14. robotframework之去除空格、去掉前面的0、增加空格换行符的方法,两个字符之间的拼接
  15. Spring4之AOP
  16. go知识点和注意事项
  17. myeclipse中的classpath .
  18. Eclipse字体最好
  19. Vue 组件化
  20. Centos 7 MariaDB Galera cluster 部署

热门文章

  1. 基于JQuery实现的文本框自动填充功能
  2. javascript 设置input框只读属性 获取disabled后的值并传给后台
  3. 如何写出让java虚拟机发生内存溢出异常OutOfMemoryError的代码
  4. mongodb 3.x 之实用新功能窥看[1] ——使用TTLIndex做Cache处理
  5. Linux下安装 Posgresql 并设置基本参数
  6. 如何在mac上用终端打开XAMPP自带的MySQL
  7. 织梦DedeCMS模板防盗的四种方法
  8. 基于corosync+pacemaker+drbd+LNMP做web服务器的高可用集群
  9. 项目自动化建构工具gradle 入门0——环境 & 废话
  10. 使用Jenkins配置自动化构建