这个5表示摄像机的视距

代表摄像机拍摄的一般高度

如果16:9的分辨率,100像素为1 unity单位的情况

填充摄像机所需图片大小尺寸为:高度:5*2*100 = 1000    宽度:1000*16/9 = 1778 【1778*1000】

上面这2张图,一个y坐标为  -3.5  ,一个为 -4 ,图片的pixel per unit为200

可计算出2图之间的像素为:0.5 * 200 = 100 像素

如果我们把图的pixel per unit改为100

他们的图片会直接放大,但是他们的坐标不变,此时他们之间的距离为 0.5 *100 = 50像素

虽然他们之间的距离像素会发生变化,但是他们之间的unity单位是始终保持不变的,一直是0.5

由此我们可以得到一个游戏素材分辨率转换思路

我们可以改变游戏素材的尺寸,但是不会改变他们在unity里面的大小

比如一个pixel per unit为100,宽高也为100的图,现在要对他进行低分辨处理

我们把100*100改成 50*50 ,缩小一倍,然后把pixel per unit也缩小一倍,也就是50即可

高清化则反之,100*100改成200*200  ,pixel per unit改成200

高清化的作用

一般我们设计分辨率固定下来后,放大摄像机视距,场景素材会放大,高清化使得放大后的素材不模糊

具体看比例,比如我们正交摄像机size为5,设计分辨率【1920*1080】,推导出铺满场景需要【1778*1000】,则摄像机视角最多放大1000/1080 = 0.92倍,物体不会模糊,这个数字是小于1,没错,严格来讲1080p不应该使用这个size。

如果我们正交摄像机size为14.2,设计分辨率【1920*1080】,推导出铺满场景需要【5049*2840】,则摄像机视角最多放大2840/1080 = 2.62倍,物体不会模糊

逆向推导,1080p设计分辨率,1080/100/2=5.4,size至少5.4才是达标的size,所以我们推荐的正交摄像机的size最好是 5.4 至 10,在pixel per unit为100的情况

同时size过大也不好,因为需要绘制更大的素材。算好你的游戏正常视角和最大的视角,来决定你的size。一般来说在最大视角上图片不模糊就是你的正确的size。这种最大视角不应该过大,因为这个比例越大其实就是越浪费。而你的游戏有多少种情况是处于这种放大情况的呢。更不用说在移动平台上更需要节省资源来避免这种资源上的浪费。谷歌商店对安装包体积大小具有100Mb限制,再大需要开发者自行分包,移动平台上安装包越小更有优势

最后算了一下,透视摄像机,z为-10.16 的情况,要达到5.4标准,Field of view 值为56

如果调整了pixel per unit 那么每次导入的图片则需要设置一下

项目添加如下脚本

 using UnityEngine;
using UnityEditor; public class SpritePixelsPerUnitChanger : AssetPostprocessor
{
void OnPreprocessTexture ()
{
TextureImporter textureImporter = (TextureImporter) assetImporter;
textureImporter.spritePixelsPerUnit = 100;//自行设定数值
}
}

unity 单位 像素 分辨率 正交摄像机size 之间的关系的更多相关文章

  1. step(iter)、epoch、batch size之间的关系

    转自:https://blog.csdn.net/wcy23580/article/details/90082221

  2. 屏幕的尺寸(厘米)、屏幕分辨率(像素)、PPI它们之间是什么关系

    屏幕的尺寸(厘米).屏幕分辨率(像素).PPI它们之间是什么关系? 添加评论 分享 赞同2反对,不会显示你的姓名 知乎用户,数据ETL,UNITY3D 刘大侠.如果 赞同 以iphone4 为例,分辨 ...

  3. Unity 基于Cinemachine计算透视摄像机在地图中的移动范围

    Unity中Cinemachine的基础功能介绍可详见之前写的博客: https://www.cnblogs.com/koshio0219/p/11820654.html 本篇的重点是讨论,在给定规则 ...

  4. WPF的单位 屏幕 分辨率

    原文:WPF的单位 屏幕 分辨率 WPF程序中的单位是与设备无关的单位,每个单位是1/96英寸,如果电脑的DPI设置为96(每个英寸96个像素),那么此时每个WPF单位对应一个像素,不过如果电脑的DP ...

  5. android - px(像素)、dpi(像素密度)、dip(密度无关像素)之间的关系

    使用ImageView会遇到的问题 在Android应用中,都少不了图片的显示,ImageView,轮播图,ViewPager等等,很多都是来显示图片的,很多时候,我们都希望图片能够在宽度上填充父窗体 ...

  6. 适配方案(四)适配的基础知识之单位、分辨率、viewport

    适配的基础知识 一.理解单位 px.pt.pc.sp.em.rem.dpr.dp.dip.ppi.dpi.ldpi.mdpi.hdpi.xhdpi.xxhdpi 如果你是ios开发,你需要了解的单位: ...

  7. 说明位图,矢量图,像素,分辨率,PPI,DPI?

    说明位图,矢量图,像素,分辨率,PPI,DPI? 显示全部 关注者 28 被浏览 7,031 关注问题写回答 ​邀请回答 ​添加评论 ​分享 ​     2 个回答 默认排序 刘凯   21 人赞同了 ...

  8. 深入理解Three.js中正交摄像机OrthographicCamera

    前言 在深入理解Three.js中透视投影照相机PerspectiveCamera那篇文章中讲解了透视投影摄像机的工作原理以及对应一些参数的解答,那篇文章中也说了会单独讲解Three.js中另一种常用 ...

  9. 压力单位MPa、Psi和bar之间换算公式

    压力单位MPa.Psi和bar之间换算公式 1bar=10^5PaPsi为英制压力单位.“磅力每平方英寸(1bf/in2)为1psi=6894.76 pa: 1bar等于10的5次方=10^5 pa ...

  10. 10-THREE.JS perspective透视摄像机和orthographic正交摄像机区别

    <!DOCTYPE html> <html> <head> <title></title> <script src="htt ...

随机推荐

  1. 【记录】BASE64|解决JS和C++中文传输乱码,内含两种语言的Base64编码解码的代码

    JS 解决方法来源于知乎新码笔记的文章 function b64Encode(str) { return btoa(unescape(encodeURIComponent(str))); } func ...

  2. QtWidget项目-仿腾讯QQ音乐

    本博客主要介绍本人写的个人项目 - QtWidget5 仿腾讯QQ音乐项目. 效果演示 项目详情 源码 Gitee地址:https://gitee.com/run-little-peach/my-qq ...

  3. 【译】Visual Studio 推出预览版 Agent 模式

    规划.构建.测试.修复 -- 一切只需一个提示. Visual Studio 17.14 版本已向所有用户公开预览版 Agent 模式.Visual Studio 中的 Agent 模式允许您使用自然 ...

  4. RPC实战与核心原理之优雅启动

    优雅启动:如何避免流量打到没有启动完成的节点? 回顾 优雅停机,就是为了让服务提供方在停机应用的时候,保证所有调用方都能"安全"地切走流量,不再调用自己,从而做到对业务无损.其中实 ...

  5. 用 Sidecar 容器为 .NET Core 应用做诊断和性能分析

    在微服务架构和云原生应用广泛采用的今天,.NET Core 应用被越来越多地部署在 Kubernetes 集群中.然而,一旦这些应用出现性能瓶颈,仅靠传统的日志和指标可能无法定位问题的根本原因. 从 ...

  6. Django Web应用开发实战第四章

    一.设置响应方式 网站的运行原理遵从HTTP协议,分为HTTP请求和HTTP响应.HTTP响应也称为状态码,分为5种状态:消息.成功.重定向.请求错误和服务器错误.若以使用频率划分,HTTP状态码分为 ...

  7. wso2~部署~v4.2.0-alpha本地构建

    让我先查看一下v4.2.0-alpha分支的构建相关信息: Search files... 让我继续查看构建说明文档: Search files... 让我查看一下项目根目录下的文件: Ran too ...

  8. 【实战教程】雷池 WAF + 阿里云 CDN 深度联动:性能优化与安全防护双升级指南

    雷池 WAF(Web Application Firewall)是一款强大的网络安全防护产品,通过实时流量分析和精准规则拦截,有效抵御各种网络攻击.在部署雷池 WAF 的同时,结合阿里云 CDN(内容 ...

  9. 利用python、scipy求解差分方程的解

    文档:https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.lfilter.html#scipy.signal.lfilt ...

  10. 数栈运维案例:云上RAC部署、运维及实践案例

    数栈是云原生-站式数据中台PaaS,我们在github和gitee上有一个有趣的开源项目:FlinkX,FlinkX是一个基于Flink的批流统一的数据同步工具,既可以采集静态的数据,也可以采集实时变 ...