<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## 一、安裝cocos2d文檔集 ? 為了便于今后檢索Coco2d的各種類、方法、屬性,我們最好將cocos2d的文檔安裝到Xcode中。作者Blog中曾有一篇譯文《使用Doxgen創建Xcode文檔集》描述了創建文檔集的方法,但時至今日,Xcode已經發展到3.2.5,而Doxgen也升級到1.7.3了,原文中描述的方法也多少有些不適應了。且不知到什么原因,直接在Xcode中編譯cocos2d文檔集總是不成功,所以這里只能用DoxgenGUI生成cocos2d文檔集。 1、安裝Doxgen 當前版本為1.7.3,下載地址: [http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc](http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc) dmg格式,下載后把doxgen.app拖到“應用程序”目錄(/Applications)即可。 2、運行Doxgen.app Doxgen GUI使用起來很簡單,如下圖所示: ![](https://box.kancloud.cn/2016-05-04_572a0b924a58f.gif) ? Step1: Specifythe working directory… 需要指定一個Doxgen工作目錄,隨便指定一個即可,實在不行就新建個,Doxgen有時候會放一些臨時文件在這里。 為簡單起見,我們使用的是Wizard模式,這種方式比較簡單。 Project name:填寫項目的名稱 Projectversion or id:版本號 Project logo:選擇一個圖標,會顯示在文檔集中。 Source codedirectory:指定源文件目錄,cocos2d的源文件都放在安裝目錄的cocos2d目錄中。當然也可以只指定cocos2d目錄,然后勾上Scanrecursively,Doxgen會自己去搜索所有子目錄。 Destinationdirectory:文檔集生成后存放的路徑,這里,我們直接指定為cocos2d目錄。 好了,點擊Run按鈕,進入如下界面,然后點擊Rundoxygen就大功告成了: ![](https://box.kancloud.cn/2016-05-04_572a0b9264eef.gif) ? 打開Xcode,點擊Help——>DeveloperDocumentation,打開Document Browser,點擊Home按鈕,可以看到新多出來的Doc Set: ![](https://box.kancloud.cn/2016-05-04_572a0b9284e66.gif) ? 當然,你也可以打開文檔集存放目錄(/cocos2d-iphone-0.99.5/html/)目錄進行瀏覽(因為我們生成的Doc Set是Html格式的): ![](https://box.kancloud.cn/2016-05-04_572a0b929d81c.gif) ? ## 二、理解Cocos2dApplication 新建一個Cocos2dApplication,將Classes目錄下的所有源文件刪除。因為我們不想使用Cocos2d模板自動生成的代碼而準備自己從頭實現,這樣更方便我們理解Cocos2d應用程序的機制。同時學習在cocos2d動畫中Action(動作)的概念和運用。 1、實現 一個CCLayer 新建File,命名為HelloAction,編輯.h和.m文件內容如下: ~~~ #import <Foundation/Foundation.h> #import "cocos2d.h" @interface HelloAction : CCLayer{ } @end #import "HelloAction.h" @implementation HelloAction -(id) init { if( (self=[superinit] )) { // 創建標簽 CCLabelTTF* label = [CCLabelTTFlabelWithString:@"Hello Actions"fontName:@"Marker Felt"fontSize:64]; // 通過director得知窗口size CGSize size = [[CCDirectorsharedDirector] winSize]; // 讓標簽居中 label.position =? ccp( size.width /2 , size.height/2 ); // 向 CCLayer 中加入標簽 [selfaddChild: label]; // 定義一個 CCAction:CCScaleBy 動作,3秒內,縮放2.5倍 id action = [CCScaleByactionWithDuration:3.0fscale:2.5f]; // 在標簽上應用 CCAction [labelrunAction:action]; // 定義一個 CCSprite:并載入圖像 icon.png,設置 CCSprite 的位置 CCSprite *sprite = [CCSpritespriteWithFile:@"Icon.png"]; sprite.position = ccp( 0, 50); // 把 CCSprite 加入到 Layer,并設置其 z 軸為1,z 軸越大則表明該對象越處于上層 // 由于 z 軸默認值為0,因此 CCSprite 將顯示在標簽的上層 [selfaddChild:sprite z:1]; // 定義 CCAction:CCRotateBy 動作,4秒內旋轉720度 // "By" 意味著相對. "To" 意味著絕對. id rotateAction = [CCRotateByactionWithDuration:4angle:180*4]; // 定義 CCAction:CCJumpBy 動作,4秒內蹦4次,位置右下角,高度100. id jumpAction = [CCJumpByactionWithDuration:4position:ccp(size.width,0) height:100jumps:4]; // 定義 CCAtion: CCSpawn 動作,同時執行旋轉動作和蹦跳動作 id fordward = [CCSpawnactions:rotateAction, jumpAction, nil]; // 基本上所有的 CCAction 都支持 reverse 方法 // 它將執行相反的動作 id backwards = [fordward reverse]; // 定義 CCAction:CCSequence 動作,它將順序執行多個動作 id sequence = [CCSequenceactions: fordward, backwards, nil]; // 定義 CCAction:CCRepeat 動作,它可以重復執行指定動作任意次數. // 如果要不停地重復,可以定義 "RepeatForEver" 動作. id repeat = [CCRepeatactionWithAction:sequencetimes:2]; // 命令 CCSprite 執行指定動作,當該層顯示在屏幕上時,動作即會自動執行 [spriterunAction:repeat]; } returnself; } - (void) dealloc { [superdealloc]; } @end ~~~ 2、實現應用程序委托 新建File,命名為AppDelegate,編輯.h和.m文件內容如下: ~~~ #import <Foundation/Foundation.h> #import "cocos2d.h" @interface AppDelegate : NSObject<UIAccelerometerDelegate, UIAlertViewDelegate, UITextFieldDelegate,UIApplicationDelegate> { ??? UIWindow *window; } @property (nonatomic, retain) UIWindow *window; @end #import "AppDelegate.h" #import "HelloAction.h" #import "EAGLView.h" @implementation AppDelegate @synthesize window; - (void) applicationDidFinishLaunching:(UIApplication*)application { //創建主窗口 window = [[UIWindowalloc] initWithFrame:[[UIScreenmainScreen] bounds]]; // 創建EAGLView實例。 EAGLView 派生亍類 UIView, 蘋果公司用它來實現 OpenGL 輸出支持,以支持OpenGL ES 編程: EAGLView *glView = [EAGLViewviewWithFrame:[windowbounds] ?? pixelFormat:kEAGLColorFormatRGB565 ?? depthFormat:0 ]; // 并將EAGLView綁定到導演的openGLView屬性 [[CCDirectorsharedDirector] setOpenGLView:glView]; // 設置橫屏 [[CCDirectorsharedDirector]setDeviceOrientation:CCDeviceOrientationLandscapeLeft]; [windowaddSubview:glView]; // 顯示主窗口 [windowmakeKeyAndVisible]; [CCTexture2DsetDefaultAlphaPixelFormat:kCCTexture2DPixelFormat_RGBA8888]; // 創建一個空的場景 CCScene *scene = [CCScenenode]; // 創建層:HelloAction CCLayer *layer = [HelloActionnode]; // 將層加到場景中 [scene addChild:layer]; // 第一個場景:主場景 [[CCDirectorsharedDirector] runWithScene: scene]; } - (void) dealloc { [windowrelease]; [superdealloc]; } ~~~ 3、修改main.h 找到文件中如下語句,并修改為: ~~~ int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate"); ~~~ 運行程序,可以看到當主場景載入后,“Hello Action”標簽漸漸變大,而sprite在屏幕上來回蹦跳并旋轉行進: ![](https://box.kancloud.cn/2016-05-04_572a0b92b688c.gif) ? ? ? ? ?
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看