⑴ cocos2dx怎麼用
Cocos2d-x是一個開源的移動2D游戲框架,MIT許可證下發布的。這是一個C++ Cocos2d-iPhone項目的版本。Cocos2d-X發展的重點是圍繞Cocos2d跨平台,Cocos2d-x提供的框架。
手機游戲,可以寫在C++或者Lua中,使用API是Cocos2d-iPhone完全兼容。Cocos2d-x項目可以很容易地建立和運行在iOS,Android,黑莓Blackberry等操作系統中。Cocos2d-x還支持Windows、Mac和Linux等桌面操作系統,因此,開發者編寫的源代碼很容易在桌面操作系統中編輯和調試。
cocos2d-x主要功能:
流程式控制制(Flow control):非常容易地管理不同場景(scenes)之間的流程式控制制。
精靈(Sprites):快速而方便的精靈。
動作(Actions):告訴精靈們該做什麼。可組合的動作如移動(move)、旋轉(rotate)和縮放(scale)等更多。
特效(Effects):特效包括波浪(waves)、旋轉(twirl)和透鏡(lens)等更多。
平面地圖(Tiled Maps):支持包括矩形和六邊形平面地圖。
轉換(Transitions):從一個場景移動到另外一個不同風格的場景。
菜單(Menus):創建內部菜單。
文本渲染(Text Rendering):支持標簽和HTML標簽動作。
文檔(Documents):編程指南 + API參考 + 視頻教學 + 很多教你如何使用的簡單測試例子。
BSD許可:盡管用就是了。
基於Pyglet:沒有外部的依賴。
基於OpenGL:支持硬體加速。
cocos2d-x基本介紹:
Cocos2d-x是MIT許可證下發布的開源游戲引擎,游戲開發快速、簡易、功能強大。2015年2月,觸控科技正式推出了游戲開發一站式解決方案cocos,將Cocos 2d-x、Cocos Studio、Cocos Code IDE等框架及工具整合在一起。
Cocos2d-x核心優勢在於允許開發人員利用C++、Lua及Javascript來進行跨平台部署,覆蓋平台包括iOS、Android、Windows Phone、Windows, Mac OSX 3及Tizen等等,省事省力省成本。
Cocos2d-x用戶不僅包括個人開發者和游戲開發愛好者,還包括許多知名大公司如Zynga、Wooga、Gamevil、Glu、GREE、Konami、TinyCo、HandyGames、IGG及Disney Mobile等。截止2013年9月,全球基於Cocos2d-x引擎的游戲下載量高達逾15億,其中許多還占據蘋果應用商店(AppStore)和谷歌應用商店(Google Play)排行榜。同時許多公司如觸控、谷歌、微軟、ARM、英特爾的工程師在Cocos2d-x領域也非常活躍。
另外,Cocos2d-x版本升級困難的問題,是許多開發者的一大苦惱,而經過整合的cocos,解決了Cocos2d-x的這一問題。升級cocos,其相匹配的Cocos2d-x也將自動進行升級,這極大的提高了開發效率,為開發者們帶來便利,同時也為Cocos2d-x的進一步發展打下基礎。
cocos2d-x特點:
易於使用:游戲開發者可以把關注焦點放在游戲設置本身,而不必消耗大量時間學習晦澀難懂的OpenGL ES,此外,Cocos2d-x還提供了大量的規范。
高效:Cocos2d-x基於OpenGL ES進行圖形渲染,從而讓移動設備的GPU性能發揮到極致。
靈活:方便擴展,易於集成第三方庫。
免費:基於MIT協議的免費開源框架,用戶可以放心使用,不用擔心商業授權的問題。
社區支持:關心Cocos2d-x開發者自發建立了多個社區組織,可以方便查閱各類技術資料
⑵ 自學cocos2d js游戲開發應該按什麼步驟進行
跟你簡要說一下我的自學路,以免你走彎路
背景:
有工作,而且很忙;在不影響工作基礎上用業余時間鼓搗(經常會因為工作耽擱學習進度);基本沒技術背景(初中qbasic、高中pascal半吊子),大學文科,工作也不是搞代碼。因此我感覺我的自學路跟你還是挺契合的。
1
兩年前的一天,決定要做獨立游戲製作人。選定引擎cocos2d,開始學習objective-c語言;(如果你打算只在iOS平台開發可以學obj-c配合cocos2d或者sprite kit;如果打算跨平台就要用cocos2d-x和c++了;當然unity什麼的也不錯但是我還沒嘗試過,一直很嚮往)
2
我跳過了iOS程序開發(似懂非懂看完了斯坦福那一系列的教學視頻),結合當時情況直接選擇了cocos2d引擎,這時開始接觸 @吳一刀 推薦的博客;我主要看的是子龍山人<子龍山人 - 博客園>、Ray Wenderlich<Ray Wenderlich>、Himi<黑米GameDev街區>這些博客里最基本的例子,知易那個以我當時的水平還看不懂。
3
嘗試開始設計自己的簡單游戲,我做打地鼠!當然比教學例子里的打地鼠復雜多了
4
這個過程中發現自己懂的實在是不夠,所以又開啃這本書:Learn cocos2d 2 by Steffen Itterheim & Andreas Low
5
慢慢的發現需要一些趁手的工具和編輯器,並發展出一套自己構建於cocos2d之上的游戲設計架構。我目前的情況是這樣:
關卡編輯我使用plist文件配合自己寫的類;
sprite sheet使用TexturePacker<TexturePacker>;
動畫/UI編輯最初自己手寫太累,後來選擇了cocosbuilder,請注意現在這個軟體已經停止維護,轉而引導用戶使用SpriteBuilder<SpriteBuilder>(域名都做了自動跳轉;SpriteBuilder我木有研究過,建議你研究一下)。
粒子編輯我自己還沒實際用到,如果真正需要我感覺cocosbuilder的夠我用的。//更新:後來用到了ParticleDesigner和cocosbuilder兩個軟體的粒子編輯混搭
我當時遇到的一個大麻煩是如何讓cocosbuilder、cocos2d版本互相兼容且cocosbuilder無問題。大概情況是這樣:cocosbuilder2.1和cocos2d-iphone2.0及2.1版本都不協調怎麼辦?;What version of Cocosbuilder and Cocos2d-iphone should I choose?
目前我使用的cocosbuilder 2.1版本(漸變層有bug、並且很可惜動畫播放完沒有觸發消息的機制,我只好把每個動畫時長都手動記錄一下自己處理)
======3月12日更新======
在 @GarfieldKwong 指點下發現這個版本動畫播放完是可以觸發消息機制的,更高級版本3.x支持的效果應該是在動畫中就加入callback的關鍵幀
新技能get√
具體代碼可見下面學習案例的第一個例子里Explosion部分
=====================
cocosbuider的學習可以看兩個例子Creating a Game with CocosBuilder;Introction to CocosBuilder;然後就是多用多嘗試。
6
整個學習過程要學會查資料、學會尋求幫助,我主要用的stackoverflow(話說剛剛發現stackoverflow的reputation喜過15,終於可以投票了:)
在學習過程中得到了子龍山人(我認為本尊是這位 @屈光輝 )、LearnCocos2d作者Steffen、 @kubisoft 以及眾多網上朋友的幫助,再次表示感謝。
7
硬體及開發者資格:看完c++開始看obj-c,這個過程一直是使用的vmware虛擬機安裝的mac系統寫程序;然後入手一個最便宜的mac pro、以及iPhone,嘗試玩各種游戲;從看c++開始大約過了1年半(已經有非常簡陋的游戲demo)才真正購入iOS開發者資格並開始真機測試。
8
嘗試過的一些其他工具、各種彎路和坑、以及發散內容:
可以拖拽方式寫代碼的stencyl <Stencyl: Make iPhone, iPad, Android & Flash Games without code>;
最初學的不是ojc-c而是譚浩強老師的c++程序設計(雖然有人不喜譚老師,但那書是中文的讓我對面對對象程序設計有一些初步的概念,再看英文的obj-c不至於太摸不著頭腦,反正手頭正好有這么一本買了6年沒看的c++。。。);
嘗試過<Tiled Map Editor>但自己目前的坑沒有用到;
嘗試過一點物理引擎和粒子,但自己目前的坑沒有用到;現在粒子用到了,做了火焰等效果,也挺美的;但是一定要注意CPU佔用優化,內存方面我最低支持4S沒遇到大問題
學習音樂製作,這個我小時候學琴一直也喜歡音樂所以有一點點底子,如果沒有基礎可能上手有門檻;開始用的軟體LMMS,但是音源插件在64位系統的問題我一直沒解決掉時間精力也不多,所以是暫時停滯了;最近發現Garage Band可能也可以寫歌;另外還試過一個很有歷史的微軟的音樂自動編輯器,很好玩,用來做背景音樂也不錯。
入手手繪板學畫畫(這中間糾結了好久才決定用點陣圖不用矢量圖),如果你能找到熱愛游戲的美術同學一起搞那最好不過。但是我一直對畫畫心癢難搔。。。所以入了這個深坑,曬一曬:
轉載
z