觸控科技王哲:Cocos2d-x 2013發(fā)展趨勢
4月24日消息,網(wǎng)易手機頻道于21日在成都市天府軟件園與觸控科技、IT茶館聯(lián)合舉辦了第七屆四川互聯(lián)網(wǎng)大會手游技術分會場,暨2013網(wǎng)易手機五城匯沙龍成都站及CocoaChina西南開發(fā)者大會。
本次五城匯沙龍邀請了Cocos2d-x核心開發(fā)者王哲來現(xiàn)場為開發(fā)者做了主題為《Cocos2d 2013發(fā)展趨勢》的演講。王哲詳細的分析了Cocos2d工具在全球的使用發(fā)展情況及2013年的規(guī)劃。
Cocos2d-x核心開發(fā)者王哲
網(wǎng)易手機頻道 | 查看圖集|

(1/61)轉(zhuǎn)發(fā)到微博網(wǎng)易手機頻道五城匯沙龍成都站
網(wǎng)易手機頻道開發(fā)者系列活動“五城匯沙龍”于4月21日在四川省成都市舉行2013年首場。本次五城匯沙龍成都站與知名手游開發(fā)公司觸控科技一起合辦,暨“It's a Circle-CocoaChina西南區(qū)開發(fā)者大會”,同時也是第七屆四川互聯(lián)網(wǎng)大會手游技術分會場。
以下是Cocos2d-x核心開發(fā)者王哲現(xiàn)場演講文字速記實錄:
主持人:首先感謝大家冒著風險來參加我們這個會,其實今天不是特別安全的狀態(tài),還是感謝大家今天過來,觸控科技和網(wǎng)易共同舉辦了我們這個開發(fā)者大會,應該說從三年前到現(xiàn)在,我們已經(jīng)舉辦了第三屆了,今天也是從北京來到我們成都跟大家交流。
賈巖:非常感謝大家,我看了在座各位都是做技術的同事,從五年前在做整個iOS的開發(fā)者社區(qū),到現(xiàn)在5年,大家能看到的從我們帶來的產(chǎn)品,像捕魚達人等等。
我們?nèi)ツ觊_始在做手機游戲的代理,像戰(zhàn)國,像今年的時空獵人,這都是我們大家做的,包括國際上非常知名的迪斯尼的游戲我們都在做。
我們覺得今后大家可以看到更多的游戲,觸控或者說在座的各位,其實一直都在無線互聯(lián)網(wǎng)的行業(yè)跟我們一起發(fā)展,我也相信在座各位也都希望我們之后這個行業(yè)能更好的有一個發(fā)展。
我們也能看到,我說我們的無線互聯(lián)網(wǎng)行業(yè)非常的多元,人才多元,我們無論從招聘的角度來說還是哪方面來說,成本越來越高了,我們也希望我們和網(wǎng)易能做一些更多的與大家溝通交流的機會,讓我們找到一些有成績的開發(fā)者,提供一個機會讓大家交流經(jīng)驗。
第二個其實就是房租貴,但是我們看到像成都在我們的軟件園,整個政策上來講給了非常多的優(yōu)惠,這兩個貴的地方我們能想到的,但是有一個可貴的地方,這個貴就是今天大家都能坐在這里,我們能夠跟更多的開發(fā)者做交流,這是最難能可貴的,謝謝大家!
主持人:接下來我們有請Cocos2d—2013的發(fā)展趨勢,請王哲給我們講一下。
王哲:很高興今天在這里和大家分享Cocos2d—2013年的發(fā)展規(guī)劃,其實剛剛主持人的講法不算太正確,從Cocos2d—x在一個月前發(fā)布的全球前五十強的手游公司來看,前五十名有12個,在國內(nèi)的情況,去年全年APP 商店在中國最賺錢的游戲是上面這些,下面一個我在4月15號做的iPhone中國區(qū)暢銷前十。
以前我講PPT都是把這個游戲框下來,因為今年太多,我就抱歉,是這樣弄起來的,大家可以看到無論是去年前年的最暢銷游戲,還是今年的都差不多,所以嚴格來講我并不知道Cocos2d—x在整個開發(fā)群體里面占多少,但我能看到在全球最賺錢的一些手游公司,最賺錢的游戲里面來說中國區(qū)差不多占70%的份額,全國占24%的份額。
然后講一下我們現(xiàn)在的技術情況,Cocos2d—x更多給人的印象是一個渲染很強,的確我們是為渲染服務的??梢栽诓煌哪夸浝锩婕虞d一些東西,比如說我現(xiàn)在程序里面設定更多的加載,這時候資源和腳本都在目錄里面,當我們第二次啟動的時候服務端有分析,直接把腳本的圖片下載到目錄二里面,這時候我再保存更多的資源,所以整個游戲的腳本以及圖片資源是很便利的。
這個事情在昨天還是前天,有人在博客上寫了一篇怎么動態(tài)分析腳本的東西,這是我覺得比較好的使用功能,屬于動態(tài)分析在線的功能。
今年我們發(fā)展的重點應該是最右邊這兩個,一個是腳本化,一個是編輯器。說到腳本話現(xiàn)在有多種用法,有不少人喜歡C++編程,比較大的是我要入網(wǎng),但是我要用JAVASCRIPT,去年我們都在推JAVASCRIPT的方案,去年一年JAVASCRIPT相對來說調(diào)整起來比較難一些,就算推了一年,到今年的3月份之前,只有兩個國外的小公司用這個游戲方案做的。
但在今年3月份有一個重量級的用戶加入了,并且發(fā)布在Facebook上面,如果現(xiàn)在去Facebook上面搜這個游戲,打開來看它已經(jīng)不是用動畫來做的,他們現(xiàn)在正打算弄在安卓上面,我未來游戲用JAVASCRIP來寫的,直接跨手機端的網(wǎng)頁和多種平臺,其實后來不太時興。
我們做調(diào)查在開發(fā)中偏好的是有多少,我們發(fā)現(xiàn)C++還是占主流,在座各位用C++寫的有多少?JAVASCRIPT呢?在這種情況下挺難的,很難說讓所有人都搬滿意的,現(xiàn)在更多的是用C++,我做一個功能可能大家都可以用到。
我們重新設計UI框架,目前這個UI也很難用,更多的是我們弄了自動布局改版的功能,這是第一個重要的,第二個是想試圖從多現(xiàn)場,現(xiàn)在是在一個現(xiàn)場里面,每個節(jié)點訪問完,更新完再去調(diào)它的東西出來。
實際上我們?nèi)绻氚袰PU用起來的話,應該說所有弄完,主要的現(xiàn)場按照這個做法就可以了,另一個現(xiàn)場可以看到這個東西,我把它弄出來,自己做優(yōu)化,做完了以后一次性的畫出來,目前是打算做這個事情。
如果做的話大概需要花六個月的時間,即便這樣已經(jīng)很快了,做這個事差不多比其他的快五到十倍左右,所以在很多安卓低端機上已經(jīng)討論,在這個版本里面我們的單人測試覆蓋了80%左右,我看應該到下周,我們就能完成90%的單元測試的覆蓋。在這個版本,我們在下周,應該是5月1號會再發(fā)一個版本,現(xiàn)在是每六周發(fā)一個版本,在3月21號的版本里面還沒有掛,在這次版本里面會掛。
對于JAVASCRIPT首先我們做了一個瘋狂的事情,我們綁了有超過一千個API,沒有算過大概多少,接下來是把接口,C++的都綁定,最后變成什么?我在上面跑沒有瀏覽器,但是可以在這個之上去調(diào),他們是瀏覽器,但是可以訪問。這個有一個好處,這個東西挪到一個方案上面的話,必須要能夠跑起來,我們就把這個給綁上來,反正是自動綁的,不需要花太多時間,這是JAVASCRIPT外部需要的接口。
第二條是網(wǎng)絡的接口,就是現(xiàn)在這個東西我感覺是一般般,因為接口少,在上面用習慣了,我們就從C++開始把這個接口綁出來,寫完,綁到JAVASCRIPT,這樣你游戲就可以很方便。
第三個COMMAND LINE TOOL,這其實是代表一種新的思路和方向,原來我們是用編輯器,比如說最開始做了一個版本,類似這些,在這個出來以后就很方便,尤其是加上自己的編輯器,有了自己的IP以后,你在里面的空間就很大,這是我們的情況。
所以從長遠期來看,我們還是希望說Cocos2D能在頁游和端游兩種生態(tài)圈。我在2010年時候給大家說C++是一樣的,當時說安卓沒有什么,還是iOS賺錢,到了2011年,發(fā)現(xiàn)安卓很賺錢,現(xiàn)在大家基本上是用跨平臺的解決方案,當時也是為安卓服務的。這是長期的目標,有多少人用JAVASCRIPT,我覺得要看市場什么時候能起來,感覺快起來了,但是說不好。
首先是技術,技術這一塊講完了以后改一個社區(qū),因為做開源項目,社區(qū)不開源,我們說需求很大,我要怎么做到,這一次在2013年1月1號后開始有專人專職的寫文檔,目前已經(jīng)差不多五個多月過去了,上面有150多篇的文章,大家訪問這個WIKI可以看到,左邊密密麻麻的只是目錄的一半,其實你也可以從上面搜,你可以找到你要的資源。
第二個現(xiàn)在所有的網(wǎng)站注冊用戶你都可以編輯一個文檔,新建自己的文檔,這樣的好處就是對國內(nèi)開發(fā)者無所謂,但是對老外來說覺得可以完善,他覺得這個地方寫錯了,可以直接改掉,這個不像百度百科還需要審,這個不需要審,直接呈現(xiàn)出來,改完了就呈現(xiàn)出來。
在WIKI上做了底下可以評論,你發(fā)現(xiàn)這個文檔來,這個程序沒有能跑起來,如果發(fā)現(xiàn)你就可以直接改,如果綁定再加回復,回復還可以搜,所以有專門的人來回答問題,后面教學和文檔團隊就準備放在成都,放在觸控成都的辦公室里面,前面的WIKI還是保持一些風格,本來編程人員在上面吵就挺亂了,如果我放中文、韓文、俄文沒有辦法了,所以我們暫時只搞英文的,如果有開發(fā)者涉及的話,可以把參考一下。
今年我們會出上面這些教程,光清華出版社都有兩本,今天這些作者都有,我推薦一下,我先推薦中間上面這一本,因為這位作者是很資深的教師,他應該可以把東西講得很清楚。
底下這一本看起來像外星人的,Cocos2d—x高級開發(fā)教程,制作自己的捕魚達人,這本書確實寫的不錯,他寫到中間的時候用了一次,教了一次,他的書我看過,不是說我應該這樣,而是說這個為什么要設計成這樣,我們當初都是經(jīng)過考慮的,說這個地方我為什么要設計成這樣,他把這些東西全部寫在書里面。
另一個是捕魚的Windows phone7和phone8開發(fā)的,我們也有韓文的,今年這個教程韓文出兩本,日文出兩本,中文出三本,除了教程以外是這個編輯器,這個是骨骼動畫的編輯器,當初開發(fā)的時候是因為有一個財主直接甩了3500美金過來開發(fā)的。
美國市場基本上是今年剛開始,從iOS往安卓上走,老美現(xiàn)在還是以iOS為主,從iOS往安卓走,這個東西可以買了,解析器在上面可以下載下來,并且我們打算在4月底,在6月中旬會有官方的版本提供解析器。
最近有一個CocosPLAYER,這是一個什么東西?通過一個蘋果的存儲協(xié)議,把你這個上面的,跑在你機上的圖片、腳本上傳到上面,它可以裝在安卓和iOS上面,你跑起來以后有一個Play,你可以一點,有一個局域網(wǎng)就可以有一個這樣的效果,這個是當時Cocos i Phone做的,這個大家可以看一下,現(xiàn)在好象還沒有什么出來,我左邊可以看到圖片和我的腳本,然后我腳本里面編輯兩下,這個點play,就上傳到手機端,大家在手機端可以看到這個效果。
講完了前面的東西,后面是我比較喜歡的,我希望發(fā)布,我也做了一些新的東西,最難受的是它不能發(fā),一定要憋到春季和秋季才能發(fā)。
首先是關于捕魚達人SDK超過千千萬萬,無數(shù)個廣告,還有分享,最后我們公司搞這個很累,雖然SDK有上千個,但是你在上面只能做統(tǒng)計、支付、廣告、社交、分享,還有什么呢?好象想不出來,所以你每個商業(yè)模式和行為都是類似的,比如說廣告,它一直在游戲里面,這個框可大可小,讓你點這個廣告框,比如說支付,支付的邏輯基本上都是這樣的,你輸一些信息出來,然后支付,支付完了告訴你支付成功還是失敗,同等商業(yè)模式上行為都是差不多的,甚至有一家接口都是相互抄來抄去,我們直接把這個分裝出來就可以了,只要關注在這四個上面就可以了。
比如說在捕魚里面,我先看一下你的這個,如果你是中移動的我就加中移動的支付,如果你是電信的我就加電信的支付,如果你是支付寶我就加支付寶的給你,這個支付的代碼實際上是在游戲邏輯層面,你要付多少錢告訴我,我點OK就可以了。
在這樣的接口上要關注每個SDK的差異性,包括像中國電信的單機支付和網(wǎng)游支付不一樣的,單機支付你告訴他支付,然后就可以了。SDK你點支付是不會反映給你的,是把支付成功發(fā)給你的網(wǎng)絡服務器,你支付成功是網(wǎng)絡服務器知道,比如說我在上面有一個項目在跑,我有一個項目只要關注這個接口就可以了,一般的公司一般有一個通用的,比如說SDK支持,不需要全部都提升,只要在這個地方做一次商務需要的SDK就可以了,我支付完,只要告訴我支付成功還是失敗就可以了,我不管這是SDK過來還是網(wǎng)游的服務器過來。
如果我是一個平臺商,這是我們給統(tǒng)計插件設計的API接口,在這兒可以看到是大家共有,都一樣。對整個的設計來講,如果是平臺開發(fā)商你只要關注安卓和iOS分開來看,我把安卓加到這個API里面,我把安卓加到另一個API里面,會把這個JAVA API轉(zhuǎn)到C++,如果我這個SDK有兩個功能怎么辦呢?沒有關系,你可以分兩個,到C++我就可以弄成這樣,兩個都可以用,如果有一些接口沒有制成另一個怎么辦呢?沒有辦法,用反射,因為C++雖然不支持反射,但是JAVA是支持反射的,我們可以通過反射機制把這個調(diào)出來。
目前在4月底5月1號發(fā)布的都已經(jīng)像左邊寫的這個,當然支付是不能對外開的,其他的這些會直接隨著發(fā)布。右邊的這些是國外一個公司已經(jīng)開發(fā)差不多的,這是Cocos HUB,它是解決跨平臺系統(tǒng),第二個功能是針對社區(qū)的,方便在里面搜索,目前Cocos2d—x有很多教程,這些東西都在我們的論壇和博客里面,找起來也很方便,所以在這個頻道里面把自己的游戲、插件,你愿意分享給社區(qū)開發(fā)者的就可以提交到上面。
目前有這么幾個分類,一個是開發(fā)工具,接下來是UI框架,在前面還有一個第三方的東西,接下來還有代碼設定,這個東西只是散落在博客上面??傮w來說在2013年我們還是以C++為基礎,多數(shù)會在C++的層面上,我想調(diào)查一下有多少人面向組建的這種思維方式?我在想這么搞的話可能是CocosPLAYER3.0。最后是文檔,現(xiàn)在有很多篇的文檔,韓語的和日語的,有一個是兩本有一個是三本。接下來介紹一下CocoSTUDIO,這是一個集成的編輯器。