cocos2dx中setContentScaleFactor作用

比如设计分辨率是960x640,资源是320x480。为了让这个资源铺满屏幕,可以在所有设置资源的地方设置一个scale为2,也可以直接用setContentScaleFactor(0.5),那么所有的资源都会做2倍的缩放。为什么设置0.5是2倍缩放?因为这个的算法是(资源)/(设计分辨率)。但是通常美术给的图片大小是按照我们要求的设计分辨率来的,也就是Resources Size等于Design Size


Cocos2d-x图片显示有下面两个逻辑过程。
资源布局到 到 设计分辨率,设计分辨率 布局到 屏幕。
接口setContentScaleFactor()和setSearchPaths()控制着第一个转换过程。

而setDesignResolutionSize()控制第二个过程。两个过程结合在一起,影响最终的显示效果。

setContentScaleFactor()决定了图片显示到屏幕的缩放因子,Cocos2d-x引擎设计试图屏蔽游戏开发者直接去关注屏幕,这个其实是图片投射到设计分辨率的缩放因子,下图是设置缩放因子为RH/DH和RW/DW的效果:


用高度比作为内容缩放因子,保证了背景资源的垂直方向在设计分辨率范围内的全部显示。 用宽度比作为内容缩放因子,保证了背景资源的水平方向在设计分辨率范围内的全部显示。

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...