<unity> mBaaSを使ってハイスコアランキング機能をプレハブ化してみた+前回の反省

<mBaaSとは?>

mBaaSは「mobile backend as a Service」の略称。モバイルアプリのバックエンド機能(サーバー側の機能)をSDKの形で利用できるもの。最近多くのmBaaSサービスがunitySDKを出しているのでそれらをプレハブ化できないかやってみた


<今回のやること>
・mBaaSは「ニフティクラウド mobile backend」(http://mb.cloud.nifty.com/)を利用する
・上記のunityチュートリアル(http://mb.cloud.nifty.com/doc/tutorial/tutorial.html)を参考にする
・上記のものからハイスコアランキング機能をプレハブ化する
・前回行ったログイン・サインアップ機能をプレハブ化の改善

<ハイスコアランキング機能プレハブ化>

今回のプレハブ化は簡単です。
「Unity_shooting>ShootingGame_Unity>Assets>Scenes」のLeaderBoardを開きます。
するとHierarchy内に
・GUITextLeaderBoard
・LeaderBoardManager
があると思います。
f:id:xhatenen:20140913173307p:plain

この2つをLeaderBoardというGameObjectにまとめAssetsのprefabsにドラック&ドロップしてプレハブ化します。

f:id:xhatenen:20140913174920p:plain

これでプレハブ化は終了です。

しかし問題があるようです。
何故か、「ニフティクラウド mobile backend」と接続できないようです。
これはNCMBSettingsのプレハブが呼び出せないからのようです。
LoginKitで階層構造が変わったからだと思われます。
ということで前回の改善を行いたいと思います。

<前回のログイン・サインアップ機能をプレハブ化の改善>
どうやらGameObjectの階層構造が変化しているため、別シーンからの
UserAuthのシングルトンが呼べなくなったと考えていたと思います。
今回のNCMBSettingsも同じような話だと思われますので、
その二つを分けてプレハブ化してみました。

f:id:xhatenen:20140913181835p:plain

上の図の赤い枠がそれに当たります。
こうすると前回行ったPlayerPrefsを使わず
シングルトンも呼び出せます。

また、ハイスコアランキング機能も正常に動くようになりました。