2014年11月29日土曜日

cocos2dの歴史をまとめてみた。cocos2d-x と cocos2d-iphoneと cocos2d-swift と cocos2d-html5 と cocos3d の違い

iPhoneだったりSwiftだったりxだったりで種類多すぎてわからねぇ!

って思うほど、cocos2dの派生は多いです。
更にオープンソースなので、本家が作ったbranchだったり、全然違う団体が作ったbranchだったりもするので、更に混乱します。

一番重要なのは、Cocos2d-iPhoneとCocos2d-xは違うよ!!!ってことです。
左から、cocos2d-x、cocos2d-swift(旧cocos2d-iphone)、cocos2d-swiftの公式エディタSpriteBuilder

ってなわけでまとめてみたので、混乱してた人も、知ってた人もcocos2dの歴史の復習のつもりで読んでみてください。

あ、間違ってたらごめんなさい・・・

2008年2月、最初に出たのはCocos2d (python)

最初に出たのは、pythonで作ったゲーム用ライブラリである「Los Cocos」が最初に出ました。
アルゼンチンのLos Cocosという町で、Ricardo Quesada氏と仲間たちが開発&公開。
バージョン0.1を公開するとともに、名前を「Cocos2d」に変更。

ちなみにこのRicardo Quesada氏は重要人物なので、覚えておくように。テストにも出ます。

ポイント
  • Cocos2dファミリーの原点はpython版
  • ネーミングはアルゼンチンの町の名前、Los Cocosから
  • Ricardo Quesada氏らが開発

2008年6月、AppStoreのローンチと同時期にCocos2d-iPhone をリリース

しばらくすると、AppleがAppStoreの発表をした。
Ricardo Quesada氏がきっと「これ、Cocos2d for iPhoneとか作ったらめっちゃアツいんじゃね?」とかって言って、ここでさくっとCocos2dをObjective-Cに移植し、Cocos2d for iPhone v0.1をリリースしたんじゃないかな…

Cocos2D – Swift Open Source Game Engine : http://www.cocos2d-swift.org/

ポイント
  • AppStoreローンチと同時期に、Ricardo Quesada氏らがCocos2dをObjective-Cに移植し、「Cocos2d-iPhone」を開発

2010年11月、中国のZhe Wang氏がCocos2d-xをリリース

2008年から2010年の間のことがWikipediaに書いてなかったのでなにがあったかよくわからないけど、
2010年になると、中国でCocos2d-xが生まれました。Cocos2d-iPhoneのAPIをリスペクトし、C++でライブラリを作成。iPhone, Androidはもちろん、Windowsに(確か当時はBlackBerryにも)対応するクロスプラットフォームっぷり。
中心人物はZhe Wang氏。同氏の勤務先かはわからないけど、Chukong Technologiesって会社がスポンサーだったり開発してたりしてるらしい。

Cocos2d-xの公式エディタのCocoStudioも、Cocos2d-html5も、同じ会社が作ってるらしいです。

また、詳細な日にちは見つからなかったけど、
Ricardo Quesada氏がどっかのタイミングでCocos2d-iPhoneチームを抜けて、Cocos2d-xチームに移籍しました。forumのどこかで、Androidがどうのこうのーって言ってたはず。

Cocos2d-x: World’s #1 Open Source Game Development Platform : http://www.cocos2d-x.org/
Zhe Wang(@WalzerWang)さん | Twitter : https://twitter.com/walzerwang

ポイント
    • 中国でZhe Wang氏とChukong TechnologiesがCocos2d-xを開発
    • Cocos2d-html5もChukong Technologiesが開発
    • 後でRicardo Quesada氏が入ってくる

    2013年7月、ApportableがCocos2d-iPhoneの正式なスポンサーに

    「サードパーティだけど、Apportableを使えばAndroid用にもビルドできるよ!」って言ってたのが、サードパーティじゃなくなりました。公式。

    Apportable - Objective-C for Android : http://www.apportable.com/
    Apportable has become the official Cocos2D sponsor - Apportable Blog : http://blog.apportable.com/apportable-has-become-the-official-cocos2d-sponsor

    ポイント
    • ApportableがCocos2d-iPhoneのスポンサーになる

    2014年1月、Cocos2d-iPhone から Cocos2d-Swiftに改名

    AppleがSwiftを公開すると同時?に、プロジェクト名・ドメイン名をCocos2d-Swiftに変更。
    ソースはまだObjective-Cで書かれてるはずだけど、Swiftからでも普通使える。
    ただ、ApportableがまだSwiftに対応してないので、Apportable使いたい人はまだしばらくObjective-Cを使うように。

    また、ここらへんでCocosBuilderの開発者であるViktor Lidholt氏がZynga社に雇われます。 そのあとはApportable社と渡るんですが、CocosBuilderはSpriteBuilderに生まれ変わり、Cocos2d-iPhoneの公式ツールとなります。

    SpriteBuilder Android Pluginが発表されるのも、このあたり。

    Viktor Lidholt(@viktorlidholt)さん | Twitter : https://twitter.com/viktorlidholt

    ポイント
    • Swift発表と同時にCocos2d-iPhone は Cocos2d-Swift に
    • ApportableはまだSwiftに対応していない
    • サードパーティだったCocosBuilderが、SpriteBuilderになり公式ツールに

    いつ始まったか分からないけど、Cocos2d-iPhoneの拡張として出たCocos3d


    Cocos2d-SwiftのフォーラムにもCocos3dのタグがあるし、公式もある程度認めてる、のかな…情報全くわからないから、だれか説明頼む。。。w



    とりあえずBrenwill Workshop Ltdってところが作ってるので、一応まだサードパーティなはず。

    Cocos3D Home : http://cocos3d.org/

    まとめ

    ってな感じで色々複雑な歴史はあったり開発元がちがってたりするけど、結局は
    • Cocos2d-SwiftはObjective-C/Swift。Apportableを使えばAndroid用にも作れる
      • SpriteBuilderは、Cocos2d-Swiftの公式エディタ
    • Cocos2d-xはC++。iPhone用にもAndroid用にもWindows Phone用にも作れる
    というのを覚えてれば問題ない…かな…元も子もないw

    ちなみに、iOSデバイスしか見てない上にObjective-C/Swiftが好きな俺からすると、Cocos2d-Swiftしか選択肢がないです。。。


    間違ってるところあったらコメントで教えてください…

    関連記事/URL