9.9K Views
May 28, 20
スライド概要
追記:
2020/8/14時点のEOS SDKではSampleFrameworks プロジェクトはAuthAndFriendsという名前に変更されています。
動画:https://youtu.be/NOoLPGENwrg
先日公開されたEpic Online Services (EOS)の概要、及び実際にSDKをダウンロードしてサンプルアプリケーションを動かす手順を説明します。
講師:Software Engineer, Developer Relations, 寺内 大起(@TerauchiDaiki)
#EGIオンラインラーニング
https://www.unrealengine.com/ja/blog/connect-with-the-unreal-engine-community-online
Unreal Engineを開発・提供しているエピック ゲームズ ジャパンによる公式アカウントです。 勉強会や配信などで行った講演資料を公開しています。 公式サイトはこちら https://www.unrealengine.com/ja/
EOS On-boarding ~サンプルを動かしてみよう~ Epic Games Japan Software Engineer, Developer Relations 寺内 大起
はじめに Epic Games は全てのゲーム開発者が利用可能なプラットフォームフリーなオン ラインサービスとして Epic Online Services (EOS)を提供します。 EOSはあらゆるメジャーなプラットフォームから利用可能な様々な機能を持って おり、どのようなエンジン/ストアとも統合可能です。 本日は、EOSの概要及びアカウント作成からサンプルアプリケーションを起動す るまでの手順を解説します。 #UE4 | @UNREALENGINE
目次 ● ● ● ● ● EOSとは 機能一覧 関連Webサイト SDKを呼び出した時の動き On-boarding steps ● ● ● ● ● ● ● 事前準備 アカウント作成 プロダクト設定 Epic Account Service設定 SDKダウンロード Sampleの起動 まとめ #UE4 | @UNREALENGINE
目次 ● ● ● ● ● EOSとは 機能一覧 関連Webサイト SDKを呼び出した時の動き On-boarding steps ● ● ● ● ● ● ● 事前準備 アカウント作成 プロダクト設定 Epic Account Service設定 SDKダウンロード Sampleの起動 まとめ #UE4 | @UNREALENGINE
EOSとは Epic Games が様々なタイトルで使用しているオンライン機能を、 無料で自由に使えるオンラインサービスとして提供するものです。 ゲームが利用するプラットフォーム、ゲームエンジン、販売するストアなどに関 して制約は一切ありません #UE4 | @UNREALENGINE
https://dev.epicgames.com/ja/services #UE4 | @UNREALENGINE
目次 ● ● ● ● ● EOSとは 機能一覧 関連Webサイト SDKを呼び出した時の動き On-boarding steps ● ● ● ● ● ● ● 事前準備 アカウント作成 プロダクト設定 Epic Account Service設定 SDKダウンロード Sampleの起動 まとめ #UE4 | @UNREALENGINE
https://dev.epicgames.com/ja/services #UE4 | @UNREALENGINE
目次 ● ● ● ● ● EOSとは 機能一覧 関連Webサイト SDKを呼び出した時の動き On-boarding steps ● ● ● ● ● ● ● 事前準備 アカウント作成 プロダクト設定 Epic Account Service設定 SDKダウンロード Sampleの起動 まとめ #UE4 | @UNREALENGINE
関連Webサイト ● デベロッパーポータル ● ● Epic Online Services ドキュメント ● ● https://dev.epicgames.com/portal/ja/ https://dev.epicgames.com/docs/services/ja/index.html Epic Online Services Support ● https://epicsupport.force.com/devportal/s/?language=ja #UE4 | @UNREALENGINE
デベロッパーポータル - ゲーム(Product) の認証情報や環境設定を管理する開発者向けウェブサイト - Organization Organization Product Sandbox - 開発者が所属する組織 - Product - EOS を利用する製品 (≒ゲーム) - Sandbox - Deployment Product が利用する環境。ハイレベ ルな設定 (外部連携サービスの設定 等)を保持する。 - Deployment - #UE4 | @UNREALENGINE Product が利用する環境。ゲームが 実際に利用するデータ(Stats, Achievements, etc)を保持する
本講義で必要な設定 ● Product ID/Sandbox ID/Deployment ID ● アプリケーション上でSDKを初期化する時に必要 ● どの環境に接続するかを指定する値 ● Client Credentials ● アプリケーション上でSDKを初期化する時に必要 (ID + Secret の値) ● アクセス元アプリケーションを表す認証情報 ● ゲームアプリケーション権限とゲームサーバ(Admin用)権限の2つがある ● Epic Account Service (EAS) ● Epicアカウントエコシステムを使用するために必要 ● Epicアカウントの認証に加えてフレンド/プレゼンス機能などを利用可能 #UE4 | @UNREALENGINE
目次 ● ● ● ● ● EOSとは 機能一覧 関連Webサイト SDKを呼び出した時の動き On-boarding steps ● ● ● ● ● ● ● 事前準備 アカウント作成 プロダクト設定 Epic Account Service設定 SDKダウンロード Sampleの起動 まとめ #UE4 | @UNREALENGINE
SDKを呼び出した時の動き 外部Identifier 認証/認可 サービス EOS Endpoint … SDK (C++ or C#) バックエンド サービス バックエンド サービス #UE4 | @UNREALENGINE
SDKを呼び出した時の動き 外部Identifier 認証/認可 サービス EOS Endpoint 環境/認証情報を設定 Product ID Sandbox/Deployment ID Client ID/Secret #UE4 | @UNREALENGINE … SDK (C++ or C#) バックエンド サービス バックエンド サービス
SDKを呼び出した時の動き 外部Identifier 認証/認可 サービス EOS Endpoint バックエンド サービス … SDK (C++ or C#) アクセスの認証 本講義ではEpic アカウントを利用するの で、EASを外部Identifierとして利用 バックエンド サービス #UE4 | @UNREALENGINE
SDKを呼び出した時の動き 外部Identifier 認証/認可 サービス EOS Endpoint バックエンド サービス … SDK (C++ or C#) アクセスの認可 Client IDのFeature設定で指定した サービス以外へのアクセスは禁止 バックエンド サービス #UE4 | @UNREALENGINE
目次 ● ● ● ● ● EOSとは 機能一覧 関連Webサイト SDKを呼び出した時の動き On-boarding steps ● ● ● ● ● ● ● 事前準備 アカウント作成 プロダクト設定 Epic Account Service設定 SDKダウンロード Sampleの起動 まとめ #UE4 | @UNREALENGINE
事前準備 ● Windows 環境 ● ● MacOSやLinuxでの手順については、公式ドキュメントを参照してください Visual Studio 2017 ● 現在動作が保証されているのは Visual Studio 2017 になります #UE4 | @UNREALENGINE
アカウント作成 デベロッパーポータルへアクセスして、 Epic アカウントを作成してください Sign Up方法については、 どのオプションでも問題ありません #UE4 | @UNREALENGINE
プロダクト設定 (1/3) 自動的に、“YOUR PRODUCTS” 以下に “My Product xxxx” という名前でProduct が1つ作成されています。 (Sandbox, Deploymentも1つずつ作成済み) ● Productを選択後、追加のAgreementをAcceptする必要あり ● ”Game Services” ページを選択、または ”Product Settings” ページ 下部の “Client Credentials” 欄にある、 “Developer Agreement” を 選択すると詳細が表示される ● Product Settingsページから、以下の情報をメモしておく ● ● ● Product ID Sandbox ID (Live) Deployment ID (Release): #UE4 | @UNREALENGINE
プロダクト設定 (2/3) アプリケーションに設定する認証情報である、Client Credentials を作成します ● 追加のAgreementをAcceptする (前ページ参照)と、“Product Settings” ページ下部の “Client Credentials”以下に “NEW CLIENT”ボタンが表示され Client Credentialsを作成出来るようになる 識別できる名前を入力 本講義では Game Client (ゲームアプリケーション権限) を選択 #UE4 | @UNREALENGINE
プロダクト設定 (3/3) Client ID作成時の ”FEATURES” 設定は、どのサービスを利用するかを宣言するも のです。宣言しているサービスのみアクセス可能となります 本講義ではテスト用なので全部Onのままで “SAVE”します ※Redirect URLは利用しないので空のままでOK Client 作成後、”Client Details”から、Client ID/Secret をメモしておきます #UE4 | @UNREALENGINE
Epic Account Services 設定(1/2) EOSのサンプルを動かすには、Epic アカウントでのログインが必須となっており ますので、Epic Account Services (EAS)の設定が必要です “Epic Account Services” ページを開くと、追加AgreementにAcceptするよう要 求されます Acceptすると、自動で1つEASアプリケーションが作成されていますので、 ”CONFITURE”を選択して詳細を設定します ● ● ● BRAND SETTINGS PERMISSIONS CLIENTS #UE4 | @UNREALENGINE
Epic Account Services 設定(2/2) BRAND SETTINGS ● Application Name と Privacy Policy URL を設定し “SAVE DRAFT” ● テストなのでPrivacy Policy URLは適当でOK (https://127.0.0.1/ 等) PERMISSIONS ● 利用するサービスを宣言する。宣言したサービスのみ利用可能。 本講義では全部”ALWAYS REQUIRED” にして ”SAVE” CLIENTS ● “Select Clients” と表示されているボックスに、先程作成したClient を 選択して “SAVE” #UE4 | @UNREALENGINE
SDKダウンロード Organization の詳細ページから、”SDK” を選択し、”DOWNLOAD SDK” からSDK をダウンロードしてください 本講義ではC++ のSDKを利用します #UE4 | @UNREALENGINE
Sample の起動 (1/3) SDKを展開後、”Samples” ディレクトリ以下にある “Samples.sln” ファイルを Visual Studio 2017で開きます SimpleFrameworkプロジェクト内にある “SampleConstants.h” を編集し、本手 順内でメモした値を記入してください ● Product ID, Sandbox ID, Deployment ID, Client ID/Secret 編集完了後、ソリューション構成、ソリューションプラットフォームを適宜選択 して、プロジェクトをビルドして下さい Samples\SimpleFramework\Bin\[指定したプラットフォーム]\[指定した構成] 以下に “SimpleFramework.exe” が生成されます #UE4 | @UNREALENGINE
Sample の起動 (2/3) Sampleへのログイン方法は2通りあります ● Account Portal ● ● ● ブラウザに遷移し、Epic Account でログインします ログイン後、EASで設定したアクセス許可画面が表示される ので ”許可する”を選択 自動的にSampleアプリには戻らないので再度開く ● この時点で認証は完了しているはず #UE4 | @UNREALENGINE
Sample の起動 (3/3) Sampleへのログイン方法は2通りあります ● Dev Auth ● ● ● ● ● ローカルで EOS_DevAuthTool.exeを起動 ● SDK\Tools\EOS_DevAuthTool-win32-x64-1.0.1 以下 サポートするPortを入力 (1024から65535の好きな値を選択) “LOGIN"を選択してEpic アカウントでログイン ログインしたユーザに識別子を設定 ● アプリケーション側が指定する値 ● “User1”など何でもOK 起動したSample側で下記を指定しログイン ● localhost:{設定したPort番号} ● 設定したユーザの識別子 #UE4 | @UNREALENGINE
#UE4 | @UNREALENGINE
目次 ● ● ● ● ● EOSとは 機能一覧 関連Webサイト SDKを呼び出した時の動き On-boarding steps ● ● ● ● ● ● ● 事前準備 アカウント作成 プロダクト設定 Epic Account Service設定 SDKダウンロード Sampleの起動 まとめ #UE4 | @UNREALENGINE
まとめ ● Epic Online Service (EOS) がパブリックリリースされました ● ● ● ● EOS の利用にはデベロッパーポータルでの設定が必要です ● ● ● ● プラットフォーム、ストア、ゲームエンジンに依らず利用可能です MatchmakingやAchievement等豊富な機能を取り揃えています デベロッパーポータルからSDKやサンプルがダウンロード可能です Product/Sandbox/Deployment Client ID/Secret Epic Account Services サンプルへのログイン方法を紹介しました #UE4 | @UNREALENGINE
ご視聴ありがとうございました! ● エピック ゲームズ ジャパン による オンラインラーニング ● ● Unreal オンラインラーニング ● ● https://www.unrealengine.com/en-US/blog/epic-online-services-featuring-epic-account-and-game-services Unreal Engine 5 初公開 ● ● https://www.unrealengine.com/ja/onlinelearning-courses Epic Online Service公開 ● ● https://www.unrealengine.com/ja/blog/connect-with-the-unreal-engine-community-online https://www.unrealengine.com/ja/blog/a-first-look-at-unreal-engine-5 アンリアルエンジン Twitter ● @UnrealEngineJP #UE4 | @UNREALENGINE