ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

NCMB勉強会 #5「Unity」が開催されました

11月11日、ニフティクラウド mobile backend 勉強会 #05 が行われました。今回は前回に引き続きUnityをテーマに行われ、Unity開発を実務でも行われている方が多数参加されました。

では各登壇者のプレゼン内容になります。

エクセルで作れちゃうノベルゲーム制作用Asset「宴」

時村良平(@rodostw)様による、でのExcelを組み合わせたアドベンチャーゲーム作成に関するお話でした。

アドベンチャーゲームはサイズが大きくなりやすい傾向があり、この解決策の一つとしてDLコンテンツへの対応も行っています。Unityにもアセットバンドル機能がありますが、これは有料版のみの機能であるため、宴のDLコンテンツ機能を利用するのがお勧めです。

の利用例として、UnityのWeb Playerプラグインによるデモが紹介されていました。宴は基本的にはキャラクタを表示するものですが、音声を再生したり(デモではゆっくりボイスが再生されていました)トゥインアニメーションやアルファブレンドなどの演出的な使い方も可能となっています。ノベルゲームで必要なフラグ管理もあり、シナリオ分岐もできます。

また、Unityに搭載されている3Dモデルを宴で使用することも可能で、3Dでの会話シーンにも宴が利用できます。

宴を利用したイベントの実例としてビジュアルノベルゲームジャムが紹介されていました。これは「2日間でノベルゲームを作ろう!」というイベントで、集まった9チーム中7チームが宴を使ってノベルゲームを作成していたそうです。

宴の新バージョン、「宴2.0」についての解説もあり、これまで面倒だったUIの差し替えが簡単に行える点が最大のポイントとなっています。そもそもUnityには使いやすいUIシステムがありませんでしたが、次バージョンUnityではuGUIという新しいUIシステムが搭載される予定であり、宴もこれに併せて開発が進められているようです。新UIにより、リストビューやグリッドビューなどのUIが容易に作成できるほか、画面の解像度に合わせてUIの配置や大きさを変えることが可能になっています。宴2.0については、Beta版を公開中とのことです。

宴2.0βを公開 | 「宴」Unity用ADVツール

宴2.x以降に搭載を予定している機能として、リソースインポートの自動化、カスタムコマンドの作成機能、3D表示やパーティクルといったUnity機能との連携強化を予定しているようです。他にも実験的な機能としてLive2D機能と宴の連携サンプルも紹介されていました。

また今後の予定として、現状のシナリオチャートもUnityエディタを利用する形で分岐を視覚化、手軽に分岐できるようにしたいとのことです。

質疑応答では以下の質問がでていました。

Q. nGUIと比較したuGUIの利点は?

  1. nGUIと比較した場合はトゥーン機能が今のところまだないです。将来的にはサポートするが、いまはまだつけられないので、キーフレームアニメーションを付けています。uGUIは2D/3Dのタッチ判定も取れるのが利点。

Q. 宴2.0はファイルのフォーマットは変わらない?

  1. 変わらないです。ただしuGUIのUIに自動変換される分けではないので、シーンとかは作り直してもらう形になります。

アセットストアを見るコツ使うコツ

続いてユニティテクノロジーズジャパンの山村達彦(@tsubaki_t1)様の発表でした。

AssetStoreの提供するアセット解析のコツに関するお話でした。AssetStoreはUnityデベロッパーがアセット(素材)を売買できる環境で無料、有料を含めると15,000種類ほどのアセットが存在しています。ゲームを作るのに必要なものであり、基本的にはAssetStoreライセンスで販売しており、購入したアセットは商用ゲームに組み込んでも良いとのことです。

アセットは大別すると、スクリプト、完成プロジェクト、エディタ拡張、リソース(画像、音声など)の4つに分類されます。アセットの見方が分かるということは、サンプルがたくさん手に入るということであり、これらのアセットを使いこなすための解析するコツについて解説されていました。

AssetStoreにおいてあるシーンは、必ずドキュメントまたはサンプルシーンを含めるという決まりになっており、まずはこれを見るのが良いようです。Unityはシーンの中にGameObjectが入っており、シーンに影響を与える機能はコンポーネントとしてGameObjectに登録されているという形になっています。

GameObjectとしては、プレイヤーキャラクター、敵キャラクター、メカニクス、アイテムオブジェクトやゲームコントローラ等があり、自身の解析したいものについて見てゆくのが良さそうです。また、Unityには「タグ」と「レイヤー」があり、オブジェクトがどのタグに所属しているかにより、どんな機能が用意されているかが推測できます。

エディタ拡張を解析したい場合は、OnGUIかstaticで登録しているコールバックを探すか、Editorリファレンスで関連しそうなメソッドを検索する方法が紹介されていました。

アセットを自分のゲームに組み込む際のポイントとして、メタデータの更新は避ける、モデルのテクスチャ設定(場合によっては2014pxなどの大きすぎるテクスチャを512pxに縮小するのでも十分な場合がある)を変えるという話や、ダウンロードしたアセットを自分のゲームに組み込んだ場合にうまく動かないというケースが多々あるため、ダウンロードしたアセットは最初に空のシーンに組み込んで動作確認するのをオススメしますという話がありました。また、AssetStoreからダウンロードしたファイルはファイル数が多いことがあるため、自分の環境で使わないファイルについては削除するのも大事ですと解説されていました。

そして山村さんが趣味で開発されているReferenceExplorerが紹介されました。これはまさに解析のための専用ツールで、オープンソース・ソフトウェアとして公開されています。GameObjectの関連性や、呼ばれているメソッドの確認も簡単にできます。

ReferenceExplorerを使って関連性のないオブジェクトを非表示にしていったり、削除することで最低限動かすためだけの仕組みが容易に作れるようになります。そしてソースコードを見て、呼ばれているメソッドが把握できれば全体像がつかみやすくなります。このやり方はAssetStoreに限らず、複数人でゲーム開発を行っている場合も有効ではないでしょうか。

最後にTipsとして、Unityから直接AssetStoreの音声ファイルやモデルをプレビューする方法が紹介されました。これを使うとどんな音声か、AssetStoreにプレビューがない場合でも確認できることがあるようです。

ニフティクラウド mobile backend for Unityの紹介とデモ

発表者は中津川篤司(NCMBエヴァンジェリスト/MOONGIFT)です。ニフティクラウド mobile backendはスマートフォン、タブレットアプリやWebアプリケーションのバックエンド(サーバサイド)を支える仕組みになります。現在、SDKがiOS/Android/JavaScriptそしてUnity向けに提供されています。

今回は特にテーマがUnityということもあって、Unity SDKを使ったデモを紹介しました。

Unity向けに単にSDKをリリースしました、では利用は伸びません。ではどうするかというと、実際に使える部品を提供するのが大事です。ということで今回はユーザログイン、ハイスコアの記録そしてランキング機能の実装についてデモをします。

http://www.slideshare.net/niftycloud-mb/5–41489852

詳細はブログ記事に書いてあります。2Dゲームを選択してAsset Storeからダウンロードして、ニフティクラウド mobile backendを組み込むという一連の手順がだいたい6時間で終わります(ただし今回はJavaScriptとC#で連携するところで相当な時間がとられています)。

Unity SDKは現在、データストア/認証/位置情報検索の3機能が提供されています。今後、プッシュ通知がリリースされる予定となっています。

ニフティクラウド mobile backendはBasicプランが月200万回のAPIアクセスまで無料となっています。また、その上位プランであっても月2,000円で利用できます。

先日GitHubを使ったコミュニティがリリースされました。ニフティクラウド mobile backendを使う上で不明点があれば自由に質問ができます。

Issues · NIFTYCloud-mbaas/UserCommunity

またスマホアプリ運用支援パックとして、Expertプラン(月1,000回のAPIコール)やニフティクラウド10台まで最大2ヶ月間無料のキャンペーンを実施しています。

スマホアプリ運用支援パック | ニフティクラウド

質疑応答では以下の質問がでていました。

Q. APIのリクエスト数はデータストアに置いているものについてカウントされますか?

  1. mBaaSに対するリクエストがそのままカウントされます。また、プッシュ通知もカウント対象となっています。

懇親会も多数の方が参加いただき、時間ぎりぎりまで盛り上がっていました。次回もぜひご参加ください!