【CEDEC2017】Photon TrueSyncで完全同期のオンラインゲームを作ろう!(2017/8/30-9/1講演)3. アジェンダ
• 事前準備
• Photonのご紹介
• TrueSyncのご紹介
• ハンズオン
– アカウントとAppID取得
– ゲームシーン作成
– ボール作成
• ハンズオン (続き)
– ボックス作成
– 接続設定
– テスト
• おさらい
• 最後に
2
11. Photonの主な機能
• ロビー
– 名前付ロビー
– マッチメイキング
– プレイヤー検索
• ルーム
– 人数制御・表示制御
– カスタムプロパティ
• 同期関連
– オブジェクト同期
– イベント通知
– RPC (PUN)
• WebHooks/WebRPC
• オフラインモード
10
21. もしこのデモを完全同期したかったら
…
• 極端な例(座標)
– 4x4x4 = 64個のboxを同期
– 64(個) x 60(fps) x 4(ccu)
= 15360(message / s)
– ほぼ実現不可能
– ベクトルでやる場合も齟齬が生じる
r = 0.75
m = 5
v = 100
w = 32
h = 32
μ = 0.5
h,w = 1
m = 1
4x4x4
42. 壁の設置・設定#1
• GameObject -> TrueSync
-> Cube
• 名前はWallA
• Transform
Position0 9 25
Rotation 0 0 0
Scale 60 20 1
• Mesh RendererとTS
Rigid Bodyを削除
41
45. Ballの作成・設定#1
• GameObject -> TrueSync
-> Sphere
• 名前をBall
• Transform
Position 0 0.4 0
Scale 0.8 0.8 0.8
• Mesh Renderer Materials
Element 0を green
44
46. Ballの設定#2
• TS Rigid Body
Massを1
• TS Sphere Collider
Radiusを0.4
• HandsOn/PrefabへPrefab
化
• Prefab化できたら
HierarchyのBallを削除
45
56. Boxの作成・設定#1
• GameObject -> TrueSync
-> Cube
• 名前をBox
• Transform
Position0 1 0
Scale 2 2 2
• Mesh Renderer Materials
Element 0をblueに
55
57. Boxの設定#2
• TS Rigid Body
Mass 2
Linear Drag 0.1
• HandsOn/PrefabへPrefab
化
• Prefab化できたら、
HierarcyのBoxを削除
56
80. CEDEC 他セッション
• Photonセッション
– 8/30 (水) 17:50- 311+312
• PlayCanvasワークショップ
– 8/30(水) 14:50- 513
– 8/31(木) 16:30- 513
– 9/1(金) 16:30- 513
79
81. Photon & PlayCanvas 全国行脚!
• Photon TrueSyncのハンズオンとPlayCanvasの
ハンズオンが、全国を回ります!
• 2017年内は下記の予定
– 9/28(木) 札幌
– 10/27(金) 福岡 (CEDEC+KYUSHU2017前日)
– 11月 大阪 (予定)
– 12月 名古屋 (予定)
80
Editor's Notes ちょっと細かい話になってしまいましたが、ここで開発元のお話をしたいと思います。
Photonは、ドイツのハンブルクにあるExitgames社が開発しました。
Exitgames社は、トップも含めほとんどがエンジニアの集団であります。
元々はWorld Golf Tourというブラウザベースのオンラインゴルフゲームのネットワークエンジン部分をExitgames社が担当しておりました。そのエンジン部分を汎用的にサービス化したのが、このPhotonということになります。
ですので、実績を積みながら開発が続けられているのです。