FC2ブログ

cocos2d-html5とかJSとか

エロ動画収集にも一段落ついたので何か始めてみるかと、ネットをブラブラしていたら、ずいぶん前にインストールしてほったらかしてあったcocos2dxがJavaScriptでも使えるよーんとの記事をみたので、試してみることに。

初心者がロクにドキュメントも読まないでDLしてくりゃ、そら、時間を浪費するだろうよ。
とまぁ、そういう展開だったわけで備忘録。
MacOSX 10.7.5 Lion + Xcode4.6 ですよ。

とりあえず、cocos2d-xのダウンロードページ に行ってみる。

作業日、2014年4月24日の時点で、Native版(っていうの?)が「v3.0」「v2.2.3」、JS版が「v3.0alpha2」「v.2.2.3」と2種類づつDLできる模様。
よく分かんないので、とりあえず全部DLしちゃう初心者。
「Cocos2d-x-2.2.3」「Cocos2d-x3.0rc2」「Cocos2d-JSv3.0-alpha」「Cocos2d-html-v2」の4つのフォルダができました。\(^o^)/

さて、どうしたもんかと腕組みすること数秒。
とりあえず、前のバージョンみたいに install-template.sh みたいなヤツを動かすと、Xcodeにテンプレートがインストールされんじゃね? アーンド、とにかく新しいほうが良いんじゃね? で、「Cocos2d-x3.0rc2」とやらから着手。

フォルダの中身を見てみると「setup.py」とかいうのがある。
おっと、install_template.sh じゃないのかー。
で、ターミナルを立ち上げて、setup.py と打ってみる。動かん。
.py ファイルってなーに?
python とかいうのが必要みたい。
つーことで、pythonのダウンロードページ に行って、OSに合ったバージョン(MacOSX64bitなんちゃらかんちゃら)をDL&インストール。

ターミナルに戻って再度 setup.py を試す。
・・・だめでした。
もいっちょ、python setup.py で試す。
う、動いたよ、ママン。

そして、なにやら NDK_ROOT とか ANDROID_SDK_ROOT とか聞かれる。
あー、なんか昔、Eclipse とかいうヤツを設定したときにやったなぁ・・・。

記憶を掘り起こして設定してみる。
こちら様 を参考にしながら、buildまで成功。

apkファイルも出来たし、さて、エミュレータにはどうやって転送するんだ? を、調べ始めて、いやいやいや、JavaScript の開発環境を構築したいんだった。
しかも当初の目的、XCodeにテンプレートをインストールするってのはできてねーし!
なんか、方式が変わったとかで、Xcode起動→テンプレート読み込みではなく、サンプル(テンプレート?)のプロジェクト(?)を生成してそれを読み込むようになったようです。

と、ここまで大きな脱線。

Xcodeのテンプレートに新しいヤツを追加しようという目論見はあっけなく崩れ(いやいや、よく調べれば、最初から出来ねーよ! って色んなところに書いてあるんだけど)、挫折感満載で Cocos2d-JS-v3.0-alpha とやらに取り掛かる。

フォルダの中を見るとまたしても setup.py が。
おっとその前に、深いところにフォルダを作ってしまって分かりづらい上にpathを通すときに不便だしで、DLした4つのフォルダを浅いところに移動する。→これが更なる挫折の原因。

さて、改めて setup.py を起動。
「Cocos2d-x3.0rc2」で設定したため、文句も言われず終了。

さて次は、と調べてみると、バージョン3から、「cocos」というコンソールを使ってマルチプラットフォームに対応するみたいです。
新規にプロジェクトを作る場合には、cpp、lua、JavaScript のどれを使うか、コンパイルする際には、Android、iOS、Mac、WEB、Win32、Linux からプラットフォームを選択、みたいなことができるみたいです。
いや、もちろん試してねーけど。

というわけで、目玉のコンソール「cocos」起動。
ターミナルで cocos ッターン!
動かない。
cocosにpathが通ってない模様。
そういえば、不可視ファイル .bash_profile の COCOS_CONSOLE_ROOT を manual changes しろとか言われたような?
でも、不可視ファイルは不可視ファイルだからなぁ。

とりあえず、テストだけでもしてみるか!
で、/Cocos2d-JS-v3.0-alpha/tools/cocos2d-console/bin/cocos をターミナルにドラッグ&ドロップして、フルパス指定で動かしてみる。
動いたよ!

・・・動いたけど、どこか負けたような気分。
色々と試すたびにドラッグ&ドロップするのも「ちっ、めんどくせーな」とスノボの選手の気持ちが分かってきたところで、前のバージョンの「Cocos2d-html-v2」を試してみることにする。
まー、アレだ、「alpha」とか付いてるやつはなんかアレだしね。

→要はフォルダを移動しちゃったので、pathが変わっちゃったってことですね。
「Cocos2d-x3.0rc2」「Cocos2d-JSv3.0-alpha」それぞれに「cocos」コンソールが同梱されてますが、中身は同じなのかな。

で、「Cocos2d-html-v2」。
ここまでの挫折感、というか大いなる時間の無駄に膝が折れそうになっているので、README.mdown をテキストエディタで開いて読んでみる。
今さらか! いや、.md とか、.mdown とか、開き方が分からなかったのよ。

すると、また何やら見知らぬ呪文が。
サンプルを動かしたかったら、ターミナルで何やらやれと。
git
いや、まぁ、とりあえずターミナルで打ってみますよ、そりゃ。
当然、お前の言ってることはさっぱり分からん! とかいう返事が返ってくるわけです。

調べてみると、gitとはバージョン管理をするツールのようでした。
まぁ、コレを使えば最新バージョン(?)をダウンロードできる・・・、のか?

色々調べたところ、何種類か入手方法があるみたいですが、インストーラ付きの .dmg ファイルを sourceforge からゲット。
いや、インストーラがついてないとメンドくさそうだったし。
で、インストーラの指示に従ってインストール。

ターミナルに戻って、サンプルを動かすための呪文を入力、ッターン!
illegal instruction:4
え、呪文に呪文で答えるとは何事だ。それでも社会人か。
まぁさぁ、調べますよ、そりゃ。ここまでやってきてるんだから。
どうも、OSのバージョンが違うみたいなことらしい。64bit対応してないのかしら。

しょうがないので、こちらのサイト様 を参考にしながら、Macports をインストール、Xcodeを使って Command Line Tool をインストールしたあと、gitをターミナルから再インストール。
呪文を唱えたら、動いた、動いたよ!
→Command Line Toolのインストール、ワタシの使ってるXCode4.6では、Xcodeメニュー→Preferences→Downloads にありました。

ここで終わっておけば良いのに、samplesフォルダを覗いたら、README.mdがある。
気になって見てみたら、

### For cocos2d-html5 ###
### For cocos2d-iphone ###
### For cocos2d-x ###
#### run on iOS ####
#### run on Android ####
### Generating Published files ###

なんてものがテストできるらしい。

で、次から次へと呪文を入力しまくって試してみる。
おお、動くねー。
run on Android は gitを使わず、Android NDK を使うらしいので、Finderに戻って調べ物。
ふと気が付くと、新たににgitでDLしてきたフォルダがあっちゃこっちゃに出来あがっておりました。
ギャー、なにがどうなっていたか覚えてねー!
Cocos2d-JSv3.0-alpha」で、cocosコンソールを使ったほうが良さそげ

→run on iOS に、Select the "TestJavascript" scheme in Xcode というのがありますが、Xcode4.6では、Productメニュー→Scheme で選択。

つーわけで、「Cocos2d-JSv3.0-alpha」に戻るため、不可視ファイル .bash_profile の COCOS_CONSOLE_ROOT を編集して、source で反映
不可視ファイルを表示させる方法は こちら様 を参考に・・・。
バーチャルマシンだと何でもかんでも表示してくれるので、そっちで編集しちゃった。
なんか、ターミナルで設定すると戻すのメンドくさそうだし。いや、コマンドを忘れちゃうからなんだけどね。
なんで、Finder の設定でできなくなっちゃったかな。

つーわけで、一日をいかに無駄に費やすか講座はここまで。

結論、やっぱり新しいほうが使いやすい・・・、のかも?


[追記]
Cocos2d-JS-v3.0-alpha、「Compile and run project in Cocos2d-JS」してみました。
cocos run -p web → ○
cocos compile -p ios → × 
cocos compile -p mac → ×
cocos compile -p android → ×

ios と mac は、Update xcode please と言われて終了。
あー、そういえばXcodeにテンプレートをインストールする方式のときもXcodeのバージョンによってはインストールできないってなことがあったっけ。
ワタシの環境では使えないんすね・・・。

android は、Compileの途中で、プロジェクトフォルダの下に~/platform/android/javaがないとかエラーが出る。
こっちは、原因不明・・・。フォルダを確認すると確かにそんなフォルダはないのでメッセージに間違いはないんだけど・・・。
cocos new ~ (もちろん、--no-native オプションなしで) プロジェクトを作ってるしなぁ・・・。
→これ間違い[追記の追記の追記]参照。

と、本日、4月25日、本家サイト に行ってみたら、JSのダウンロードに変化が。
なんか先は長そう・・・。
だけど、旧版じゃないとワタシの使ってるXcodeに対応してないのが痛いなぁ。
まぁ、確かにiOS6までしか開発できないんだけどさぁ。


[追記の追記]
ANT_ROOT の設定について書いてなかった。
こちら様 とかを参考に homebrew をインストールして、こちら様 とかを参考に ant をインストール。

brew を使ってインストールすると /usr/local/bin にインストールされるという記事が多かったんだけど、ワタシの環境ではちょっと違っていたのでメモ。おお、備忘録らしい。
/usr/local/Cellar/1.9.3/bin にインストールされているみたい。

ま、ant のインストール時に brewさん が、Macports とか入ってるみたいだから、そいつらアンインストールしてからもう一回試したら~? みたいなこと言ってたから正常なインストールではないのかも知れない。
Android のテストランのエラー、「ファイルがないよ」も、その辺が原因なのかしらん。
考え出したらキリがない。


[追記の追記の追記]
「Cocos2d-js-v3.0-alpha2」を試してみた。
まず、setup.py が、cocosコンソールを探して、COCOS_CONSOLE_ROOTを自動で書き換えてくれるようになった。

iOS、mac のコンパイルで、Update Xcode please は相変わらず。ま、これはしゃーない。

android のコンパイルエラー、その後調べてみると、aapt というコンパイラーがないというエラーだったらしい。
ものは試しで、ADT Bundle の新しいヤツ をDLしてみる。

今まで、SDK Tools Only ってヤツ(android-sdk-macosx)を SDK_ROOT に指定してたんだけど、adt-bundle-mac-x86_64~フォルダ内の SDK フォルダを SDK_ROOT に指定し直してみる。

すると、cocos compile -p android → BUILD SUCCESSFUL
cocos run -p android して、- waiting for device - が表示されたところで、Android 端末をUSBで接続したら、動いたよー!

つーことは、ウチの環境だと、WEBで動作チェックしつつコードを書いていって、出来たら Android アプリへの移植(?)は可能ってことなのかしら。


スポンサーサイト



コメント

非公開コメント