闲来无事,整理了一下cocos2dx的屏幕适配策略,本文适用于想快速理解cocos2dx适配的开发者。 我们先假设:以854 * 480 的屏幕为标准进行开发,当然,这也就是cocos2dx所说的 设计分辨率 (Design Resolution)。 先介绍几个cocos2dx的常用函数: CCEGLView :: sh
闲来无事,整理了一下cocos2dx的屏幕适配策略,本文适用于想快速理解cocos2dx适配的开发者。
我们先假设:以854 * 480 的屏幕为标准进行开发,当然,这也就是cocos2dx所说的设计分辨率(Design Resolution)。
先介绍几个cocos2dx的常用函数:
CCEGLView::sharedOpenGLView()->setDesignResolutionSize()//设计分辨率大小(即开发时为基准的屏幕分辨率)
CCEGLView::sharedOpenGLView()->setFrameSize() //设置win32模拟器的分辨率
CCEGLView::sharedOpenGLView()->getFrameSize() //屏幕分辨率,实际的硬件参数
一、准备图片资源
准备一张854 * 480 的图片,这里我用红色线对图片的四个边描了一下边,以保证图片不能完全显示时,方便我们看出来。
二、直接使用三种适配策略
//kResolutionExactFit x,y都拉伸,使铺满屏幕
//kResolutionNoBorder 一个方向铺满屏幕,另外一个方向超出屏幕
//kResolutionShowAll 854 * 480 的设计区域全部可见,但是可能留有黑边(如在960 * 640的屏幕上)
以上三种原理这里不再赘述,详细可参考这里:http://www.ityran.com/archives/4809
既然我们是以854 * 480 为基准来开发游戏,那么我们这里将设计分辨率设置为854 * 480 。
[cpp] view plaincopyprint?
- pEGLView->setDesignResolutionSize(854 ,480 ,kResolutionNoBorder);
三、看效果
下面,我们设置win32模拟器的分辨率为960*640,来看一下三种适配策略的效果。
kResolutionExactFit效果:
[cpp] view plaincopyprint?
- pEGLView->setDesignResolutionSize(854 ,480 ,kResolutionExactFit);
这里可以看出,由于适配策略拉伸,x,y方向都填满了,同时也没有超出屏幕的情况,但是和下面两张图片比较,图片变形了。
kResolutionNoBorder效果:
[cpp] view plaincopyprint?
- pEGLView->setDesignResolutionSize(854 ,480 ,kResolutionNoBorder);
这里也可看出,左右的红色描边都不见了,由于屏幕比例和设计比例不一致,该适配策略能够铺满屏幕,但是原图超出了屏幕。
kResolutionShowAll效果:
[cpp] view plaincopyprint?
- pEGLView->setDesignResolutionSize(854 ,480 ,kResolutionShowAll);
这里,该策略使设计分辨率的所有内容均可见,但是由于实际屏幕比例和设计分辨率的比例不一致,会出现黑边的情况。
四、对资源分辨率的解释
对于一个游戏,多套图片资源,涉及到在不同屏幕分辨率情况下就需要使用不同的图片资源了,直接点说,大屏幕用大图,小屏幕用小图。
同时,由于图片资源宽高比和设计分辨率的宽高比可能不一致,也需要按照某个比例对图片资源进行缩放。
详情见:http://www.ityran.com/archives/4809
以上是个人对cocos2dx分辨率适配进行了一些简单的介绍,适合大家快速理解整套适配策略,更加详细的原理可参考文章给出的链接。

2340x1080属于2K屏,指分辨率,跟屏幕大小没有直接关系;2K分辨率是一个通用术语,指屏幕或者内容的水平分辨率达到约2000像素,传统电影2K分辨率为“2048×1080”。

电脑屏幕发黄的原因:1、显示器数据线或者接触不良导致,可以重新插拔一下显示器数据线,如果正常说明是显示器接触不良导致的;2、显示器内部灯管老化容易导致发出的光不正常,从而导致屏幕颜色问题;3、显卡接触不良,金手指灰尘太多和显卡驱动不正常;4、显卡驱动程序丢失,显卡驱动程序与系统不兼容,显卡驱动程序损坏和无法安装显卡驱动程序。

incell屏幕是触摸屏。Incell是一种屏幕贴合技术,它代表的是将触控面板与液晶面板进行一体化贴合处理;也就是将触控面板嵌入液晶像素之中。Incell技术带来的好处就是减少手机的厚度,使得手机厂商能够对手机的内部空间进行更加有效的利用;除此之外,采用了incell技术的屏幕拥有更好的显示画质。

LTPS不是屏幕,而是液晶面板的一种工艺,是一种制作技术。LTPS的中文意思为“低温多晶硅”,是多晶硅技术的一个分支;LTPS技术有效的提高屏幕可操作性,同时PPI可以达到500以上。ltps屏幕的最大优势在于超薄、重量轻、低耗电,可以提供更艳丽的色彩和更清晰的影像;它使用激光或热处理来把非晶硅熔融,让晶体从新排列,提高迁移率,从而实现控制高分辨率的屏幕,低功耗。

POLED全称Plastic OLED,中文意思为“塑性有机屏”,具备不易碎、轻便、可弯曲的特点。POLED是一种有机自发光屏幕,与采用玻璃材质的OLED屏幕有所不同,它加入了塑料材质融合,使得屏幕更有柔性,同时也使得其可以带来一定的减震效果,厚度也仅有传统玻璃材质的OLED的一半;总的来说,就是屏幕更薄、更轻、并且因为有柔性,耐摔性还更好一些。

电脑屏幕出现很多条纹的原因:1、显示器故障,可以尝试将电脑插头拔出,然后再重新插入;2、分辨率设置,可以尝试将分辨率调整回默认设置;3、插头连接问题,尝试重新插拔插头,确保插头完全插入;4、显卡问题,可以尝试更新显卡驱动程序;5、电脑病毒感染,运行杀毒软件扫描你的电脑,处理任何检测到的威胁;6、电磁干扰,将电脑移动到不同的位置;7、硬件故障,联系专业人员进行检修或更换。

当您无法切断通话时,您是否曾经因为通话时iPhone屏幕无法打开而感到烦躁?这是因为我们已经看到了几位iPhone用户的许多报告,这些报告称iPhone屏幕在通话过程中变黑,无论他们做什么都不会打开。如果用户紧急想要切断呼叫,想要拨打另一个号码进行电话会议,或者出于任何原因拨打代码,这实际上是有问题的。此问题背后可能有多种原因,例如最顶层可能在接近传感器存在的地方损坏、内部某些设置的更改、“点击唤醒”选项可能未启用等。在这篇文章中,我们列出了几个解决此问题的最佳故障排除技巧。修复1–检查iPho

外屏指的是手机屏幕最外层的玻璃,是手机的感应屏;外屏的作用是感应相应的输入,犹如键盘和鼠标的综合体。外屏对应的是内屏,即手机的显示屏,用于显示图像,犹如电脑的显示器。外屏如果坏了,其特征是触摸不灵或没有触摸感;内屏如果坏了,其特征为不能显示或者显示不全。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),