ストリーミングはほとんどのブラウザと
Developerアプリで視聴できます。
-
Game Centerダッシュボードで新しいプレイヤーにリーチする
Game Centerのアクティビティダッシュボードを活用して、新しいプレイヤーにリーチする方法をご覧ください。ダッシュボードやプロフィールを通して、ゲーム上でのプレイヤーの成績、ハイスコア、リーダーボードの変遷を追跡する仕組みについて解説します。また、Game Centerプラグインを使って、Game CenterをUnityゲームプロジェクトに追加する方法も紹介します。
リソース
関連ビデオ
Tech Talks
WWDC22
WWDC21
WWDC20
-
ダウンロード
Game Center Engineeringの Knottです 本日は 今年の Game Centerの改良点を ご説明します Game Centerは Appleのソーシャルゲーム プラットフォームで プロフィール設定をして 友達と繋ることができます
GameKitを使えば 簡単に連携可能です 自動的にサインインし 他のプレイヤーとの スコアの比較や 進捗確認ができます マルチプレイのマッチメークなどの サポートの統合も可能です
この数年間で アクセスポイントの導入や 達成項目とリーダーボードの エクスペリエンスの再設計 Friends APIの導入 マルチプレイ体験の改善ほか プレイ中のゲームを App Storeに表示するなど デバイスのさまざまな場所で Game Centerでの活動を表示したり 「プレイを続ける」や 「友達がプレイしています」といった 新しいウィジェットを 作成したりしました
今年は すべてのプレイヤーに より良い体験を提供し ゲーム内で起きている素晴らしい 体験を多数紹介し Game Centerとより簡単に 統合するための 新しいツール提供します まず Game Center内の イベントを 1つにまとめる アクティビティについて説明します でも その前に 発表があります 多くのゲーム開発者が Appleのプラットフォームで ゲーム体験を構築するために Unityを活用していますね 今年は GameKit専用に開発した Unityのプラグインを リリースします
GameKitのAPI全体を C#で提供します Unityでゲームを作るか Game Centerのゲーム機能を フル活用するか 選択を 迫られることはありません
このセッションでは Swiftと C#のコード例を 見ていきます まず 今年のGame Centerの 最大の変更点である アクティビティを紹介します ゲーム内では 新しい成績を得たり 上位にランクインしたり 友達同士で話したくなる ワクワクする出来事が たくさん起こります ダッシュボードのデザインを 再設計し ゲーム内外の 友達のアクティビティが 一度に表示できるようになり
ダッシュボードを開くと 獲得した達成項目 友達が大躍進したとき 友達がハイスコアで 勝利したことなどが 表示されます iPad・Mac・Apple TVでも 使用できます これにより プレイヤーは 友達の活動を見たり それに参加したりでき あなたのゲームや アクティビティが 発見される機会も 増えることが 楽しみでなりません もう Game Centerを 利用しているなら ゲームは既に アクティビティに表示されます まだでも 簡単に始められます Game Centerの機能を 有効にして コードを数行書いて 認証がスムーズに 行われるようにします まず ゲームのXcode プロジェクトに移動し Signing and Capabilities タブに移動してください 機能追加ボタンをクリックし Game Centerを選択します 次に App Store Connectの Appレコードで Game Centerを有効にします リーダーボードや 達成項目など Game Centerの機能も ここで設定できます GameKitをインポートし authenticateHandlerを 設定して ローカル プレイヤーを認証します このコードはなるべく 早い段階で ゲームにも タイトル画面にも 配置したいですね コールバックから利用可能な ビューコントローラがあれば ここに表示されます Unityデベロッパの場合は GKLocalPlayerで "authenticate"を呼ぶだけです この静的メソッドが認証を行い ローカルプレイヤーオブジェクトを返します これで Game Center対応に なりました! ゲームを起動すると ウェルカムバナーが表示され ゲームのアクティビティが フィードに表示されます あとはプレイヤーがアクセス できるようにするだけです Game Centerアクセス ポイントを利用しましょう アクセスポイントは Game Centerの ダッシュボードの起動に 非常に便利です コードに戻りましょう 表示は簡単です まず 表示するのに 最適なタイミングを決めます それぞれ有効な方法は 異なりますが 多くは ゲームメニューページでの 表示が理想的です それが決まれば その出現場所を設定し GKAccessPointの isActiveプロパティを trueに設定するだけです するとアクセスポイントが ゲームに表示されます C#でのGKAccessPointの 利用方法を紹介します アクセスポイントの位置を設定し isActiveをtrueにします アクセスポイントに プレイヤーがアクセスすると システムがダッシュボードを 表示します この場所でプレイヤーは ゲームについての詳細を確認でき 最近のアクティビティを確認できます あなたのゲーム独自の 達成項目やリーダーボードの 確認もできます ここでは ゲームの最近のプレイを 確認できます CloeaxとJeezzzyと私で The Coastをプレイ中です たった数行のコードで あなたのゲームは Appleプラットフォームで 幅広いゲーム体験と 結びつきながら さらなる リーチや配信が獲得できます アクティビティを発生させる 追加要素はたくさんあります まずはリーダーボードから 見てみましょう リーダーボードはアクティビティで ゲームの露出を増やす際に有効です ゲーム内で 切磋琢磨できて ゲームに戻ってくる きっかけになります リーダーボードを設定すると 友達が良い成績を 収めたときに 新しい アクティビティが見られます 私の友達がリーダーボードで 上位25%に入りました 自分のスコアを上回った 場合も表示されます Simundaneと私が 競い合ったゲームで 彼が私のスコアを 上回りました このアクティビティも プレイヤーに通知されます この通知はGame Centerから 送信されるので ユーザーに通知を オプトインするよう 求める心配はありません ゲームがリーダーボードを 提供している場合 アクティビティは 自動的に表示されます 既にリーダーボードを 活用している場合も セットを拡張して プレイヤーたちが友達と 競い合う瞬間を増やせるよう 検討してみてください 定期的に更新されるリーダーボードは タイムリーな感覚を与え 継続的なゲーム参加の きっかけになります 次に Game Centerの 達成項目が アクティビティにどのように 搭載されるかについてです 達成項目では 新たな方法でゲーム参加や プレイの進捗確認 友達と進捗の共有ができます プレイヤーがゲーム内で 項目を達成すると プレイヤーと友達の アクティビティに反映され すべて達成すると お祝いアクティビティを プレイヤーに表示します 達成項目は プレイヤーに 進歩や達成感を実感させ ゲーム内のどこまで到達したかも 教えてくれます アクティビティへの表示によって Game Centerの ソーシャルネットワーク上で 広く認知されます 友達の様子がわかるので ゲームに参加し 一緒にプレイする きっかけが増えるでしょう ここまででダッシュボード上の 表示画面を確認しました プレイヤーは友達のプロフィールに アクセスすることができます プロフィールでは最近の活動状況が まとめて確認できます プロフィールで何が 見れるかについては Game Centerで設定した プロフィールのプライバシー オプションに基づきます これがアクティビティです 同じゲーム内の友達の アクティビティを 発見したり ゲーム間の友達の活動も 確認できる場所です つまり Game Centerは 友達とのプレイや競争を より盛り上げる サポートをします アクティビティは自分だけでなく 友達の進捗も確認でき より多くの配信も提供する 素晴らしい場所です Unityの開発者にとっても 新しいプラグインによって GameKitのフル活用が 可能になりました Game Centerの機能を 最大限に引き出す方法 繰り返し使える リーダーボードの使い方 Unityゲームでの GameKitの使い方は このビデオのリンク先の セッションをどうぞ 今日は盛りだくさん でしたね 今年のアップデートで ゲームプレイヤーがより 幸せになると信じています ありがとうございました
-
-
4:11 - Authenticate the local player
// Authenticate the local player import GameKit class TitleScreenViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Authenticate the local player GKLocalPlayer.local.authenticateHandler = { viewController, error in if let viewController = viewController { // Present the view controller from Game Center. return } } } }
-
4:30 - Authenticate the local player
// Authenticate the local player using Apple.GameKit; public class MyGameManager : MonoBehaviour { private GKLocalPlayer _localPlayer; private async Task Start() { try { _localPlayer = await GKLocalPlayer.Authenticate(); } catch (Exception exception) { // Handle exception... } } }
-
5:25 - Show the Access Point
// Show the Access Point import GameKit class MenuScreenViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() GKAccessPoint.shared.location = .topLeading GKAccessPoint.shared.isActive = true } }
-
5:40 - Show the Access Point
// Show the Access Point GKAccessPoint.Shared.Location = GKAcessPoint.GKAccessPointLocation.TopLeading; GKAccessPoint.Shared.IsActive = true;
-
-
特定のトピックをお探しの場合は、上にトピックを入力すると、関連するトピックにすばやく移動できます。
クエリの送信中にエラーが発生しました。インターネット接続を確認して、もう一度お試しください。