資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
* 為什麼需要時間調度
* schedule() 方法的使用
this.schedule("func", 1)
// delta 往往用來表示增量,在當前的例子當中,該變量的值為上次調用 fun 函數與這次調用 fun 函數之間的時間差
public void fun(float delta) {
System.out.println("調用的 fun 函數, delta 的值為 " + delta);
}
* delta 參數的作用
** delta 為上次和這次執行函數 func 的時間差
* unschedule() 方法的使用
this.unschedule("func")
* 總結
Showing posts with label cocos2d. Show all posts
Showing posts with label cocos2d. Show all posts
Sunday, May 17, 2015
Saturday, May 16, 2015
cocos2d android Java 游戲開發基礎 9 - 觸屏事件 學習視頻筆記
資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
* Android 平台觸摸事件回顧
* 設置圖層接收觸摸事件
** this.setIsTouchEnabled(true)
* 觸摸回調函數
** ccTouchesBegan(), ccTouchesMoved(), ccTouchesEnded()
* 觸摸點坐標轉換
** CCDirector.sharedDirector().convertToGL(CGPoint)
* 總結
* Android 平台觸摸事件回顧
* 設置圖層接收觸摸事件
** this.setIsTouchEnabled(true)
* 觸摸回調函數
** ccTouchesBegan(), ccTouchesMoved(), ccTouchesEnded()
* 觸摸點坐標轉換
** CCDirector.sharedDirector().convertToGL(CGPoint)
* 總結
cocos2d android Java 游戲開發基礎 8 - CCAction 初步 (四)學習視頻筆記
資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
* CCFadeIn 與 CCFadeOut
CCFadeIn ccFadeIn = CCFadeIn.action(3);
player.runAction(ccFadeIn);
CCFadeOut ccFadeOut = CCFadeOut.action(3);
player.runAction(ccFadeOut);
* CCTintTo 與 CCTintBy
ccColor3B color3b = ccColor3B.ccc3(0, 0, 255);
CCTintTo ccTintTo = CCTintTo.action(3, color3b);
player.runAction(ccTintTo);
ccColor3B color3b = ccColor3B.ccc3(-120, -255, -120);
CCTintBy ccTintBy = CCTintBy.action(3, color3b);
player.runAction(ccTintBy);
* CCRepeat
CGPoint cgPoint = CGPoint.ccp(100, 300);
CGPoint targetPoint = CGPoint.ccp(400, 300);
CCMoveTo moveTo1 = CCMoveTo.action(2, targetPoint);
CCMoveTo moveTo2 = CCMoveTo.action(2, cgPoint);
CCSequence ccSequence = CCSequence.actions(moveTo1, moveTo2);
CCRepeat ccRepeat = CCRepeat.action(ccSequence, 3);
player.runAction(ccRepeat);
* CCRepeatForever
CCRepeatForever ccRepeatForever = CCRepeatForever.action(ccSequence);
player.runAction(ccRepeatForever);
* CCFadeIn 與 CCFadeOut
CCFadeIn ccFadeIn = CCFadeIn.action(3);
player.runAction(ccFadeIn);
CCFadeOut ccFadeOut = CCFadeOut.action(3);
player.runAction(ccFadeOut);
* CCTintTo 與 CCTintBy
ccColor3B color3b = ccColor3B.ccc3(0, 0, 255);
CCTintTo ccTintTo = CCTintTo.action(3, color3b);
player.runAction(ccTintTo);
ccColor3B color3b = ccColor3B.ccc3(-120, -255, -120);
CCTintBy ccTintBy = CCTintBy.action(3, color3b);
player.runAction(ccTintBy);
* CCRepeat
CGPoint cgPoint = CGPoint.ccp(100, 300);
CGPoint targetPoint = CGPoint.ccp(400, 300);
CCMoveTo moveTo1 = CCMoveTo.action(2, targetPoint);
CCMoveTo moveTo2 = CCMoveTo.action(2, cgPoint);
CCSequence ccSequence = CCSequence.actions(moveTo1, moveTo2);
CCRepeat ccRepeat = CCRepeat.action(ccSequence, 3);
player.runAction(ccRepeat);
* CCRepeatForever
CCRepeatForever ccRepeatForever = CCRepeatForever.action(ccSequence);
player.runAction(ccRepeatForever);
Thursday, May 14, 2015
cocos2d android Java 游戲開發基礎 7 - CCAction 初步 (三) 學習視頻筆記
資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
* CCSequence 的使用方法
** 一連串的動作依序執行
CGPoint targetPoint = CGPoint.ccp(500, 500);
CCMoveTo moveTo = CCMoveTo.action(5, targetPoint);
CCRotateTo rotateTo = CCRotateTo.action(5, 180);
CCScaleTo scaleTo = CCScaleTo.action(2, 2);
CCSequence ccSequence = CCSequence.actions(moveTo, rotateTo, scaleTo);
player.runAction(ccSequence);
* CCSpawn 的使用方法
** 一連串的動作同時間執行
CCSpawn ccSpawn = CCSpawn.actions(moveTo, rotateTo, scaleTo);
player.runAction(ccSpawn);
* CCCallfuncN 的使用方法
** 用於一個動作作完後所要執行的動作
CCCallFuncN funcN = CCCallFuncN.action(this, "onActionFinished");
player.runAction(funcN);
* CCFollow 的使用方法
CCFollow ccFollow = CCFollow.action(followedNode, rect);
player.runAction(ccFollow);
* 總結
* CCSequence 的使用方法
** 一連串的動作依序執行
CGPoint targetPoint = CGPoint.ccp(500, 500);
CCMoveTo moveTo = CCMoveTo.action(5, targetPoint);
CCRotateTo rotateTo = CCRotateTo.action(5, 180);
CCScaleTo scaleTo = CCScaleTo.action(2, 2);
CCSequence ccSequence = CCSequence.actions(moveTo, rotateTo, scaleTo);
player.runAction(ccSequence);
* CCSpawn 的使用方法
** 一連串的動作同時間執行
CCSpawn ccSpawn = CCSpawn.actions(moveTo, rotateTo, scaleTo);
player.runAction(ccSpawn);
* CCCallfuncN 的使用方法
** 用於一個動作作完後所要執行的動作
CCCallFuncN funcN = CCCallFuncN.action(this, "onActionFinished");
player.runAction(funcN);
* CCFollow 的使用方法
CCFollow ccFollow = CCFollow.action(followedNode, rect);
player.runAction(ccFollow);
* 總結
cocos2d android Java 游戲開發基礎 6 - CCAction 初步 (二) 學習視頻筆記
資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
* 什麼是向量
* 基于向量的計算
** 向量的加減法
CGPoint deltaPoint = CGPoint.ccp(0, 200);
CGPoint targetPoint = CGPoint.ccpAdd(cgPoint, deltaPoint);
CGPoint subPoint = CGPoint.ccp(200, 300);
CGPoint tgPoint = CGPoint.ccpSub(targetPoint, subPoint);
** 向量的乘除法
CGPoint newPoint = CGPoint.ccpMult(tgPoint, 2);
** 計算單位向量
* 使用 CGPoint 對象代表向量
CGPoint anotherPoint = CGPoint.ccpNormalize(tgPoint);
* 基于向量的運算
* CCMoveBy 與 CCJumpBy
CGPoint onePoint = CGPoint.ccp(500, 300);
CCMoveBy moveBy = CCMoveBy.action(5, onePoint);
CGPoint jumpPoint = CGPoint.ccp(300, 100);
CCJumpBy jumpBy = CCJumpBy.action(5, deltaPoint, 500, 5);
* 總結
* 什麼是向量
* 基于向量的計算
** 向量的加減法
CGPoint deltaPoint = CGPoint.ccp(0, 200);
CGPoint targetPoint = CGPoint.ccpAdd(cgPoint, deltaPoint);
CGPoint subPoint = CGPoint.ccp(200, 300);
CGPoint tgPoint = CGPoint.ccpSub(targetPoint, subPoint);
** 向量的乘除法
CGPoint newPoint = CGPoint.ccpMult(tgPoint, 2);
** 計算單位向量
* 使用 CGPoint 對象代表向量
CGPoint anotherPoint = CGPoint.ccpNormalize(tgPoint);
* 基于向量的運算
* CCMoveBy 與 CCJumpBy
CGPoint onePoint = CGPoint.ccp(500, 300);
CCMoveBy moveBy = CCMoveBy.action(5, onePoint);
CGPoint jumpPoint = CGPoint.ccp(300, 100);
CCJumpBy jumpBy = CCJumpBy.action(5, deltaPoint, 500, 5);
* 總結
Tuesday, May 12, 2015
cocos2d android Java 游戲開發基礎 5 - CCAction 初步 (一) 學習視頻筆記
資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
* 動作類的基本概念
** 動作類對象通常不會單獨存在
** 動作類對象需要作用在精靈,圖層等對象上才能發揮作用
** 動作類包含有很多種類型,例如位移,縮放和旋轉等
* 動作類的分類方法
** CCAction -- CCFiniteTimeAction -- CCActionInstant
** | |- CCActionInterval
** |- CCFollow
** |- CCSpeed
* 基礎瞬時動作使用方法 - CCActionInstant
** 動作 描述
** CCFlipX X軸鏡像翻轉
** CCFlipY Y軸鏡像翻轉
** CCHide 隱藏
** CCShow 顯示
* 基礎延時動作使用方法 - CCActionInterval
** 動作 描述
** CCMoveTo 移動至目標
** CCRotateTo 旋轉至指定的角度
** CCScaleTo 縮放至指定的倍數
** CCBlink 閃爍
* 總結
* 動作類的基本概念
** 動作類對象通常不會單獨存在
** 動作類對象需要作用在精靈,圖層等對象上才能發揮作用
** 動作類包含有很多種類型,例如位移,縮放和旋轉等
* 動作類的分類方法
** CCAction -- CCFiniteTimeAction -- CCActionInstant
** | |- CCActionInterval
** |- CCFollow
** |- CCSpeed
* 基礎瞬時動作使用方法 - CCActionInstant
** 動作 描述
** CCFlipX X軸鏡像翻轉
** CCFlipY Y軸鏡像翻轉
** CCHide 隱藏
** CCShow 顯示
* 基礎延時動作使用方法 - CCActionInterval
** 動作 描述
** CCMoveTo 移動至目標
** CCRotateTo 旋轉至指定的角度
** CCScaleTo 縮放至指定的倍數
** CCBlink 閃爍
* 總結
cocos2d android Java 游戲開發基礎 4 - 精靈初體驗 學習視頻筆記
資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
* 什麼是精靈
** 精靈是游戲中的一個元素,通常用於代表畫面當中的一個事物,例如主人公,NPC 和背景元素等等
** 一個精靈對象通常都與一張圖片關聯
** 精靈對象通常可以通過運行動作對象 (CCAction) 來產生動畫效果
** 如何生成一個精靈對象
CCSprite player;
player = CCSprite.sprite("player.png");
** 讓精靈對象添加至布景層當中
this.addChild(player);
** 運行動作對象 (CCAction)
CGPoint target = CGPoint.ccp(400, 100); // 設定目標座標
CCJumpTo jumpTo = CCJumpTo.action(3, target, 200, 3); //設定 JumpTo(CCAction) 參數說明 (執行3秒, 跳到 target 座標, 跳動高度, 跳動次數)
player.runAction(jumpTo);
** 總結
* 什麼是精靈
** 精靈是游戲中的一個元素,通常用於代表畫面當中的一個事物,例如主人公,NPC 和背景元素等等
** 一個精靈對象通常都與一張圖片關聯
** 精靈對象通常可以通過運行動作對象 (CCAction) 來產生動畫效果
** 如何生成一個精靈對象
CCSprite player;
player = CCSprite.sprite("player.png");
** 讓精靈對象添加至布景層當中
this.addChild(player);
** 運行動作對象 (CCAction)
CGPoint target = CGPoint.ccp(400, 100); // 設定目標座標
CCJumpTo jumpTo = CCJumpTo.action(3, target, 200, 3); //設定 JumpTo(CCAction) 參數說明 (執行3秒, 跳到 target 座標, 跳動高度, 跳動次數)
player.runAction(jumpTo);
** 總結
cocos2d android Java 遊戲開發基礎 3 - Cocos2d 創世紀 學習視頻筆記
資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
*創建第一個 Cocos2d 應用程序
** 創建一個 Android 應用程序
** 生成一個 SurfaceView 對象,作為 Activity 當中所顯示的內容
view = new CCGLSurfaceView(this);
** 得到 CCDirector 對象,並通過該對象設置應用程序的各種屬性
CCDirector director = CCDirector.sharedDirector();
** 設置應用程序基本屬性
*** 用於設置應用程序所使用的 GL 視圖對象
director.attachInView(mGLSurfaceView)
*** 用於設置應用程序的方向
director.setDeviceOrientation(CCDirector.kCCDeviceOrientationLandscapeLeft);
*** 設置應用程序是否需要顯示應用程序的 FPS 值
director.setDisplayFPS(true);
*** 設置每幀所需要的時間
director.setAnimationInterval(1.0f / 30)
** 生成場景與布景層
*** 創建一個布景層類,繼承 CCLayer
public class GameLayer extends CCLayer {
public GameLayer() {
}
}
*** 調用 CCScene 類的 node() 方法生成場景對象
CCScene scene = CCScene.node();
*** 生成布景層對象,並添加至場景對象當中
GameLayer gameLayer = new GameLayer();
scene.addChild(gameLayer);
*** 執行場景對象
director.runWithScene(scene);
** 運行 Cocos2d 應用程序
** 總結
*創建第一個 Cocos2d 應用程序
** 創建一個 Android 應用程序
** 生成一個 SurfaceView 對象,作為 Activity 當中所顯示的內容
view = new CCGLSurfaceView(this);
** 得到 CCDirector 對象,並通過該對象設置應用程序的各種屬性
CCDirector director = CCDirector.sharedDirector();
** 設置應用程序基本屬性
*** 用於設置應用程序所使用的 GL 視圖對象
director.attachInView(mGLSurfaceView)
*** 用於設置應用程序的方向
director.setDeviceOrientation(CCDirector.kCCDeviceOrientationLandscapeLeft);
*** 設置應用程序是否需要顯示應用程序的 FPS 值
director.setDisplayFPS(true);
*** 設置每幀所需要的時間
director.setAnimationInterval(1.0f / 30)
** 生成場景與布景層
*** 創建一個布景層類,繼承 CCLayer
public class GameLayer extends CCLayer {
public GameLayer() {
}
}
*** 調用 CCScene 類的 node() 方法生成場景對象
CCScene scene = CCScene.node();
*** 生成布景層對象,並添加至場景對象當中
GameLayer gameLayer = new GameLayer();
scene.addChild(gameLayer);
*** 執行場景對象
director.runWithScene(scene);
** 運行 Cocos2d 應用程序
** 總結
cocos2d android Java 遊戲開發基礎 2 - 安裝 學習視頻筆記
資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
抓包來安裝:到 github 找 cocos2d android, 抓 ZhouWeikuan 的 zip 檔下來套用到 Android 已存在項目.
修改 library 和把重覆的類改名後,即可編譯。
抓包來安裝:到 github 找 cocos2d android, 抓 ZhouWeikuan 的 zip 檔下來套用到 Android 已存在項目.
修改 library 和把重覆的類改名後,即可編譯。
cocos2d android Java 遊戲開發基礎1 - 介紹 學習視頻筆記
資料來源: 千鋒獨家出品《Android遊戲開發基礎視頻教程》http://www.mobiletrain.org/about/news/android_video3.html
導演--場景1--布景層1 -- 精靈1
| | |
| | |-- 精靈2
| |-- 布景層2 |-- 精靈3
|-- 場景2 |-- 布景層3 |-- 精靈4
|
- 精靈5
CCDirector: 導演類
CCScene: 場景類
CCLayer: 布景層
CCSprite: 精靈
導演--場景1--布景層1 -- 精靈1
| | |
| | |-- 精靈2
| |-- 布景層2 |-- 精靈3
|-- 場景2 |-- 布景層3 |-- 精靈4
|
- 精靈5
CCDirector: 導演類
CCScene: 場景類
CCLayer: 布景層
CCSprite: 精靈
Subscribe to:
Posts (Atom)