個人的なメモ

Tomohiro Suzuki @hiro128_777 のブログです。Microsoft MVP for Developer Technologies 2017- 本ブログと所属組織の公式見解は関係ございません。

Cocos Sharp 入門 (1) Cocos Sharp の概要およびメリット・デメリット

はじめに

こんにちは、@hiro128_777です。
今回は、これから Cocos Sharp を導入しようかな~と検討している方もいらっしゃるかと思いますので、あらためて、Cocos Sharp の概要およびメリット・デメリットを整理したいと思います。

Cocos Sharp ってどんなもの

Cocos Sharp は、Xamarin 上で動作する2Dゲーム開発用クロスプラットフォームライブラリです。
Cocos Sharp は Monogame 上に構築されており、Monogameのエンジンを Cocos2d,3d の API で利用できます。


つまり…
C#ユーザーであれば、Xamarin + Cocos Sharp で最短でクロスプラットフォームでのゲーム開発が可能です!!

Cocos Sharp を使うメリットは

Xamarin.Forms と共存できる

Cocos Sharp を使う最大のメリットは、ゲーム画面を Xamarin.Forms 上のUIコントロールの一つとして扱うことができるため、一つの画面内で一部分はゲーム、一部分はリスト表示というようなことが実現できることです。今のところクロスプラットフォームでこんな芸当ができるのは Cocos Sharp のみです。

具体例として、前回の記事をご参照ください。
hiro128.hatenablog.jp

ゲーム開発未経験でも簡単にスマホゲームが作れる

Cocos Sharp は学習コストが非常に低いです。C#経験者であれば、1週間も触ればすぐゲーム開発が可能になります。
職業としてではなく、趣味としてできるだけ簡単にスマホゲームをリリースしたい場合、Cocos Sharp は非常に魅力的な選択肢となります。

処理が早い

Cocos Sharp は2Dに特化しているため、3D用のライブラリも存在せず、3D用のプロセスを起動する必要もないので、非常に軽快に動作します。

コード共有率が非常に高い

ゲームは基本的に標準のUIコントロールを使用せず、独自の描画を行うため、Xamarin.Forms のように各プラットフォームのUIコントロールの差異を調整するようなことをする必要がありません。よって、コード共有率が非常に高くなります。通常の場合90%以上のコード共有率が実現できます。プラットフォーム個別の実装が必要なのは、各種センサー周り、カメラ周り、広告関係、課金関係などに限られます。

Xamarin 環境があれば導入コストが無料

Xamarin の環境をすでに持っているのであれば、Cocos Sharp 自体は無料で使い始めることができます。MIT License なので商用利用も可能です。

Cocos Sharp のデメリットは

日本語情報がほとんどない

Cocos Sharp の日本語情報はほとんどありませんが、Cocos2d-x の情報は非常にたくさん存在しますので、それをC#に読み替えれば大丈夫です。それでも分からない場合は、twitter, teratailなどで質問すれば、何らかのアドバイスが得られると思います。また、私のblogにも色々情報がありますのでご参考にしていただければ幸いです。

職業としてゲーム開発者を目指す場合メリットが薄い

C#環境で職業としてゲーム開発者を目指すのであれば Unity が最適だと考えられます。ゲーム会社さんで Cocos Sharp を使っているという会社さんは聞いたことがありませんので…

まとめ

Cocos Sharp は「Xamarin 触ったことあるけど、ゲームも作ってみたいな~」という方には最適なソリューションです。ぜひ、皆様も Cocos Sharp でゲーム開発にチャレンジしてみてください!