游戏中的DPI

DPI在高分辨率显示器和手机普及之后,开始成为消费者关心的话题。
游戏也会出现这个问题
简单讲,DPI(dots per inch)就是一个参数,调了之后,画面上的字体等会变大变小。
比如我使用一个27寸的4k显示器,如果DPI 100%的话,那么字体就是27英寸的1080p显示器的1/4大小,完全没法看了。
这个时候,使用DPI 200%,字就又大又清楚了。
这个过程在windows上面就是DWM(desktop windows manager)做了scaling,它和自己手动改4k显示器分辨率到1080p很像,但是不完全一样(比如程序还是可以自己在程序里面使用不缩放的渲染)。

游戏里
如果我们什么都不做的话,游戏按照普通的api调用来识别桌面的大小,比如使用:GetSystemMetrics这样的函数,拿出来就是经过DPI缩放过的值(1080p 200%缩放,拿到的宽就是960了)。
当然我们也可以使用一些无视DPI的系统api来获得native的resolution,但这个其实不太推荐,要处理的情况还是比较多的。

另外一个就是通过windows(尤其是win10里面设置已经非常方便了),这样游戏就无视系统的DPI设置了
在这里插入图片描述

windows对游戏的自动设置
如果游戏真全屏跑了之后,系统会自动识别出来这个是游戏,会通过注册的方式,自动的让这个游戏(exe)不使用系统的真全屏

reference
https://docs.microsoft.com/en-us/windows/desktop/win7devguide/high-dpi

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值