zoukankan      html  css  js  c++  java
  • cocos2d:开启iphone4+高清模式及提供高清图片的方法

    1. 通过[director enableRetinaDisplay:YES] 开启高清显示
    2. 使用TexturePacker自动生成@2x,-hd图片

     首先打开你的   AppDelegate.m(这里我用的cocos2d1-1.0.0版本默认创建cocos2d项目自动生成的类);OK,然后手动搜下如下代码:

    [director enableRetinaDisplay:YES] 

    OK,搜到的代码完整如下;

    //// Enables High Res mode (Retina Display) on iPhone 4 and maintains low res on all other devices

    //	if( ! [director enableRetinaDisplay:YES] )
    //		CCLOG(@"Retina Display Not supported");

      没错,这几行被注释掉了,OK,将注释去掉,完成开启高清模式;将iOS模拟器设置为iphone(Retina),然后再运行一下项目,分辨率就成了960*640;

          OK,紧接着要说图片适配的问题:

          做iOS的童鞋们在iOS4之前都应该没有所谓适配的概念(抛开ipad不说),那么如今iOS4出来了,iphone就有了分辨率大小之分,那么程序中所用的图片也对应

    需要进行设计;其实apple早已为开发者考虑到了,所以提供了很方便的方式:

        假设你程序中使用了icon.png这张图,那么为了能适配所有的机型,那么你需要在你的项目中为icon.png添加一个高清的版本,@2x,“icon@2x.png”,那么在程

    序在iphone4中进行运行的时候就会自动索引@2x的对应图片,那么对此Himi要提醒重要的一点:

        以上@2x的方式是抛开cocos2d,单单说的iOS的系统API,那么如果在cocos2d中使用的图片也类似需要添加一个高清的版本,-hd,“icon-hd.png”;这里一定不能

    搞错;

        最近申请IPD可谓困难重重,不过这几天就应该申请下来了;这几天里也购买了一个图片打包工具“TexturePacker”,做cocos2d的肯定不陌生,没错,此编辑器主要

    的作用就是将大部分图片打包,省包大小、省运行内存、提高运行效率等优点,这里不详细介绍,大家可以自行百度下;那么这里说下"TexturePacker"有二个很重

    要的功能,其一是自动为你的图片打包之余添加一个@2x或者-hd版本的图片包提供适配使用,其二是能将图片打包成pvr、与pvr.ccz格式,相当好用,此工具这里

    Himi推荐,$19+ 不算贵;(但是提醒大家购买的时候一定要使用$进行支付,因为人家不要RMB,害得好多次购买失败,悲剧);

            这里顺便再推荐两款编辑器,(Himi正在购买中)1. ParticleDesigner(粒子特效编辑器)http://particledesigner.71squared.com/   

               2.------------------physicsEditor(物理编辑器)http://www.physicseditor.de/features/

        那么闲话不多说了,关于推荐的编辑器大家应该很熟悉了,不熟悉的可以自定打开连接,下面讲解如何设置iphone运行程序横竖屏问题;

        cocos2d引擎中默认是横屏,在1.0.0版本中框架有所变化,所以这里我讲解的设置方法是针对cocos2d -1.0.0版本而言的;

        打开  RootViewController.m ,然后所有搜索如下代码:

    UIInterfaceOrientationIsLandscape

     

      然后看到的完整代码如下:

    #elif GAME_AUTOROTATION == kGameAutorotationUIViewController

    	//
    	// EAGLView will be rotated by the UIViewController
    	//
    	// Sample: Autorotate only in landscpe mode
    	//
    	// return YES for the supported orientations
    	
    	return ( UIInterfaceOrientationIsLandscape( interfaceOrientation ) );

     

       将最后return的修改成如下代码即可竖屏:

    return ( UIInterfaceOrientationIsPortrait( interfaceOrientation ) );

    转自http://xiaominghimi.blog.51cto.com/2614927/657847
  • 相关阅读:
    从头到尾彻底解析Hash表算法
    postgres模糊匹配大杀器
    postgres数据库表空间收缩之pg_squeeze,pg_repack
    pgcli安装
    pg_waldump的使用
    数据库表空间收缩之pg_squeeze,pg_repack
    数据库fillfactor
    pgbouncer连接池
    mysql-选择使用Repeatable read的原因
    postgresql-锁相关
  • 原文地址:https://www.cnblogs.com/optimus/p/2565762.html
Copyright © 2011-2022 走看看