找回密码
 立即注册
查看: 500|回复: 0

unity小地图制作

[复制链接]
发表于 2021-11-16 20:02 | 显示全部楼层 |阅读模式
unity实现地图小功能,常见的有以下几种方式
1,弄一个RenderTextrue ,把地图摄像机的拍摄到的地形和图片渲染到物体上面
2,坐标映射,计算真实地图和2DUI地图的大小

//  网上的小地图教程就是-----   A部分

1,[图片上传中

1.png

..(1.png-9e9a1b-1636973806892-0)]

2.png

如图所示,一个简单的小地图如上所示

2,设置指定的摄像机渲染层级,只渲染的目标层级![

4.png

2.1设置小地图摄像机的渲染层级

4.png

此时简单的小地图已经完成
3,另一种方案,只显示可以移动区域,不移动区域不渲染,可以减少模型的渲染量,其实和上面是一个道理,如下图所示


5.png

模型渲染指定模型。或者低模,有效减少摄像机的渲染量

//-------------------升级的小地图               B部分
指示目标物体或者敌人坐标,

1,地图的立体效果,看小地图的摄像机旋转一定的角度,让小地图看起来有3D效果

6.png


7.png

效果如下


8.png

2,地图旋转。由于旋转是相对的,旋转摄像机也就旋转了角色2D图标显示


9.png

2DUI和地图摄像机是同步的,除了高度值不同步外,以下代码,target为玩家的数据,model为玩家3D模型,3Dui都行
3,地图的箭头指向。此处需要传递被的目标数据(Transform)


10.png

核心代码如下

11.png

思路如下很
A,传入玩家数据和目标的世界坐标,同事申请临时变量,赋予目标世界坐标,并且把临时变量的y值与玩家的Y值同步,并且得出指向目标的向量
B,根据点乘的结果,得出一个向量来判断Y值的大小,其实点乘的结果,也可以是,x,y,z,取决你点乘的向量
根据点乘的y值来判断左右,然后确定旋转值,
C,确定方向,接下来确定角度,去玩家的前方向,来点乘指向玩家向量确定方向以及角度,
D,更新UI上面的箭头指向问题,代码如下


12.png

PS小技巧,巧妙实现的2DUI偏移,无休控制代码,只需要控制他的父物体,可以随时调整偏移,UI箭头可以岁数调整到中心点距离,然后旋转箭头定位,只需控制父物体的旋转值,即Z轴吗,即可简单实现


13.png

//----2DUI图标定位显示------------------
1,计算两点坐标位置距离,来控制2Dui坐标显示
//-----

-------------------------小地图的第二种做法----------
坐标映射,
1,做法与上面做法一直,只不过是显示一张图片,根据小地图尺寸和真实地图的大小进行换算对比出比例,然后更新换算比例来计算玩家等目标在小地图的位置,然后更新小地图的坐标信息。
2,小地图的放大与缩小,小地图*= 比例(地图的缩放比例);

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-9-23 04:35 , Processed in 0.088541 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表