Gamecenter概説
Upcoming SlideShare
Loading in...5
×
 

Gamecenter概説

on

  • 10,721 views

 

Statistics

Views

Total Views
10,721
Views on SlideShare
10,528
Embed Views
193

Actions

Likes
4
Downloads
21
Comments
0

2 Embeds 193

http://d.hatena.ne.jp 189
http://www.linkedin.com 4

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Gamecenter概説 Gamecenter概説 Presentation Transcript

  • Game center 概説
  • 全体概要
    • Game Center の機能は 3 種に分かれる
      • Game Center アプリケーションはユーザが個人のアカウントを作成する スタート地点 である
        • ユーザは Game Center にサインインし、ハンドルネームを使用して、他のプレイヤーと匿名で 交流する
          • プレイヤーはステータスメッセージを設定したり、友人を招待したり、” automatching” により、マルチプレイヤーゲームを開始することなどができる
      • Game Kit API はゲーム開発者が Game Center に
  •  
  • プレイヤーの認証
    • Game Center において、各ユーザ ( プレイヤー ) が認証するためのアカウントを作成することができる
      • Game Center の機能を使用する前に、まずユーザを認証しなければならない
    • ユーザが Game Center 認証を行った後は、そのデバイスにおいて、 期限なく有効となる
      • すべてのアプリは 再認証することなく 、ユーザを認証することができる
    • 同一デバイスにおいて複数の人物が Game Center のゲームを使用する可能性について留意しなければならない
      • アプリがゲームデータを保持するのであれば、このデータをユーザごとに保管し、 それぞれをユーザのプレイヤー情報と紐づけるべきである
    • プレイヤーは「エイリアス」 (alias) とよばれるアカウントを作成、管理でき、このアカウントを使用し、 Game Center における認証を行う。
  •  
  • Leaderboard の使用に関して
    • Leaderboard によりプレイヤーはスコアを他のプレイヤーと比較し、ランキングを確認したりすることができる
    • Game Center はアプリケーションに対し、”全体 leaderboard” と最大 25 の” category” に分かれた leaderboard を提供する
      • “ category” により各 ゲームモード がそれぞれのベストスコアのリストを保持することができる
      • “ category” の例として、 レベルやコースごとにゲーム難易度を設定することができる
    • Leaderboard を複数 category にて設定した場合、 default カテゴリの leaderboard がゲームにおいて表示される
  • Leaderboard の使用に関して (2)
    • ユーザの エクスペリエンス を最適化するため、アプリは表示に必要な部分のみの leaderboard データを取得すべきである
      • 一度に leaderboard 全体をダウンロードしてはならない
    • Leaderboard の割り当ては拡張を考慮したものにすべきである
      • アプリのあるバージョンにおいて、 leaderboard を有効にした場合、無効にすることはできない
  •  
  •  
  •  
  • Achievement
    • ” achievement” により、アプリにおいて、ゴールを設定することができる。
      • 何かの目標に到達した場合、および、動作を起こす場合に達成できる
    • “ achievement” ポイントはゲームのすべてのバージョンにおいて有効となる。
  • Achievement の通知
    • プレイヤーが achievement の達成に近づく過程で、アプリはその進み具合を 0% から 100% までのパーセント表示で Game Center へ通知すべきである
      • 進捗が 100% になったときに achievement が達成され、プレイヤーに対し、達成されたという表示がなされる
      • Achievement の進捗を決めるのは自由である
      • プレイヤーへの achievement の通知方法は自由に決めてよい
      • ゲームの achievement は Game Center アプリケーションから見ることができ、プレイヤーがゲーム内で achievement の閲覧を許可することもできる
  • Achievement Points
    • Achievement の達成により、プレイヤーに対し、” point” を付与する
    • 各 achievement に対し、達成したときに得られる point を設定できる
    • 各アプリの” achievement” の総計は 1000 点である
    • 一つの achievement により最大 100 point まで得られる
    • Achievement のリセット
      • Achievement のリセットはユーザの明示的な動作でなければならない
    • Achievement と複数デバイス
      • プレイヤーは複数デバイスにおいてゲームをロード可能である。
      • アプリが一つのデバイス上で進展があった場合、 その進展情報は Game Center により、他のデバイスに通知される
        • しかし、アプリのゲーム状態は同期されていない可能性があることは留意すべきである
  •  
  • マルチプレイヤー機能
    • マルチプレイヤーゲームにおいてプレイヤーが相互に発見し、一緒に遊ぶことができる。
      • 次のような使い方ができる
        • 友人を試合に招待
        • オートマッチング機能によって Game Center が自動的に他のプレイヤーを探す
        • 上記を併用する
    • 想定される使い方として、ゲームのプレイヤーが友人とマルチプレイヤーマッチを行いたい場合を考える
      • アプリにおいて、標準の対戦相手募集のインタフェースを表示することにより、 ユーザは友人を試合に呼ぶことができる 。
  •  
  • “ Invitation” の処理
    • アプリは ” invitation handler” を実装することにより、マルチプレイヤーの invitation を処理できる
      • Invitation を速やかに処理するためには、アプリが実行されてすぐにプレイヤーを認証し、” invitation handler” を実行することが重要である
  • Matchmaking のカスタマイズ
    • Game Kit API の” player groups” と” player attributes” により、アプリにおいて auto-matchmaking ビヘイビアをカスタマイズすることができる
      • “ Player group” により、一緒にゲームに参加を希望する論理グループを設定できる
        • 例として、レースゲームにおいて、各コースに対し” player group” を設定することにより、同じコースを選んだプレイヤーだけが auto-match されるようにできる
  •  
  • プレイヤー間のコミュニケーション
    • Game Kit API はネットワーク通信のために便利な抽象化がなされており、ゲームの参加者間において、データや、音声の転送を行う
      • API はネットワークメッセージのフォーマットは定義しない
        • メッセージを転送すべきデータとして、扱う
      • Game Center はピアツーピア接続のネットワークを作成し、試合中のすべての参加者を接続する
        • Game Center は最大 4 人のプレイヤーのピアツーピア間通信をサポートする
      • Game Kit API により転送されたデータは TCP/UDP の両方の方式で 送信可能である
  •  
  •  
    • 複数のデバイスにおいて Game Center 対応のゲームを使用する可能性を考える。
      • アプリが一つのデバイスから” achievement” についての進展を報告した場合、 Game Center から他のデバイスへその” achievement” の 進展 情報が伝えられる。
  •  
  • ピアツーピア通信
    • Matchmaking サービスにより提供され、データや音声情報を送信するための簡単なインタフェースを提供する。
    • アプリによって複数の音声チャンネルを作成でき、それぞれが試合中のプレイヤーの一部という形 となることができる
      • 一例として、複数のチームは各チームごとに独立なチャンネルを作成できる
    • 自社のサーバにおいてゲームをホスティングする場合
      • 例: ゲームのルールを 監視、永続的データを保持する場合
      • “ Hosted match” という形をとる
      • Game Center では最大 16 人のプレイヤーがホスト経由で通信ができる
    • ホストされた試合は通信のため、一般的に中央のハブを 使用する 。
    • ホストされた試合を作成するには、ネットワーク機能の実装、およびサーバをホストとして提供することが必要になる。
  • ボイスチャットの追加
    • Game Center ではゲーム内ボイスチャットをサポートしている
      • 複数のボイスチャットチャンネルを作成することが可能である
      • あるプレイヤーがチャンネルに通話すると、同じチャンネルに接続された参加者のみがそれを聞くことができる
      • Wifi でのピアツーピア接続で サポートされている
  •  
  • Game Center サービスの 使用に関して
    • Game Center サービスは GameKit API によりアクセスでき、以下の サービス を提供する
      • プレイヤーの認証
      • leaderboard/achievement のデータ
    • Game Center サービスは接続できなくなる可能性があり、アプリケーションはネットワーク障害への対応をしなければならない
      • 通信時には常にネットワークエラーの有無をチェックしなければならない
    • エラーの際は、 leaderboard と achievement の更新を保存し、後で再送信すべきである
  • Game Center サービスの 使用に関して (2)
    • Game Center サービスにより管理されているデータはアプリケーションに必要なサービスや機能を提供するべきである。
      • Game Center leaderboard データをウェブサイトや、他のサービスに掲載してはならない
    • アプリは使用するデータのみ、サービスにクエリを送信すべきである
      • Leaderboard 全体を一度にダウンロード したりしてはならない
  •  
  • Game Center sandbox の使用に関して
    • 開発の際、 Game Center の機能が正常に動作しているかアプリのテストをすべきである
      • Sandbox 環境を使用し、アプリケーションをテストすることが可能である。
    • デベロッパーとして、 Game Center アカウントはテスト用に sandbox 環境にログインするか、すでに ライブ なゲームを使用するために本番環境にログインするかのどちらかでなければならない
  •  
  • Game Center と他のソーシャルネットワークの使用に関して
    • Game Center と他のソーシャルネットワークを同一アプリにおいて使用する際には、いくつかの条件に従わなければならない
      • Friends
        • すべての Game Center の friend connection は Game Center アプリを通じて作成される
          • 他のネットワークより friend list をインポートする機能はない
        • Friend および、関連データを他のネットワークサービスに提供してはならない
      • Leaderboard
        • Game Center leaderboard データをダウンロードし、他のネットワークへ提供してはならない
        • スコアをアプリから Game Center と他のネットワークの両方に通知することは問題ない
        • アプリがプレイヤーのベストスコア情報を持っていたり、それを 取得できる場合 、それを Game Center に通知してもよい
  • Game Center と他のソーシャルネットワークの使用に関して (2)
    • Achievement
      • Game Center の achievement データをダウンロードし、そのデータを他のネットワークに提供してはならない
        • アプリが achievement を Game Center と他のネットワークに同時に通知してもよい
    • マルチプレイヤーの招待
      • Game Center を用いて他のネットワークへゲーム招待を行ってはならない
      • 他のネットワークから Game Center ゲームへ招待を行ってはならない
    • ゲーム内ボイスチャット
      • Game Center ボイスチャットを他のネットワークや 同一 Game Center アプリ以外からの 使用についてはサポートしない
  •  
  •