在Unity中实现小地图:完整指南

📂 Unity 开发资源汇总 | 插件 | 模型 | 源码

💓 欢迎访问 Unity 打怪升级大本营

💯 如何在Unity中创建一个小地图?

你可能会感到惊讶,创建一个小地图比你想象的要简单,甚至不需要任何编程技能!在这里,我将尝试一步步解释如何制作一个。

在这里插入图片描述

华丽的分割线


标题1

💯 基本小地图概念

小地图(或雷达)以显示我们周围环境的信息而闻名。首先,小地图应该以主角为中心。其次,它应该使用可读的符号而不是真实的模型,因为小地图通常相当小,玩家无法识别小地图试图呈现的信息。

大多数小地图是圆形的,所以我们也将尝试创建一个。你经常会发现附加了额外的按钮和标签。这也是我们将要重现的。
在这里插入图片描述


标题2

💯 准备场景

让我们从向场景中添加一些东西开始。我创建了一个新场景,里面有 Unity Chan(她将是玩家)和两个机器人(作为敌人)。
在这里插入图片描述

现在让我们添加第二个摄像机。只需点击 GameObject -> Camera,然后将其重命名为 Minimap Camera。然后使这个摄像机成为 Unity Chan 模型的子对象(这样它就会跟随她),并将其移动到她头顶上方10个单位的位置向下看。
在这里插入图片描述

为了获得良好的效果,将Transform位置设置为0, 10, 0,旋转设置为90, 0, 0。摄像机应该看起来像这样:
在这里插入图片描述

好的,但那还不是一个小地图。当你现在启动你的场景时,上面的摄像机的图片将是屏幕上唯一渲染的图片。我们必须告诉游戏我们想要小地图成为Unity UI元素。


标题3

💯 渲染到Unity UI

为此我们需要一个 Render Texture。你可以通过选择 Assets -> Create -> Render Texture 从主菜单中轻松创建一个。创建并重命名为 Minimap Render Texture
在这里插入图片描述

现在选择 Minimap Camera,在 Inspector 中将 Minimap Render Texture 分配到Target Texture字段。
在这里插入图片描述

如果你尝试启动场景,你会注意到 Minimap Camera 的图片无处可寻。结果图像现在隐藏在我们新创建的渲染纹理中。

现在让我们创建一个 Canvas 来添加UI元素。选择 GameObject -> UI -> Canvas,你将能够在你的场景中找到一个。
在这里插入图片描述

Canvas 需要一个 Raw Image 来使用 Render Texture。选择 GameObject -> UI -> Raw Image,重命名为 Minimap Image,并在其检查器中将Minimap Render Texture分配到Texture字段。
在这里插入图片描述

这将得到一个Unity UI元素,现在在其中渲染Minimap Camera的图像!
在这里插入图片描述

现在让我们使它变圆。为此我制作了一个简单的遮罩纹理:
在这里插入图片描述

创建一个新的Unity UI图像,添加Mask组件到它,将我们的新遮罩纹理设置到Source Image检查器字段,并使Minimap Image成为我们的Mask的子对象。(提示:为了获得更好的视觉效果,可以为遮罩纹理禁用Mipmaps。)
在这里插入图片描述

这个设置将使我们的小地图看起来像这样:
在这里插入图片描述

白色小地图在白色背景上看起来不会那么好。让我们在其上添加一个边框图像:
在这里插入图片描述
在这里插入图片描述

为了使移动它更简单,我将所有内容分组在一个名为Minimap的空游戏对象下。
在这里插入图片描述

最后让我们将我们的新小地图移动到屏幕的右上角。
在这里插入图片描述

看起来不错,不是吗?但它仍然不是一个有效的小地图,它只是一个从顶部渲染游戏的摄像机。如果你熟悉层,你很可能知道我接下来要做什么!


标题4

💯 层次的乐趣

我们将需要至少一个额外的层。转到 Edit -> Project Settings -> Tags and Layers 并添加一个名为Minimap的新层。
在这里插入图片描述

现在让我们创建三个球体。一个应该是蓝色的,应该位于Unity Chan站立的地方。最好是使这个对象成为Unity Chan的子对象。最后确保将其Layer设置为Minimap。
在这里插入图片描述

对于两个机器人做类似的操作,但不要使用蓝色球体,而是使它们变成红色!
在这里插入图片描述

现在是最好的部分!选择Main Camera并确保其Culling Mask没有设置Minimap层。
在这里插入图片描述

然后选择Minimap Camera并做相反的操作。只留下Minimap设置并禁用所有其他。
在这里插入图片描述

现在你可以看到一个看起来相当像有效小地图的东西!
在这里插入图片描述


标题5

💯 最后的润色

你可能想要做一些调整。首先,让我们将Minimap Camera的清除颜色改为浅灰色,并将Clear Flags设置为Solid Color,这样小地图背景将与红色和蓝色球体形成更好的对比。
在这里插入图片描述

然后你可以添加任何其他Unity UI元素与你的迷你地图一起。我将添加一个示例标签。这是我们的最终结果!
在这里插入图片描述

小地图配置的方式是,移动角色会更新其位置。如果任何其他机器人也移动,它将立即可见。
在这里插入图片描述

这就结束了Unity小地图教程!如果你有任何问题,请在评论中随意提问。不要忘记关注我们以获取最新的Unity技巧和窍门。


TheEnd


跳跃

📂 Unity 开发资源汇总 | 插件 | 模型 | 源码

💓 欢迎访问 Unity 打怪升级大本营

🍉🍉🍉 如果觉得这篇文对你有帮助的话,请点个赞👍、收藏⭐️下吧,非常感谢! 💕💕💕
关注我

博主头像
【博主简介】:10年以上软件开发经验,精通 C语言C++C#Java 等开发语言,开发过大型 Android 项目,现主要自主开发经营 休闲益智类小游戏

【粉丝福利】:博主收藏了大量游戏开发资源和素材。这些资源经过博主多年整理沉淀,现筛选一批精品资源,分享给大家学习研究。

Unity打怪军团 广招天下勇士加入 Unity学习互助小组 有意进群的同学联系我,互3互推也请联系我…
联系我

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Unity打怪升级

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值