A. 目前市面是用cocos2d-x開發的多還是用cocos2d-iphone開發的多
1. cocos2d-x是中國人自己搞的? YES。不僅如此,我們已經僱傭了cocos2d-iphone作者Ricardo Quesada一起搞。在程序員的世界裡面,沒有中國人、美國人、阿根廷人的概念,只有C++程序員,Java程序員,Lua程序員的概念。技術無國界。
2. 國外用得不多嗎?可能是早期情況。截止2014年7月的情況是,日本的《怪物彈珠》基於 cocos2d-x, 問鼎過日本付費總榜第一,萬代南夢宮的正版《夢想海賊王》《J OJO奇妙大冒險》都是基於cocos2d-x開發。我們統計出來全球google play前1400名有17.5%是基於cocos2d-x引擎開發。AppStore美國付費總榜第前5名的Big Fish Casino也是基於cocos2d-x的。樓上說得對,野心不小。我的野心就做是一個世界級的產品,對社會和行業有價值。
B. 如何使用cocos2d
cocos2d是一個非常強大的開源庫,它可以為你開發iphone上面的游戲節省大量的時間。目前支持精靈(sprite)、動畫、物理引擎、聲音引擎以及許許多多非常酷的圖像效果等等。
我也是剛開始學習cocos2d,目前已經有許多非常好的教程來教你如何使用cocos2d了。但是,那些都不是我想要的。我真正想要的是一個非常簡單,但是可以跑起來的游戲。這個游戲包括怎麼使用動畫、碰撞檢測和播放聲音,這就夠了,並不需要使用太多高級的特性。最終,我自己做了一個這樣的游戲,因此,基於我的一些經驗寫了這篇教程,希望會對初學者有所幫助。
這篇教程將會從頭至尾、一步一步地教你如何使用cocos2d來製作一個簡單的iphone游戲。你可以按照教程一步步來,或者乾脆直接跳到文章的最後,下載樣常式序。沒錯!游戲裡面有忍者。
下載並安裝cocos2d
你可以從下面的鏈接來下載cocos2d的最新版本(以前是google,現在採用git了) the Cocos2D Google Code page.
在你下載完代碼以後,你可能想安裝非常有用的項目模板。打開終端窗口,然後cd到你的cocos2d解壓縮目錄下面,輸入./install_template.sh
請注意,你可以傳遞一些參數給這個安裝腳本,比如你把xcode安裝在了一個非標準的目錄下面。(或者你有多個版本的sdk安裝在你的機器上面)
Hello, Cocos2D!
讓我們從最簡單的HelloWorld項目開始吧!啟動xcode,點file->new project,然後選擇cocos2dApplicationtemplate來創建一個新的cocos2d項目並把它命名為「Cocos2dSimpleGame」
繼續,點編譯並運行這個工程模板,如何一切都ok的話,那麼你會看到下面的內容:
cocos2d是按照「場景」(scene)的概念組織的,對一個游戲來說,就好像某個關卡或者屏幕之類的。比如,你可能需要一個場景來為你的游戲建立初使化菜單界面,另外一個場景當作玩游戲的主要界面,還有一個游戲結束的時候的界面。在一個場景裡面,你可以有許多「層」(layer)(這個和photoshop有點類似)。每一個層又可以包含一些結點,比如精靈、標簽、菜單等。而且一個結點也可以包含其它的結點。(比如,一個精靈可以包含一個子精靈)
如果你看一下樣例工程,你會看到只有一個場景HelloWorldScene--我們接下來將會在這個場景裡面實現我們的游戲邏輯。繼續打開它,你會在init方法裡面看到,它把一個帶有「HelloWorld」字樣的標簽加到了當前場景中。我們將把這些代碼去掉,並且放一個精靈在上面。
增加一個精靈
在我們增加一個精靈之前,我們需要一些圖片。你可以自己去創建一些,或者使用我可愛的妻子為這個項目所創建的圖片: a Player image, a Projectile image, and a Target image.
一旦你獲得了這些圖片,你就可以把它們用滑鼠拖到xcode的resource文件夾中去,並且保證「 Copy items into destination group』s folder (if needed)」勾上了。現在,我們擁有自己的圖片了,我們先得計算一下,應該把player放在哪裡。請注意,cocos2d坐標系的原點在屏幕的左下角,即(0,0)位置在左下角,這與一般的窗口坐標系統在左上角有所區別。x方嚮往右是正,y方嚮往上是正。由於項目是landscape(橫版)模式,這就意味著右上角的坐標是(480,320)。
還有需要注意的是,當我們設置一個對象的位置的時候,這個位置是相對於所加精靈的中心點來加的。因此,如果我們想讓我們的player精靈與屏幕的左邊界水平對齊,並且垂直居中的話。
那麼對於x軸:我們需要設置為[player sprite's width]/2。y坐標設置為[window height]/2。
下面有一張圖,可以更加清楚一些:
好,讓他開始射擊吧!打開Class文件夾並點擊HelloWorldScene.m,然後把init方法用下面的代碼替換掉:
復制代碼
-(id) init
{
if( (self=[super init] )) {
CGSize winSize = [[CCDirector sharedDirector] winSize];
CCSprite *player = [CCSp www.hbbz08.com rite spriteWithFile:@"Player.png"
rect:CGRectMake(0, 0, 27, 40)];
player.position = ccp(player.contentSize.width/2, winSize.height/2);
[self addChild:player];
}
return self;
}
復制代碼
編譯並運行,你的精靈這時候應該出現在正確的位置上了。但是,這個前景默認是黑的。對於這張忍者圖片來說,白色的背景可能看起來更好一些。在cocos2d裡面,有一種非常簡單的方式來改變層的背景顏色,那就是使用CCColoredLayer類。好,跟我來吧!點擊HelloWorldScene.h,然後把HelloWorld介面聲明改成下面這樣:
@interface HelloWorld : CCColorLayer
然後點擊HelloWorldScene.m文件,在init方法裡面做一些小小的修改,以便使我們能把層的背景顏色改成白的:
C. 使用cocos2D游戲引擎開發游戲開發語言哪個好
如果讓我個人現在給個建議,我會傾向於推薦c++和lua方案。js方案有四個硬傷
1. SpiderMonkey這個庫體積太大了
2. js性能始終還是追不上lua
3. 雖然微軟工程師很努力,但是SpiderMonkey至今(2014-07-16)還是無法運行在wp8上。也就是說你用js寫的 cocos2d-x游戲無法運行在wp8上,但lua游戲可以。
4. 最重要的:html5市場並沒有如願地起色
如果沒有html5市場,那麼jsb也就有點多餘了。2014年我們的重點也轉向市場廣泛認可並且證明過的lua了,其次是jsb,再次是html5。
D. 在用cocos2d寫游戲的時候C++是怎麼被使用的
直接使用C++來編寫cocos2d游戲.
使用C++調用lua.js我不了解.lua的話是通過自己的一個庫文件實現的,有lua.h等一系列文件,是lua的開發者為了和C++混合編程而實現的.在C++可以使用一個叫luaStack的東西,在內部以棧的方式保存lua中的函數,table,元表...等變數.
用lua調用C++.可以使用cocos2d引擎開發者製作的tolua工具來實現,將C++函數binding在lua上,然後調用對應的函數名來進行操作.
E. 製作普通的應用(非游戲)適不適合使用cocos2d-x ,會不會導致開發效率低下。
cocos2d-x只是游戲框架,你是沒有找到更好的更適合你的跨平台引擎而選擇了它,即使還有PhoneGap、Unity等等。
它提供了很少的控制項,開發效率我不認為比兩種分別開發效率高到哪去,不計算學習成本。
我覺得你招兩個熟悉cocos2d-x開發的工程師比招一個安卓,一個iOS工程師成本高。
個人意見
F. 使用cocos2d-x編寫android游戲必須要回c++
cocos2d-x本身就是C++寫的啊,所以必須要會c++,在windows平台用cocos2d-x編寫android游戲首先用visual stdio編寫cocos2d-x游戲,然後運行成功以後,然後再用eclipse添加這個生成好的程序框架。這樣就可以生成android游戲了。
G. 用cocos2dx開發的游戲可以申請軟體著作權嗎
應該可以,只要你是原創的游戲應該就行
H. android 開發怎麼能使用cocos2d
下載cocos2d-x 3.0引擎
用戶可以登陸cocos2d-x 官方網站下載最新版的cocos2d-x。點擊導航欄的「Download」(下載)後你會看到如下下載頁面:
在本指南中,將會以目前最新版本的cocos2d-x 3.beta2引擎為例。
(注意:如果你想要下載舊版的cocos2d-x,可點擊「looking for an old versoin?」鏈接。但本人強烈推薦使用最新版本的cocos2d-x,新版引擎有很多新功能,修復了舊版的很多問題。)
右鍵單擊「Download」鏈接選擇「save link as…」(將鏈接保存為…),然後將壓縮文件保存至適當的位置。本機保存位置為 D:\Cocos2d-x\cocos2d-x 3.beta2。
(注意:請不要將cocos2d-x文件夾放置c:\下,因為會導致很多優先順序別(privilege)相關的問題。可嘗試將該文件夾放到其他盤如D:\及E:\等等。)
打開 「D:\Cocos2d-x\cocos2d-x 3.beta2\build」目錄,如下所示:
雙擊「cocos2d-win32.vs2012.sln」文件,然後會自動啟動Visual Studio 2012/2013。
現在你便可以將HelloCpp項目當作默認啟動項目來編譯,按CTRL-F5運行樣本程序。如果編譯沒有什麼錯誤,同時運行成功的話,你會看到如下畫面。
祝賀你!你已成功在Windows 7平台中運行cocos2d-x引擎。接下里介紹如何配置Android開發環境。
安裝配置JAVA JDK
因為我們是針對Android開發,所以我們需要安裝的第一個軟體包絕對是JDK。如果你用的是64位的Windows 7,那應該下載以下版本軟體64 bit JDK for windows 64bit,
下載完成之後,雙擊exe文件安裝JDK,注意最好不要將其安裝在有空格或者中文文件夾下,其他無限制,注意記下其安裝路徑,本機安裝路徑為:D:\Program Files\Java\jdk1.7.0_51\
配置環境變數:
新建環境變數:JAVA_HOME 值為:D:\Program Files\Java\jdk1.7.0
新建環境變數:CLASSPATH 值為:.;%JAVA_HOME%\lib;(注意:點號表示當前目錄,不能省略)
在系統變數Path的值的前面加入以下內容:%JAVA_HOME%\bin;(注意:這里的分號不能省略)到這里,JDK安裝完畢。
單擊「開始」—>「運行」—>輸入:cmd命令,在CMD窗口中輸入:java -version
出現如下界面,就表示安裝成功:
配置Android SDK環境
下載Android SDK下載之後解壓,並將其放置於你要放置的目錄下,在 「..\adt-bundle-windows-x86_64-20131030\eclipse」 文件夾中會有一個eclipse.exe程序,本機在桌面上創建了該程序的快捷方式。
現在就可以雙擊桌面的快捷方式啟動Eclipse,同時會出現一個即時對話框,要求設置默認工作區(workspace)。選擇「OK」接受默認設置即可。
配置環境變數:
新建環境變數:ANDROID_SDK 值為:D:\TDDownload\android\adt-bundle-windows-x86_64-20131030\sdk\platforms\;D:\TDDownload\android\adt-bundle-windows-x86_64-20131030\sdk\tools\;D:\TDDownload\android\adt-bundle-windows-x86_64-20131030\sdk\platform-tools(D:\TDDownload\android是SDK存放的位置)。
在系統變數Path的值的前面加入以下內容:%ANDROID_SDK%
單擊「開始」—>「運行」—>輸入:cmd命令,在CMD窗口中輸入:adb -h 檢驗是否安裝成功。
在「..\adt-bundle-windows-x86_64-20131030\sdk」 目錄下有兩個可執行程序,「AVD Manager.exe」和「SDK Manager.exe」,可直接通過它們創建管理AVD,SDK。
安裝NDK
安裝完Android SDK之後,還要安裝「Android NDK」軟體包,下載完成之後,解壓,並將其放置到相應路徑,本機路徑為 D:\android-ndk-r9,設置另一個名為「NDK_ROOT」同時指向存放路徑的環境變數。
Android NDK包含build、docs、samples、sources、GNUmakefile、ndk-build、ndk-gdb及readme等內容。
創建Cocos2d-x項目
將剛才下載的cocos2d-x-3.0beta2壓縮包解壓到你指定的文件夾里。
進入到目錄 cocos2d-x-3.0beta2\tools\project-creator,打開終端運行**create_project.py**腳本創建文件,此版本項目創建腳本支持圖形界面方式創建項目,執行以上腳本後會出現圖形界面:
填寫項目名稱,包名稱以及項目路徑後選擇開發語言,即可點擊**create**按鈕開始創建項目:
生成Android項目文件
在新建項目test項目中,執行proj.android下的*build_native.py*腳本進行編譯。
等待它編譯成功!
導入Android項目
最後便可啟動Eclipse然後導入Android項目了。操作步驟如下:
右鍵點擊「Package Explorer」並選擇「Import…」
當出現對話框時,選擇「Exsiting Android project into workspace」(將現有Android項目導入工作區)。
按照上面的方法導入到Eclipse裡面。將您的手機設置成調試模式並用USB線連接到電腦, 在Eclipse中運行test, 然後就能在手機上看到已經運行的HelloWorld了!
I. 用Cocos2D游戲引擎開發普通應用可以嗎
當然也是可以的啦。
因為自帶網路的API,可以從網路獲取數據。然後解析後循環生成界面和點擊事件就好了。
J. 如何使用Cocos2d-x開發游戲
首先,先確定游戲策劃案。確定策劃案則確定了游戲的規模和所需要的模塊。而所需要的模塊則帶來對於數據的需求,數據的需求則引出配置文件以及編輯工具的需求。
然後,確定所使用到的工具以及要開發的工具。通常來說,一個2D的RPG或ARPG類型的游戲會可能用到的工具主要有以下幾種,它們按照使用的順序應該是:
(1)圖元素管理器:負責圖片的編輯,生成塊切割數據。
(2)動畫編輯器:負責圖元素的導入,生成動畫。保存動畫數據。
(3)特效編輯器:負責圖元素與動畫的導入,生成各種粒子特效。保存特效數據。
(4)NPC編輯器:負責動畫導入生成NPC動作,編輯NPC的位置錨點。動作中的事件或人物腳本。如果需要也可以在這里導入特效編輯技能。保存NPC相關數據。
(5)界面編輯器: 負責使用圖元素和動畫,特效進行界面的布局編輯與事件腳本函數。並將數據保存
(6)場景編輯器:負責生成橫縱向或45度視角格子地圖。並使用圖元素或特效進行場景的背景,地表,建築等層編輯。還有將NPC布置在相應位置。
「公欲善其事,必先利其器」。以上六種工具是成熟的開發團隊所要必備的。對於一般個人開發的規模較小的游戲,這些工具並不是必須的。可以省略或使用一些網路上公開的工具。而要開發規模稍大點的游戲,如RPG類型的游戲,所需要的工具通常要自已進行有針對性的開發。而且不僅限於這些工具。
當你具備了你需要的編輯工具之後,你需要將它們交付給美術人員使用。美術人員將做好的圖片由圖元素管理器進行切割。在動畫編輯器里製做相應的動畫。在特效編輯器里編輯出需要的特效。在NPC編輯器中創建出具有多個動畫動作的多方向的NPC,編輯NPC的位置錨點。並跟據策劃案確定所需要界面。使用界面編輯器編輯好它們的布局。同時根據策劃案的關卡在場景編輯器里編輯出場景。
美術人員在開動的同時。程序需要進行游戲框架和所需要的類,功能函數的設計。編寫出一個可以運行的邏輯框架。
然後,將各個工具導出的數據文件載入入框架。使它們顯示出正確的場景,NPC,特效。
最後,調試測試程序。修改BUG。完成WINDOWS版本的游戲。