Unity SKFramework框架(二十三)、MiniMap 小地图工具

举报
CoderZ1010 发表于 2022/09/25 04:16:39 2022/09/25
【摘要】 目录 简介 实现原理 使用说明 简介 MiniMap可以帮助我们快速实现小地图功能,该工具已经上传至我的开发框架SKFramework中的Package Manager开发工具包管理器中,如图所示,点击右下角Install按钮即可下载安装。 SKFramework框架开源地址: https://githu...

目录

简介

实现原理

使用说明


简介

MiniMap可以帮助我们快速实现小地图功能,该工具已经上传至我的开发框架SKFramework中的Package Manager开发工具包管理器中,如图所示,点击右下角Install按钮即可下载安装。

SKFramework框架开源地址:

https://github.com/136512892/SKFramework

实现原理

1.以场景中的z轴正方向为上、以x轴正方向为右;

2.以场景中的左下角和右上角为两个基准点,分别记录为leftBottom、rightTop;

3.将场景中目标物体的Transform记录为target3d;

4.将界面中代表目标物体的Icon图标的RectTransform记录为target2d;

5.将小地图的RectTransform组件记录为mapRt;

6.用小地图的长度除以场景的长度得到水平方向上的比例;

(mapRt.rect.width / (rightTop.position.x - leftBottom.position.x))

7.用小地图的宽度除以场景的宽度得到垂直方向上的比例;

(mapRt.rect.height / (rightTop.position.z - leftBottom.position.z))

8.计算三维目标物体距左下角基点的长度和宽度,记录为horizontal、vertical;

(horizontal = target3d.position.x - leftBottom.position.x)

(vertical = target3d.position.z - leftBottom.position.z)

9.计算小地图中Icon图标距离左下角的长度和宽度,记录为x、y;

(x = horizontal * 水平方向上的比例)

(y = vertical * 垂直方向上的比例)

10.Icon图标将锚点设置为左下角,设置其位置。

(target2d.anchoredPosition = new Vector(x, y))

使用说明

isEnableRot:Icon图标是否随三维目标的旋转而旋转

isEnableRotLerp:计算旋转值时是否使用插值运算

rotationLerpTime:插值到目标角度所需的时间

文章来源: coderz.blog.csdn.net,作者:CoderZ1010,版权归原作者所有,如需转载,请联系作者。

原文链接:coderz.blog.csdn.net/article/details/125577392

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。