针对不同的手机分辨率,应使用不同的资源分辨率;而且针对同一个手机分辨率,使用不同的资源及资源分辨率,效果也不同。本节课将介绍Cocos2d-X中的资源分辨率。
如果在实际分辨率较低的手机,使用大分辨率的纹理,会使游戏包较大、浪费CPU与GPU的带宽、浪费内存、耗电等。所以针对不同分辨率使用不同尺寸的纹理,是优化游戏的基本方式。
将几套尺寸不同的纹理放到不同的文件夹下,然后通过设置FileUtils:setSearchPaths来确定读取哪个文件夹下的纹理图片。这种方式除了可以解决分辨率大小的问题,还可以解决,游戏中换装等问题。如果搜索路径不存在,则搜索文件名本身的路径。
针对同一个手机分辨率,使用Director::setContentScaleFactor设置不同的资源分辨率(如下),会导致不同的效果。
1、资源分辨率为1,实际纹理尺寸为300*200
2、资源分辨率为2,实际纹理尺寸为300*200
3、资源分辨率为2,实际纹理尺寸为600*400
Director::getInstance()->getWinSizeInPixels()是从资源分辨率角度来说的分辨率大小。
笔者制作网站的目的,主要是借用自己之前的知识背景(Android App开发和图形学知识),将自己学习笔记拿出来,和大家一起进行交流,毕竟每个人的知识体系不同,有交流才会有提高,所以欢迎大家通过各种方式和我联系。
网址:www.geekfaner.com
youku教学视频:http://i.youku.com/geekfaner
“百度传课”教学视频(高清版_推荐):http://www.chuanke.com/s2588605.html