屏幕dpi与美术资源的分辨率选择

最近开发一个项目,纠结于美术设计图的分辨率选择问题。考虑到现在主流设备都是1920*1080分辨率,所以打算将美术资源都做成1920*1080的。但是有同事说就做成960*540,缩放一下,效果差不多。对此,我表示怀疑,要是缩放能够达到效果,那干嘛有高清这么一说呢。

首先,从dpi来说,乔布斯提过,300dpi就是人眼在25cm处能分辨的极限了。也就是说,我的一张原图(没有模糊),放在dpi小于300的设备上,能看出一些模糊,但是在高于300dpi的设备上,就无法分辨出像素点了,也就看不出有任何模糊的地方(图片分辨率和设备分辨率相同)。如果设备400dpi,分辨率1920*1080,图片分辨率只要高于

300/400(1920,1080)=1440,810

经过放大,全屏显示出来,也是看不出放大产生的锯齿什么的,看不出细节的丢失。

但是这个视网膜分辨率,是指300dpi和25cm离屏幕距离。

不是这个dpi的情况下,也可以有对应的人眼无法分辨出来的距离的,dpi高,距离越小,dpi低,距离越大。

为此,做了一个实验,用小米5截屏一个游戏,分别将截屏图片缩小到50%和30%,分组为A和B。

这样,两张图的分辨率分别为:960*540,576*324。

在手机上打开这两张图片,A几乎和原图看不出差异,看不出没有失真和锯齿,而B看上去有明显的锯齿,但是增加观看距离之后,这些锯齿就看不出来了。PS:小米5的尺寸为5.15inch,dpi427。

再将三张图放在屏幕分辨率为1920*1080分辨率的电脑上,屏幕尺寸约莫23inch,dpi100左右,在离屏幕35cm左右的距离观看,A出现了锯齿,有失真,B的失真情况更为严重。但是增加了观察距离之后,锯齿就看不见了。

综上所诉,人眼看到的效果,跟图片的分辨率、设备的dpi、人眼观察距离相关。

乔布斯所说的视网膜分辨率为300dpi,这应该是比较严格的要求,实际上在200dpi,就不分辨得出图片的像素点了。

时间: 2024-10-11 17:03:26

屏幕dpi与美术资源的分辨率选择的相关文章

基于cocos2dx的2D手游美术资源制作技术选型(2)--动作编辑器选择

Cocostudio是cocos2dx官方提供的游戏制作工具,其中包含了动作编辑器,其编辑好的动画导出的文件有三种:Atlastexture,json的AtalasTexture描述文件和plist动画描述文件,可以使用LibExtension Amature加载和播放. 但Cocostduio的动作编辑器也有一些不足的地方: 1. Cocostduio的崩溃率较高,很容易造成编辑过程中的数据丢失 2. Cocostudio的动作编辑方式对美术来说学习成本大,使用上也多不方便,美术对此非常抗拒

C# 获取当前屏幕DPI

原文:C# 获取当前屏幕DPI 1.通过Graphics类获取 Graphics currentGraphics = Graphics.FromHwnd(new WindowInteropHelper(mainWindow).Handle); double dpixRatio = currentGraphics.DpiX/96; 比如当前屏幕设置DPI设置1.5倍,可以通过如上通过后台获取. 2.通过Win32-ManagementClass using (ManagementClass mc

Flash美术资源

之所以写这个文章,是因为自己在这些年的AS前端开发中,逐渐发现了关于Flash美术的大量的"陷阱"和"流氓资源".当然,AS编写中,也存在类似的事情.但本章值谈论Flash.另外,还有一个原因,很多的小公司的美术都不注意这些问题. 1,关于图片问题 ①:关于as链接: 这玩意,可以将RPG人物的动作及美术的文字加到SWF中进行压缩及加密.然后由AS3进行提取.但是如你的Flash版本是CS6以下.则,AS3是获取不到图片的.要注意. ②:关于纯粹的图片 其实这个东西

2019年3月整理的2D美术资源合集

这批资源以Q版为主,包含各种动作.适合于2D横版各类型的游戏 2D美术资源-The Boy – Free Spriteshttp://www.idoubi.net/2d/2724.html2D美术资源-Cute Girl Free Spriteshttp://www.idoubi.net/2d/2725.html2D美术资源-Free Dino Spriteshttp://www.idoubi.net/2d/2726.html2D美术资源-The Zombies – Free Spritesht

Android屏幕密度(Density)和分辨率概念详解

移动设备有大有小,那么如何适应不同屏幕呢,这给我们编程人员造成了很多困惑.我也是突然想到这些问题,然后去网上搜搜相关东西,整理如下. 首先,对下面这些长度单位必须了解. Android中的长度单位详解(dp.sp.px.in.pt.mm) 看到有很多网友不太理解dp.sp和px的区别:现在这里介绍一下dp和sp.dp也就是dip.这个和sp基本类似.如果设置表示长度.高度等属性时可以使用dp 或sp.但如果设置字体,需要使用sp.dp是与密度无关,sp除了与密度无关外,还与scale无关.如果屏

Android实战技巧之十:获得屏幕物理尺寸、密度及分辨率

大家帮忙喽! 博主参加2014博客之星活动,大家帮忙投票啦!猛击这里! 通过程序去了解硬件情况是一件十分有意思的事情.很早我就研究在WM6.5上获得屏幕物理尺寸,但一直没有成功.后来又想要在Android上有所突破,不过在今天之前得到的尺寸都不准确.虽然很多人认为没必要这么较真,因为貌似很多情况下用不到.不过我就当这是一件很有挑战性的事,一定要做到.对,就是这么任性. 源码中android.view包下的Display类提供了很多方法供程序员获得显示相关的信息,通过此类让我们开启了解设备屏幕之旅

Android 为什么计算不出准确的屏幕尺寸的原因,及 Android 获得屏幕物理尺寸、密度及分辨率

DPI:dots-per-inch,每英寸的像素数量,也就是说,密度越大,每英寸内容纳的点数就越多.这个值是设备自己决定并写死的. 计算方法:获取到屏幕的分辨率:point.x和point.y,再取出屏幕的DPI(每英寸的像素数量),计算长和宽有多少英寸,即:point.x / dm.xdpi,point.y / dm.ydpi,屏幕的长和宽算出来了,再用勾股定理,计算出斜角边的长度,即屏幕尺寸. WindowManager manager = (WindowManager) context.g

获取当前屏幕DPI

1.通过Graphics类获取 Graphics currentGraphics = Graphics.FromHwnd(new WindowInteropHelper(mainWindow).Handle); double dpixRatio = currentGraphics.DpiX/96; 比如当前屏幕设置DPI设置1.5倍,可以通过如上通过后台获取. 2.通过Win32-ManagementClass using (ManagementClass mc = new Management

翻译 基于物理渲染的美术资源设计流程

基于物理的渲染 相关的系列文章又一篇,原创的总结也马上要发出来 如果要在游戏产品里推行基于物理的渲染,只有程序渲染管线是远远不够的,如何培训美术和设计人员去适应新的方法也是一个重要课题 这篇ppt也是我计划的一系列美术教材中的一篇,希望能对大家起到帮助,ppt里的有一个链接是要FQ的,为了方便,我就在这贴里翻译了 链接 http://pan.baidu.com/s/1mg2xSjY 49kw 原文 http://research.tri-ace.com/Data/cedec2012_FlowFo