今話題で先進気鋭のゲームエンジンCocos2d-xの勉強会があるということで、参加してきた。場所がおしゃで綺麗でした(写真撮るの忘れた)ここでCocos2d-xとは、Cocos2d-xは、オープンソースのゲームフレームワークです。...)に対応したアプリ・ゲームを開発することができます。コアエンジンはC++で書かれているため、軽量かつ軽快に動作します。そのコアエンジンのソースコードは全て公開されているため、自分に合ったカスタマイズをすることも可能です。JavaScriptから選択することができます。IDEなども、無償で公開しています。ことで、弊社サービスでもメインゲームエンジンとして使っております。Japanの清水さんからの発表。いえば清水さんというくらい、参考書でお世話になっている方で、感慨深かった。Studioが生まれ、そこからプラットフォームとしてのCocosが誕生。今はv2.2ということで、日本語のページには表示されてないので、海外のページからダウンロードする必要があるみたい。ダウンロードページシェアとしては、50%は中国、日本は30%ぐらいで、欧米は10%程度という感じらしい。バイナリサイズとしても、Androidだと2M程度にまで小さくなっている。3D対応は追加されていく予定。機能も拡充されていく予定。3D機能も拡充されて、今ではきれいな3D表示が可能になったっていう紹介。CocosStudioで作れてて、それだけでもぬるぬる動いてるって紹介。www.youtube.comCocos2d-jsJSもいい感じに性能が上がっているらしい。www.youtube.comまたのちほどスライドなどが公開されれば、更新しようと思う。単行本(ソフトカバー)この商品を含むブログを見るなどの本の著者らしい。4/2には北京であった、Cocos2d-xのカンファレンスにも参加され、レポートは週刊アスキーPlusで公開されている。CocosのConsole機能についての発表があった。v2.2を使うと、ターミナルからcocosコマンドを使わなくてもXCodeのように新しいプロジェクト生成が可能となっている。Assetのダウンロードなども可能となっており、Unityのアセットストアのようなものを目指しているらしい。プレビルドされた形でダウンロードされる。v2.2を使う際のメリットとデメリットとしては、メリットプロジェクトの新規作成が簡単プレビルドされてるBuildが早いデメリットソースがヘッダしかみれないカスタマイズできないというものらしい。これはプレビルドの結果そうなっているものと考えられる。機能これは自分も知らなかったし、会場の中でも使ったことのある人は少ないようだったのだが、Cocosプロジェクトの中でTCPポートをlistenして、コマンドを受け付ける事ができる。director->getConsole();console->listenOnTCP(1234);とだけ、書くことで、localhostの1234ポートをlistenした状態でアプリが起動する。1234とコマンドをうつことで、CocosのConsoleコマンドが使える。touchのエミュレーションも行うことができ、tapとswipeが選択できるので、アプリのテストにも使えそう。他のアプリの情報としては、シーングラフ構造を確認したり、テクスチャキャッシュに何が保存されているかも確認することができる。あとは端末のログなども。他にもuploadコマンドで指定したファイルのアップロードも行うことができ、ゲームのマスターデータを入れ替えることで、アプリを再ビルドすることなどなく、テストすることが可能。{ファイルデータをbase64エンコードしたもの}という書式になっており、なかなかシェルでそのまま叩くのは大変なので、シェルスクリプトなどを書いたほうが良さそう。松浦さんも自身のシェルスクリプトを公開されていた。コマンド自体は拡張可能になっており、uploadコマンドのように好きなコマンドを追加する事が可能。コマンドの作成方法とかはCocos2d-xのソースをみることが一番参考になるらしく。ここらへんのソースが参考になりそう。コマンドの注意点としては、ネットワークスレッドで実行されるためUIの操作などの場合は、SchedulerのperformFunctionInCocosThreadでラムダをラップするなどが必要。高井さんAmane☆Danceという音ゲーを作る際にいろいろ辛かったことなどの共有。中のキャラが踊っているところに、タップするボタンが出てくるので、タイミングを合わせてタップしたりするゲームのよう。SpriteStudioを使用したとのこと。2系のサウンド事情として機能が必要最低限しかなく、曲が再生されたことをとるコールバックをとれないため、曲ごとの再生時間情報と、ゲームプレイの経過時間を保持する必要があったそう。Cocos2d-xのサウンド周りはv3系でもいろいろと機能が足りてない感じなのでわかる〜ってなったりしてた。発表者の高井さんは、まだ学生らしく、ゲーム業界への就職を希望されてるとのことなので、応援したいところ。使ってなされているよう。今までは外側だけアプリで、中の表示部分の大半がWebだったものを、ユーザ体感の向上のためにすべてアプリ化する流れになったらしい。審査スケジュールが考慮されておらず、スケジュールがあやふや問題リリース後に変えられない問題などがあったそうで、共感。その他、Cocosのアプリ開発を進める上で、タッチイベントのハンドリングが難しかったり、CocosのGUIコンポーネントである、ControlButtonやEditBoxの挙動が変などの問題があり、結局拡張クラスを作成したりするはめになったらしい。サイバードでもこういったところで作ったもののライブラリ化を進めて基板化する予定だそうだが、CocosのUI部分も痒いところに手が届かないことが多いため、こういった知見で生まれたコンポーネントは結構会社ごとの資産になりそうだな〜と思った。まとめ久しぶりの勉強会参加であったが、いろんな人と交流することができてよかった。機能についても、使えてなかったのでそういった知見を知ることができてよかったように思う。得たものはきちんとアウトプットして消化せねば。会場が代官山だったので、先輩とともに最近出来たばかりのクラフトビールの蒸留所に立ち寄ってきた。今日の登壇者の方々の発表はまた後日資料がアップされるとのことなので、また資料がアップされたら更新したいと思います。(1)月別アーカイブはてなブログをはじめよう!yasuharu519さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。