Unity实战篇:MOBA游戏小地图制作(一:小地图的创建以及人物同步)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_15020543/article/details/83653097

在许多游戏里,我看到都有小地图这个模块,对于玩家而言很友好,所以今天研究一下。

本人能力有限,利用CustomRenderTexture实现。

环境:Unity2018.2.13f1

Demo下载:https://download.csdn.net/download/qq_15020543/10765062

(如果没有积分就加我好友,我用QQ发你)

先简单的说一下基本流程。

  1. 创建一个相机,用来监视主角(或者地图全局)的移动。
  2. 创建CustomRenderTexture,用来接收相机传来的图像。
  3. 创建小地图UI(RawImage),将CustomRenderTexture设为材质。

接下来我们来实现。

1.在Hierarchy新建一个Camera,命名为MapCamera

2.在Project新建CustomRenderTexture,命名为MapMirror

3.新建一个MiniMap层,用来限制相机渲染的范围,否则会造成大量不必要的Batches

随便找一个游戏物体

4.找到第一步创建的MapCamera,将ClearFlag设置为Solid Color,将相机渲染模式设置为正交(避免因为距离原因显示出现误差),把Culling Mask设为MiniMap层,把Target Texture设为刚刚创建的MapMirror

5.在需要在地图上投影的游戏物体下面加上Quad命名为HeroIcon,作为他在地图上的图标

将HeroIcon绕X轴旋转90度,Y设为10(保证在人物头顶)

新建一个材质球命名为HeroIconMaterial,移动到HeroIcon下的Materials里

把准备好的图片拖到空白处

6.创建小地图

创建Image命名为MapMask并增加Mask组件,作为遮罩(一旦元素出了遮罩,就不显示)

创建RawImage命名为Map并作为MapMask子物体,将Texture设为MapMirror,作为地图。

将MapMask锚点设为左上角。

7.设置层级

8.运行效果

基本的操作就是这样,下一篇我们进行精细化操作,如果大家看到这里感觉比较晕,不要慌,接着往下看,最后我也会把工程源码上传,不要慌啦~

猜你喜欢

转载自blog.csdn.net/qq_15020543/article/details/83653097
今日推荐