「Unity3D」场景中的距离单位Unit与相关设置PixelsToUnits、PixelsPerUnit

GameObject在场景的位置Position,并没有明确是什么具体单位——如:Transform的x、y、z,或RectTransform的PosX、PosY、PosZ。而RectTransform在面板上显示的Width和Height,也没有具体单位,其实并不是像素。

事实上,通过3ds Max的模型导入Unity,会发现Unity的默认单位是米,也就是一个场景中的unit都是以米为具体单位。

这就涉及到一个问题,即如何按照比例显示像素?或说如何显示2D图片的大小?(3D的图片是以纹理形式蒙皮在模型上的,尺寸距离以模型的顶点为基准)

Texture

那么,在Texture导入的时候,如果是Sprite(2D and UI)就会有一个设置,即PixelsToUnits——也就是多少像素为一个Unity的单位unit,或说1米。

如图显示,默认是100个像素为1米,也就是100个像素,对应面板上的xyz / Pos.xyz / Width / Height的1——更大数值图片更小,更小数值图片更大,这是Sprite Renderer的情况。

例如,一个图片1024x1024,PixelsToUnits是100,则这个图片在场景中的width与height就是10.24——会显得很小;如果PixelsToUnits是1,则width与height就正好是1024——会显得很大。

Image

在Image中,可以设置一个Sprite,这时是将Sprite塞入Image的容器中,所以Sprite越大像素密度越大,则显示越小(被压缩了),Sprite越小像素密度越小(被拉伸了),则显示越大——这是Sliced Type情况。

但如果是Tiled Type,则是Sprite平铺在Image里面,所以Sprite越大,则只能铺一部分(显示不全),Sprite越小,则可以铺很多块(显示很多个小的Sprite)。

Canvas Scaler

这个Canvas Scaler组件,可以缩放整个画布,那么画布之上的像素也会受其影响,有两个设置,即:DynamicPixelsPerUnit与ReferencePixelsPerUnit——前者缩放Text(TextMeshPro不受影响),后者缩放Sprite——数值越大显示越小,数值越小显示越大。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/50259.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java 中对象List 转map实践

class MyObject {Long id;String name;// Constructorpublic MyObject(Long id, String name) {this.id id;this.name name;}// Getterspublic Long getId() {return id;}public String getName() {return name;} }第一种 List 转 Map<Long, String> List<MyObject…

百易云资产管理运营系统 comfileup.php 文件上传致RCE漏洞复现(XVE-2024-18154)

0x01 产品简介 百易云资产管理运营系统,是专门针对企业不动产资产管理和运营需求而设计的一套综合解决方案。该系统能够覆盖资产的全生命周期管理,包括资产的登记、盘点、评估、处置等多个环节,同时提供强大的运营分析功能,帮助企业优化资产配置,提升运营效率。 0x02 漏…

用Python移除Word文档中的宏

Word文档作为最常用的电子文档格式之一&#xff0c;经常被用来作为内容分享工具&#xff0c;在网络中或设备之间进行传输&#xff0c;其安全性也需要受到关注。宏是可嵌入Word文档中的一种VBA迷你程序&#xff0c;用来执行一些自动化操作。虽然宏可以提高工作效率&#xff0c;但…

C++内存管理(候捷)第五讲 笔记

GNU C对allocators的描述 new_allocator 和malloc_allocator&#xff0c;它们都没有特别的动作&#xff0c;无非底部调用operator new和malloc。它们没有用内存池 区别&#xff1a;::operator new是可重载的 智能型的allocator&#xff0c;使用内存池&#xff0c;分一大块然后…

嵌入式系统面试宝典:常见问题与答案解析

1. 什么是嵌入式系统&#xff1f; 答案: 嵌入式系统是一种专用的计算机系统&#xff0c;它被设计用于执行特定的任务。它通常包含硬件组件&#xff08;如微控制器或微处理器&#xff09;和嵌入在硬件中的软件。 2. 请解释中断和轮询的区别。 答案: 中断是一种异步事件&#…

【PyTorch】基于YOLO的多目标检测项目(一)

【PyTorch】基于YOLO的多目标检测项目&#xff08;一&#xff09; 【PyTorch】基于YOLO的多目标检测项目&#xff08;二&#xff09; 目标检测是对图像中的现有目标进行定位和分类的过程。识别的对象在图像中显示有边界框。一般的目标检测方法有两种&#xff1a;基于区域提议的…

如何找到最快解析速度的DNS

如何找到最快解析速度的DNS DNS&#xff0c;即域名系统&#xff08;Domain Name System&#xff09;&#xff0c;是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库&#xff0c;能够使用户更方便地访问互联网&#xff0c;而不用记住能够被机器直接读取的IP数…

6.乳腺癌良性恶性预测(二分类、逻辑回归、PCA降维、SVD奇异值分解)

乳腺癌良性恶性预测 1. 特征工程1.1 特征筛选1.2 特征降维 PCA1.3 SVD奇异值分解 2. 代码2.1 逻辑回归、二分类问题2.2 特征降维 PCA2.3 SVD奇异值分解 1. 特征工程 专业上&#xff1a;30个人特征来自于临床一线专家&#xff0c;每个特征和都有医学内涵&#xff1b;数据上&…

7月25日JavaSE学习笔记

线程的生命周期中&#xff0c;等待是主动的&#xff0c;阻塞是被动的 锁对象 创建锁对象&#xff0c;锁对象同一时间只允许一个线程进入 //创建锁对象Lock locknew ReentrantLock(true);//创建可重入锁 可重入锁&#xff1a;在嵌套代码块中&#xff0c;锁对象一样就可以直接…

探索PostgreSQL的GUI工具:提升数据库管理效率

在当今快速发展的技术世界中&#xff0c;数据库管理是任何软件开发项目的核心部分。PostgreSQL&#xff0c;作为一款功能强大的开源关系型数据库管理系统&#xff0c;因其稳定性、可靠性和高度的可扩展性而广受开发者和数据库管理员的青睐。然而&#xff0c;尽管PostgreSQL自带…

进销存系统开发,进销存源码解析,添加商品选择商品

点击添加商品信息&#xff08;可以&#xff09; (关键字范围&#xff1a;商品名称&#xff0c;简拼&#xff0c;条形码&#xff0c;SKU,规格&#xff0c;参数&#xff0c;尺寸&#xff0c;接口&#xff0c;CPU,品牌) function cwpd_selSaleGoodsNewMore_Vtax2024(domid,width…

uniapp 小程序实现类似抖音的简易刷视频功能

uniapp 小程序实现类似抖音的简易刷视频功能 先上视频 20240725-163843 直接上代码 代码中使用的是 uniapp 组件 swiper slider slider swiper 2. 代码中使用的 <tab-bar></tab-bar> 组件 是我自定义的组件 可以删除 3. 代码中的图片地址以及视频地址请更换为自…

sed利用脚本处理文件

一、sed是什么 sed 命令是利用脚本来处理文本文件。它可以依照脚本的指令来处理、编辑文本文件。主要用来自动编 辑一个或多个文件、简化对文件的反复操作、编写转换程序等。 二、sed的原理 读入新的一行内容到缓存空间&#xff1b; 从指定的操作指令中取出第一条指令&…

【时时三省】(C语言基础)分支语句2

山不在高&#xff0c;有仙则名。水不在深&#xff0c;有龙则灵。 ——csdn时时三省 多分支语句 if&#xff08;表达式1&#xff09; 语句1; else if&#xff08;表达式2&#xff09; 语句2; else 语句3; 如果表达式1成立语句1会执行 如果不成立表达式2执行 如果表达式2成…

【Spring Framework】使用完全注解方式开发

Spring Framework 是一个非常灵活且强大的 Java 企业级开发框架&#xff0c;它允许开发人员以多种方式进行配置和开发。在现代 Java 开发中&#xff0c;使用完全注解的方式来进行配置和开发已经成为趋势&#xff0c;这种方式能够减少 XML 配置文件的使用&#xff0c;使代码更加…

高级及架构师高频面试题

一、微服务多节点批量应该怎么设计&#xff1f; 1、异步任务分类&#xff1a; 周期性定时任务调度任务批量任务 2、需要考虑并解决的问题&#xff1a; 2.1、避免同一任务同时被多个节点捞取。 1&#xff09;数据库的行级锁 2&#xff09;redis分布式锁 3&#xff09;quartz…

【运维笔记】数据库无法启动,数据库炸后备份恢复数据

事情起因 在做docker作业的时候&#xff0c;把卷映射到了宿主机原来的mysql数据库目录上&#xff0c;宿主机原来的mysql版本为8.0&#xff0c;docker容器版本为5.6&#xff0c;导致翻车。 具体操作 备份目录 将/var/lib/mysql备份到~/mysql_backup&#xff1a;cp /var/lib/…

Multiview LM-ICP 配准算法

Multiview LM-ICP 配准算法针对一些大型的物体&#xff08;比如建筑物&#xff09;或者需要精细化建模的物体&#xff08;比如某个文物&#xff09;&#xff0c;仅仅进行成对的配准难以还原物体的全貌和细节。所以&#xff0c;多个视角的配准十分关键。 多视角的配准存在以下两…

[STM32]FlyMcu同时烧写BootLoader和APP文件-HEX文件组成

目录 一、前言 二、HEX文件的格式 三、组合HEX文件 四、使用FlyMcu烧录 一、前言 如题&#xff0c;BootLoader每次烧写都是全部擦除&#xff0c;当我们烧写APP程序的时候&#xff0c;BootLoader程序将不复存在&#xff0c;很多开发者或许只有USB转TTL模块&#xff0c;没有其…

grep命令搜索部分命令

首先 然后可以输入&#xff5c;以及grep命令 比如 bjobs| grep "3075*"bjobs| grep "3075"这个结果是这样的&#xff0c;