实现的功能是在3D场景中嵌套2DUI,Unity可窗口化,按比例缩放。

(本文不牵扯技术性脚本和代码)

首先建立新项目,这里使用Unity2020.3.16f1c1(中文)建立URP项目,使用自带场景进行实施。

可以看到这里有一个主相机,我们建立一个副相机,display层2;

紧接着我们设置一下固定的分辨率,1920*1080

两个场景的分辨率设置完成之后,在副相机底下新建canvas,对cavas进行设置

注意上中Canvas所需设置,然后双击副相机内的canvas添加一些组件,以供观察效果。

这里添加一个inputField和一个button供后期使用,此时运行可以看到cavas是固定的,如下图:

上图中cavas固定,且不影响3D场景的正常使用,可能有人注意到下面的tip,只需要把副相机的Audio listener脚本取消即可,如下图:

那么接下来,对项目的玩家设置进行设置,达到窗口化缩放目的。

上图中支持的纵横比可以根据实际进行选择,打包看效果。

可以看到下图,默认打开是窗口化的,我是4K屏。

我进行拖动缩放后的效果如下(动图):

可见3D场景不会受到影响,而CANVAS也是随着缩放,简单的目的实现了。

Over

记录习惯【Unity 3D中3D场景下嵌套2D Canvas并实现窗口缩放】相关推荐

  1. threejs 将屏幕坐标转换成3d中的坐标。

    将当前屏幕上的坐标转换成3d中的坐标pos 是当前canvas屏幕上的坐标,targetZ 是物体距离原点的距离 private get3DPosByCanvasPos (pos: THREE.Vec ...

  2. Unity 3D 中的专业“术语表”。

    这是unity手册中的内容.具体可以参考此链接:Unity 用户手册 (2019.4 LTS) - Unity 手册 目录 2D 术语 2D 物理术语 AI 术语 Analytics 术语 动画术语 ...

  3. Unity 3D中的射线与碰撞检测

    创建一条射线Ray需要指明射线的起点(origin)和射线的方向(direction).这两个参数也是Ray的成员变量.注意,射线的方向在设置时如果未单位化,Unity 3D会自动进行单位归一化处理. ...

  4. Unity 3D中的射线与碰撞检测 1

    创建一条射线Ray需要指明射线的起点(origin)和射线的方向(direction).这两个参数也是Ray的成员变量.注意,射线的方向在设置时如果未单位化,Unity 3D会自动进行单位归一化处理. ...

  5. 在Unity 3D中,shader是何时编译的,在何时加载入显存中的?

    在Unity 3D中,shader是何时编译的,在何时加载入显存中的? 是某一对象在实例化时,加载其相关的material与shader还是游戏开始时? 添加评论 分享 按时间排序按投票排序 4 个回 ...

  6. [Unity] Unity 3D 中的旋转

    Unity 3D 中的旋转 一.Unity 3D 中 Rotation 在Unity中,旋转通常可以用一个三维向量(x,y,z)表示.实际上这是欧拉角.三个分量分别是绕x轴.y轴和z轴的旋转角度. 要 ...

  7. (转)Unity 3D中的无限大地形的生成和调度

    随着硬件性能的不断提高,游戏的地形变得越来越大也更加细节化了(增加了更有特点的地形,大片的草地,还添加了树木,水等物体.在过去几年时间里,地形已经逐渐增加到长达数百平方英里,特别是在RPG游戏中. 在 ...

  8. 沉浸式 3D 场景下的多视点视频 增强算法研究

    沉浸式 3D 场景下的多视点视频 增强算法研究 研究内容 图像质量增强 为什么进行图像质量增强 图像有损压缩技术 多视点视频中的深度图像特点 视点数目增强 虚拟视点合成技术 视点外推 为什么进行视点数 ...

  9. 3D场景中选取场景中的物体。

    杨航最近在学Unity3D 在一些经典的游戏中,需要玩家在一个3D场景中选取场景中的物体.例如<仙剑奇侠传>,选择要攻击的敌人时.为我方角色增加血量.为我方角色添加状态,通常我们使 ...

  10. “3D几何与视觉技术”全球在线研讨会第九期~识别3D中的物体和场景

    编辑:CV君 | 未经授权不得转载 前几周跟大家分享了 3DGV 在线研讨会: "3D几何与视觉技术"全球在线研讨会(9月2日到12月16日) "3D几何与视觉技术&qu ...

最新文章

  1. Spring AOP是什么?你都拿它做什么?
  2. python batch normalization_Batch Normalization 引出的一系列问题
  3. 成都网络推广告诉大家网站抓取量要如何解决?
  4. Chroot vsftpd with non-system users (ftp)
  5. 小米大数据:借助Apache Kylin打造高效、易用的一站式OLAP解决方案
  6. [JavaScript编程练习]js获取文字中的100,使其变为红色,若文字100改为其他任意数字,该数字依然会是红色
  7. The procedure WAL relies on the ability to hsync for proper operation during component failures
  8. 为什么APF框架初始化时有两个一模一样的analyticConfiguration请求
  9. jpa配置映射包_JPA – Hibernate –包级别的类型映射
  10. [转]Java7中的ForkJoin并发框架初探(上)——需求背景和设计原理
  11. dj鲜生-33-用户中心-左侧链接与样式的完成
  12. oracle使用sql循环语句,常用SQL/oracle循环语句
  13. 天翼网关 ddns设置_UCloud物理云网关百G级集群设计实践
  14. Flash-制作空心文字
  15. 房地产软件解决方案供应商明源云在港交所主板上市
  16. handsome优化 - AMP/MIP阅读
  17. 这样设计积分兑换系统,让你的用户“活”起来
  18. vc 调用matlab figure 画图
  19. 你们还不了解YUM的使用?那就看看这篇文章把~
  20. HttpWebRequest 无法连接到远程服务器

热门文章

  1. sql盲注特点_sql盲注
  2. 鸿蒙系统am,解读鸿蒙“碰一碰”黑科技以全领域为亚美AM8发展目标
  3. java生成报表_用java实现报表导出
  4. excel表格横向纵向变换_Excel操作技巧:简单3步,搞定数据统计和分析!
  5. Win10免费升级 Win11 有时间限制
  6. centos7挂载ntfs文件系统_CentOS7挂载NTFS格式的硬盘
  7. win7系统怎么查看电脑配置,win7电脑系统配置查看
  8. ElasticSearch六 ElasticSearch扩展之FileBeat、Logstash
  9. minio-operator部署minio服务,并用Java客户端访问minio
  10. 企业经营模拟(ERP沙盘、ERP电子沙盘)分析总结报告与心得分享