Facebookゲームに、ゲームのクライアントコードをFacebookに直接アップロードする新機能が備わりました。これにより、自分のサーバーや他のサードパーティのサーバーでクライアントコードをホスティングする必要がなくなります。この新機能は、Facebook写真や動画で使用されているのと同じ、高速で信頼性の高いインフラストラクチャを使用しているため、何百人ものプレイヤーに簡単かつ無料でリーチできます。
ホスティングされるゲームでは引き続きiframeが使用されますが、iframeを使用するためのFacebookウェブゲームURLを指定する必要なくなりました。アセットをアップロードすれば、投稿とFacebookウェブゲームURLの更新は自動的に内部で処理されます。
Facebookゲームで外部ホスティングのiframeを使う方法について詳しくは、こちらをご覧ください。
アプリダッシュボードの[製品]の下に、[ウェブホスティング]という名前の新しいタブが追加されました。この製品を追加するには、アプリのカテゴリがゲームに設定されている必要があります。
このタブには、ゲームアセットのアップロードと管理に必要なものがすべて表示されます。現在のところ、html、css、画像ファイルなどの一般的なウェブアセットの他、以下のアセットがサポートされています。
アップロードしたこれらのアプリには次の制限事項があります。
[ホスティング]タブから、アプリケーションのタイプに該当する[ホスティングタイプ]を選択します。
現在サポートされているアプリケーションのタイプは、HTML5ウェブアプリケーションとUnityのWebGLの2つのみです。個別のUnity WebGLタイプを使用すると、通常のウェブアプリケーションに影響を与えない、ターゲット固有の最適化と機能を追加で利用できます。
HTML5アプリケーションはzipアーカイブとして提供され、適用される制限はUnityのWebGLと同じになります。ゲームを読み込むと、zipアーカイブのルートにあるindex.html
が呼び出されます。
生成されるindex.html
ファイルをzipファイルのルートに配置することは非常に重要です。それ以外の場外ではコンテンツを起動できないためです。その他のURLはすべて相対パスで指定する必要があります。
./index.html
index.html
の相対パスで参照されている限り、リソースはディレクトリ構造内の任意の場所に配置できます。例えば、次のファイル
./assets/splash.png
は、次のように参照する必要があります。
<image src="assets/splash.png"/>
JavaScriptではdocument.documentURI
を通じてクエリパラメーターsigned_request
を使うことができますが、このパラメーターではなく、JavaScript SDKを使ってすべてのログインと認証の操作を実行することを強くおすすめします。JavaScriptログインの詳細については、こちらをご覧ください。
UnityのWebGLビルドターゲットはzip形式で圧縮して直接アップロードできます。
生成されるindex.html
ファイルをzipファイルのルートに配置することは非常に重要です。それ以外の場所ではコンテンツを起動できないためです。URLはすべて相対パスで指定します。
Unity 5.1では、zipアーカイブに次のものが含まれます。
index.html
Compressed/*gz
Release/*
TemplateData/*
Unity SDKでログインを処理することもできます。WebGLビルドターゲットではUnity用Facebook SDKがサポートされます。Unity用Facebook SDKについて詳しくは、こちらをご覧ください。
アセットを新たにアップロードするとステータスは[処理中]になります。アセットの準備とスキャン処理には15~90秒かかります。処理が完了すると、アセットのステータスが[スタンバイ]に変わります。
アプリケーション内のアセットを使用するには、アップロードしたアセット行の[プロダクションに移動]ボタンを選択します。
[プロダクションに移動]を選択すると、アセットのステータスが[プロダクション]に更新されます。テストアプリケーションのアセットのステータスは[テスト]になります。
アプリケーションでホスティングを初めて使う場合は、アプリケーションの[設定]タブから[シンプルアプリケーションホスティング]を有効にする必要があります。
これにより、FacebookウェブゲームURLではなく、[ウェブホスティング]タブにアップロードされたアセットがアプリケーションで使われるようになります。このオプションをオフにすれば、いつでもホスティングを停止にして、FacebookウェブゲームURLに切り替えることができます。