(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

UnityでLobiを使う、プレイ動画編【Unity】【Lobi】


このエントリーをはてなブックマークに追加

この記事でのバージョン
Unity 4.6.3f1
Lobi 5.4.6

はじめに

前々回の導入編、前回のランキング編に引き続き、今回はプレイ動画編です!



上記の導入編が済んでいる事が前提ですのであしからず!


プレイ動画設定

まず、Lobi Developersにログインし、任意のアプリページから

REC機能をONにして、カテゴリ追加を行います。


f:id:kan_kikuchi:20150527204345j:plain


カテゴリは複数作れますし、追加や削除も簡単です。


MovieManager


次に、Lobiプレイ動画用の自作マネージャクラスをご紹介!

ランキングと比べてそこまでちゃんと使ってないので、

色々と足りていませんが、最低限の機能はあると思います!


また、SingletonMonoBehaviourというクラスを継承しているので、

そんなの知らない!って方はこちらもご確認ください。



コメントアウトが多いのはとりあえず、ドキュメントから持ってきたけど

結局使わなかったやつの名残です!ご参考までに!


MovieManagerの使い方


他のスクリプトからMovieManagerを使う例は以下の通りです。

//録画開始
MovieManager.Instance.StartCapturing ();

//録画停止
MovieManager.Instance.StopCapturing ();

//動画シェア
string title = "動画タイトル",  detail = "動画概要";
MovieManager.Instance.Share (title, detail);

//プレイ動画一覧ページを表示
MovieManager.Instance.ShowHome ();


なお、ユーザ登録& ログイン処理は前回のRankingManagerでやっており

MovieManager側ではやっていないので、併用をオススメします!


コード説明

続いて、項目ごとにMovieManagerのコード説明です!


初期化

Awake内で以下のような初期化を行っています。

// Lobi Rec SDK を使用する際は起動時に以下の設定を必ず行ってください。
#if UNITY_IOS || UNITY_IPHONE
AudioSettings.outputSampleRate = 44100;
#endif

// Lobiの動画投稿画面が閉じた時(投稿完了 or キャンセル)のコールバックを設定
LobiRecBridge.RegisterDismissingPostVideoViewNotification(
  name,
  "DismissingPostVideoViewCallback"
);


上の方はドキュメントに必ず行ってくださいとあったので、必ずやっています。

下の方は動画投稿orキャンセル時のコールバックを設定しています。

ちなみにコールバックメソッドでは受け取ったメッセージを表示しているだけです!!


録画開始

録画開始は以下の通り、諸々の設定を行ったのち、

LobiRecBridge.StartCapturingを使って行います。

LobiRecBridge.SetMicEnable(false);         // 実況用のマイクを設定する
LobiRecBridge.SetMicVolume(1.0f);          // マイクの入力音量を指定する
LobiRecBridge.SetGameSoundVolume(0.2f);    // ゲームの入力音量を指定する

//LobiRecBridge.SetLiveWipeStatus(LobiRecBridge.LiveWipeStatus.InCamera);    // 実況用にカメラを有効にする
//LobiRecBridge.SetWipePositionX(100.0f);                                    // 端末左端からの位置を指定する(non-retina)
//LobiRecBridge.SetWipePositionY(100.0f);                                    // 端末上端からの位置を指定する(non-retina)
//LobiRecBridge.SetWipeSquareSize(100.0f);                                   // ワイプのサイズを指定する(non-retina)

LobiRecBridge.SetCapturePerFrame(1);    // 何フレームに一度録画するか指定する。
LobiRecBridge.StartCapturing();         // 録画開始


録画開始前の設定でマイクや内側カメラの設定を行います。


録画停止

録画停止は以下の通り、LobiRecBridge.StopCapturingを使って行います。

LobiRecBridge.StopCapturing();


楽!


動画シェア

動画シェアは以下の通り、LobiRecBridge.PresentLobiPostを使って行います。

LobiRecBridge.PresentLobiPost(
  title,                // 動画タイトルを設定します。
  detail,               // 動画詳細を設定します。
  0,                    // ゲームで獲得した得点等を設定します。
  "SCORE"               // 得点に紐づくカテゴリを設定します。
);


なお、シェアされる動画は一番最近撮ったやつに自動でなるようです。


動画一覧表示

動画一覧表示は以下の通り、LobiRecBridge.PresentLobiPlayを使って行います。

//動画一覧表示
LobiRecBridge.PresentLobiPlay();

//exidが「hoge」のユーザーの動画一覧
LobiRecBridge.PresentLobiPlay("hoge", "", false, "");

//カテゴリーが「moge」の動画一覧
LobiRecBridge.PresentLobiPlay("", "moge", false, "");

//実況付きの動画一覧
LobiRecBridge.PresentLobiPlay("", "", true, "");

//動画メタデータを使って絞り込んだ動画一覧
LobiRecBridge.PresentLobiPlay ("", "", false, "{\"stage\":\"\",\"boss\":\"ドラゴン\"}");


上記の通り、引数で表示したい動画の種類を指定できます。


ニコニコ動画へシェア

初期状態だとニコニコ動画へのシェアが出来ないのですが、以下の通りにすすめると

意外と簡単にシェア出来るようになりました。もちろん無料!

1. ニコニコスマホSDKのご案内より、

ニコニコOAuthシステム クライアントIDの作成を選択します。
必要項目を全て記入し、クライアントID作成申請を行います。
フォームに入力したメールドレス宛に登録申請完了通知が届き、別途、クライアント情報が送付されます。
クライアント情報より下記IDが記されていることを確認します。
ニコニコOAuthシステムのクライアントID
ニコニコOAuthシステムのクライアントシークレット


2. 登録アプリ一覧画面より、

ニコニコ動画へアップロード機能を利用するアプリを選択します。
Rec機能、Rec基本設定を選択します。
「ニコニコ動画投稿機能に関する情報」に下記IDを入力してください。
ニコニコOAuthシステムのクライアントID
ニコニコOAuthシステムのクライアントシークレット


3. LobiRecSDK導入アプリ、「動画投稿画面よりニコニコ動画へ投稿するボタンが表示されていることを確認します。

LobiSDK FAQ · kayac/Lobi Wiki · GitHub


申請をするだけで、Unityやプログラム側でやることは特にありません。


おわりに

とりあえずUnityでLobiを使うシリーズは以上です。

使い勝手が結構良いのでオススメです!

欲を言えば、チャット機能復活してほしいな〜|д゚)チラッ