在 Cocos2D 中,图像是根据相关前缀自动选择的:name.png
对于非视网膜设备,name-hd.png
对于视网膜,name-ipad.png
对于 ipad 1 和 mini,以及name-ipadhd.png
对于 ipad 视网膜。
对于缩放,我有一些有用的定义,允许您根据特定平台更改内容:
#define MIDSCREEN ccp([CCDirector sharedDirector].winSize.width/2, [CCDirector sharedDirector].winSize.height/2)
#define WINSIZE [[CCDirector sharedDirector] winSize]
#define WINHEIGHT [[CCDirector sharedDirector] winSize].height
#define WINWIDTH [[CCDirector sharedDirector] winSize].width
#define IS_IPAD() (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
#define IS_RETINA() (CC_CONTENT_SCALE_FACTOR() == 2)
#define REAL_CONTENT_SCALE_FACTOR() (CC_CONTENT_SCALE_FACTOR() * (IS_IPAD() + 1))
#define CONTENT_SCALE_FACTOR() (IS_IPAD() ? 2.0 : CC_CONTENT_SCALE_FACTOR())
#define IPAD_SCALE() (IS_IPAD() ? 2.0 : 1.0)
#define CCP_IPAD(___X___, ___Y___) (IS_IPAD() ? ccp((___X___ + 16.0f) * CONTENT_SCALE_FACTOR(), (___Y___ + 32.0f) * CONTENT_SCALE_FACTOR()) : ccp(___X___, ___Y___))
#define CCP_IPHONE(___X___, ___Y___) (IS_IPAD() ? ccp(___X___, ___Y___) : ccp((___X___ / 2.0) - 16.0f, (___Y___ / 2.0) - 32.0f))
#define IS_IPHONE5() ([[CCDirector sharedDirector] winSize].width == 568 || [[CCDirector sharedDirector] winSize].height == 568)