SlideShare a Scribd company logo
1 of 82
Download to read offline
Unityだったら簡単!
マルチプレイ用ゲームサーバ開発
~実践編~
株式会社ミクシィ
小端 みより
3
小端 みより (ゲームエンジニア)
コンシューマゲーム業界から株式会社ミクシィに入社
未発表タイトルを含む、複数の新規タイトル開発を行う
(すべてがオンラインマルチプレイ対応)
自己紹介
Unityサーバを作るまで
4
5
リレーサーバを用いたマルチプレイ実装が主流
これは結局のところP2P型の通信モデルなので、
サーバは原則的にロジックに関与しない
つまりクライアント処理型の実装ということ
これまでのマルチプレイ実装
クライアント処理型
6
リレーサーバを用いたマルチプレイ実装なので
次のようなメリットがある
— 対応したミドルウェアやサービスが豊富
— クラウド型のサービスならサーバ不要であり手軽
— クライアントで完結するのでプロトタイピングに最適
その一方で
7
— クライアント処理なのでチートされやすく
通信も不安定になりやすい (ホストマイグレーションなど)
— 実装が複雑化しやすい傾向にあり大人数もしくは
大規模なタイトルの開発は難しい
と決して万能ではない
それならば
8
クライアント処理型で難しかった
— チート耐性および通信の安定性を備え持ち
— リアルタイムで大人数、大規模なマルチプレイゲーム
これらを実現するために、専用サーバを用いた
サーバ処理型の実装にすればよい?
でも専用サーバ開発って
9
— サーバを実装するのって言語とかが違って難しそう
— どうやって作ればよいのかわからない
— クライアント処理型の手軽さに及ばない
こういったネガティブな印象がある気がする・・
極論として
10
PU〇GやF〇rtniteのようなゲームを気軽に開発できるような
そんな便利な方法があったら嬉しいですよね
(いや・・そんなことできるのか・・・???????)
11
我々にはUnityがあります!
Unityサーバは
12
その名の通りUnityで作る専用サーバなので
— 我々が得意(ですよね?)とするC#で実装できる
— Unityの機能、AnimationやPhysicsやAIを活用できる
— サーバとクライアントを同時に単一プロジェクトで開発
などなど
13
よさそうですね・・?
というわけで実際に作ってみます
目標を高めに設定
14
技術難易度の高いことに挑戦すれば幅広いゲームジャンルに
対応できるはず・・という理由で
— アクション性の高いオンラインマルチプレイのゲーム
— サーバとクライアントを単一Unityプロジェクトで作成
(サーバはLinux、クライアントはiOS/Android上で動作)
— サーバをクラウド上で動作させ20人以上でマルチプレイ
おおまかな設計
15
— サーバ集中処理型の通信モデルを採用し
上り/下り共に非同期的に最大で毎秒30回の通信を行う
— ゲームは60FPSで動作し (物理は30FPS)
DOTSでなく使い慣れたコンポーネントモデルを採用
— サーバ/クライアント間でコードおよびアセットを共有し
Editor上で任意にサーバやクライアントを実行可能
サーバ集中処理型とは
16
非常にシンプルな構成ですね
クライアント A
ゲームサーバ
1. 入力を送信
2. アップデート
3. 結果を送信
クライアント B
4. 結果を表示
ただし
17
次のような懸念点が考えられる
— サーバ集中処理型は設計をシンプルにできる一方で
ネットワーク遅延の影響が大きそう
— 特にアクションゲームにおいてどれほど影響を与えるのか
そもそもちゃんとゲームプレイが成立するのか
18
と、いう感じで我々は
Unityサーバの開発を開始したのであった・・
そして、その中で直面した課題と
その解決方法について次章で説明していきます
Unityサーバ
7つの課題と解決法
19
7つの課題とは
20
Q1 どの通信ライブラリを使えばいい?
Q2 TCPとUDPどっちを使う?
Q3 再送制御による遅延を回避するには?
Q4 MTUって何?
Q5 ラグはなくせるのか?
Q6 サーバとクライアント同一プロジェクトで管理できる?
Q7 専用サーバをどうやって運用したらいい?
21
Q1
どの通信ライブラリを使えばよい?
Unity公式のもの
22
(UNETのことはもう忘れよう・・)
— Unity Transport Package (com.unity.transport)
https://github.com/Unity-Technologies/multiplayer
— マニュアルやサンプルプロジェクトを見れば簡単
— DOTSなどの新機能にも対応
— ただし現時点においてプレビュー版である点に注意
非公式ライブラリ
23
非公式のC#で書かれた通信ライブラリも利用可能
— 例としてはLiteNetLib
https://github.com/RevenantX/LiteNetLib
— RUDP(TCPライクに扱えるUDP)通信ライブラリ
— 認証付きコネクションやMTU探索、IPv6にも対応
— こちらもシンプルで扱いやすい
Unity公式ブログに
24
ゲーム設計によってどんな実装を行うのが望ましいかという
フローチャートがあるのでこちらもご覧ください
Navigating Unity’s multiplayer Netcode transition
https://blogs.unity3d.com/2019/06/13/navigating-unitys-
multiplayer-netcode-transition/
結論
25
— 公式のMultiplayerパッケージがわかりやすく新機能も
サポートしているが、まだ開発中なので注意
— 現時点においてはLiteNetLibのようなライブラリが選択肢
となるため、我々はこれを採用した
26
Q2
TCPとUDPどっちを使う?
初めて使うならTCP
27
— ポピュラーなので情報が多い(HTTPやWebSocketもこれ)
— プロトコルとしての信頼性が高く扱いやすい
— なので通信実装の入門用に最適
ただし
— リアルタイム性を要求される通信において問題がある
なぜTCPは信頼できる?
28
— 確認応答(Ack)および再送制御
相手に届いたことが確認できるまで送信を繰り返すので
コネクションが維持されている限り必ず届く
— 順序制御
受信時シーケンス番号をもとに並び替えが行われるので
送信順序と受信順序が必ず一致する
再送制御による遅延の問題
29
一旦パケットロスが生じて再送制御が行われている間、
順序制御により以後の受信がドミノ倒し的に遅延してしまう
受信側
送信側
1 2 3 4 5 6
1 (2はまだ・・?)
2
2,3,4,5
TCPの設計思想は
30
”どんなに遅れても順序通り必ず届く” なので仕方がない
しかしこの特性は
毎秒何十回という頻度で通信を行い、即時到達性が要求
されるゲーム用途において、非常に致命的である
結論
31
— 情報の充実性や信頼性においてTCPは優れており、
入門用に最適である
— 一方遅延を生じやすい性質のため、
アクション性を重視するゲームジャンルに適さず
我々はTCPを採用しなかった
32
Q3
再送制御による遅延を
回避するには?
そこで出番のUDP
33
— データグラムと呼ばれるシンプルな通信操作のみ行える
— コネクション処理も再送制御も順序制御も存在しない
— だから遅延が生じにくい
— 逆に信頼性を要求される用途では工夫が必要
UDPで信頼性を得るには
34
RUDP(ReliableUDP)として知られる実装が有効
ただしこれは一般に、
再送制御や順序制御をUDP上で実装したものであって
TCP同様に再送制御による遅延が発生する
ではどうするか・・?
“Redundant”UDP
35
— 送信メッセージを冗長化させることにより
一定のパケットロス耐性を持たせた実装
— ただし冗長性を上回る量のパケットロスが発生した場合
対処できないため別途、復帰処理を実装する必要がある
冗長化の例
3636
受信側
送信側
1,-,-
1 2 3,4 5
2,1,- 3,2,1 4,3,2 5,4,3
再送制御なしでも冗長性の範囲ならメッセージを復元できる
結論
37
— UDPは低遅延である一方で信頼性に問題がある
— しかしUDPとメッセージの冗長化を組み合わせることで
TCPでは難しかった低遅延と信頼性が両立できるので
我々はこの方法を採用した
38
Q4
MTUって何?
MTUとは
39
— 1回の通信で転送可能なデータグラムの上限サイズ
≒ メッセージサイズの上限
— そのサイズわずか576~1500バイト
(通信経路によって変動する)
— 超過した場合はパケットの分割が行われるか
そもそも到達しない
つまり
40
一度に送信できるメッセージのサイズは限られる上に、
前記の冗長化テクニックと組み合わせるとさらに少なくなる
(MTU 1500 / 3 で1フレームあたり 500バイト以下とか・・)
なのでメッセージサイズをギリギリまで削減する必要がある
メッセージサイズを削減するには
41
— プレイヤーの視界外のオブジェクトをカリングする
— 対象オブジェクトとの距離や優先順位に応じて
通信頻度を落とし、通信のタイミングを分散させる
— データそのものを圧縮する
float -> half 変換などが定番 (値域と精度に注意)
カリングおよび通信分散
42
プレイヤーキャラクタやNPC、近くのオブジェクトを優先
2
3
4
1
デルタ圧縮
43
その他にはデルタ圧縮というテクニックもある
— 送信内容をキャッシュしておく
— 次回の送信時にキャッシュと比較し更新された
オブジェクトやプロパティのみを送信する
(全く更新されていないなら、そもそも送信を行わない)
またZlibなどの
44
圧縮ライブラリを組み合わせる手もあるが・・
— 圧縮後のサイズがわからないと使いづらい
(逐次圧縮可能なライブラリならあるいは)
— 前記のテクニックにより元々のデータが効率的な配列に
なっている場合はあまり有効でなかったりする
結論
45
— UDPのメッセージサイズはMTUに依存するだけでなく
冗長化テクニックにより、さらに制限される
— 我々はカリングやデルタ圧縮などのテクニックを
組み合わせることにより、メッセージサイズを削減
することにした
46
Q5
ラグはなくせるのか?
ラグはなぜ発生するのか
47
一般に ”ラグ = 通信遅延” と思われがちだが
近年の通信環境の改善により、国内であれば通信遅延は
非常に小さい (東京都内~データセンタ間で1、2ミリ秒)
実際には、前記の再送制御により生じる一時的な遅延や
通信サイクルに起因する遅延の影響が大きい
そもそもオフラインゲームでは
48
タイミング次第で入力の反映に17ミリ秒の揺れ幅が生じる
17ミリ秒 (= 1000 / 60)
アップデート レンダリング待機ダリング 待機
入力の反映
通信サイクルによる遅延
49
通信サイクルが33ミリ秒の場合、タイミング次第で遅延に
最大66ミリ秒の振れ幅が生じる
Server
Client
ベスト ワースト
というわけで
50
オンラインゲームは宿命としてラグが発生するものであって
また遅延量に、かなりの振れ幅があるということ
(遅延が一定であると見なしてはいけない)
これを踏まえた上で、体感上のラグを打ち消すための
テクニックを利用したい
時刻差異を利用する例
51
— サーバと各クライアント間でゲーム時刻を同調しておく
— サーバでは送信する際にメッセージにその時点の
ゲーム時刻を書き出しておく
— クライアントはこのメッセージ上の時刻とクライアントの
時刻の差異を利用し、体感上のラグを相殺できる
例えば位置予測
52
#1: 0.00秒
(0.0, 0.0)
#2: 0.10秒
(2.0, 1.0)
今(予測): 0.15秒
(3.0, 1.5)
前回の時刻および座標から、現時点の位置を予測できる
結論
53
— オンラインゲームにおいてラグは宿命であり、なおかつ
遅延の量は常に一定ではない
— 我々はサーバとクライアント間の時刻差異を利用した
位置予測などのテクニックで体感上のラグを
打ち消すことにした
54
Q6
サーバとクライアント
同一プロジェクトで管理できる?
同一プロジェクトだと
55
— サーバとクライアントで使用するアセットやコードが混在
— しかしサーバ実行時にTextureやAudioClipは必要ない
(消費メモリやロード時間が長くなるだけ)
つまりビルド設定に応じて
使用するアセットを切り替えられることが望ましい
シーンおよびアセットは
56
— その名称だけでサーバ用なのかクライアント用かを
区別できるようにしておく
(名称に”_Client”のようなサフィックスを含めるなど)
— こうしておけばビルド用のスクリプトで対象外のアセットを
除外することができる
57
サーバ実行時のシーンビュー
(Rendererなどを除去)
クライアント実行時の
Editorシーンビュー
コードの分割
58
— サーバとクライアント間で共有したくないコードは
AssemblyDefinition を使用すれば除外することができる
(ただし異なるアセンブリ間は循環参照できないので注意)
— ただし現状(Unity2019.1)、DefineConstraints
(シンボル定義に応じ含める/含めないを切り替えられる)
の挙動が怪しいので今後の修正に期待したい
結論
59
— 各シーンやアセットがサーバ用かクライアント用か判別
できるようにしおけば、ビルド時に切り替えられる
— AssemblyDefinitionを使えば使用するコードの切替も
可能であり、我々はビルド用スクリプトでそれらを切り替え
られるようにした
60
Q7
専用サーバをどうやって
運用したらいい?
ホスティングサービスの利用
61
— 例としてはAWSのGameLiftというサービス
https://aws.amazon.com/jp/gamelift/
— ゲームサーバのホスティングに特化されている
— サーバのバイナリをアップロードすれば、起動や監視
オートスケーリングなどの運用を自動でやってくれる
— Unity向けのSDKも提供されている
注意点として
62
— 一般的なEC2インスタンスではGPUをサポートしていない
ので、サーバはHeadlessモードでビルドする必要がある
その他にも
63
Azureなどホスティングサービスの選択肢があり、
今後はUnity公式のホスティングサービスも開始されるはず
専用サーバの利用はより手軽になっていくことが予想される
結論
64
— ホスティングサービスを利用することで、
専用サーバは比較的手軽に運用することができる
— 我々はホスティングサービスのうちのひとつである
GameLiftを利用する事にした
Unityサーバを開発してみて
まとめ
65
これらは結局どうだった?
66
— クライアント処理型で難しかった
チート耐性や通信の安定性、大人数や大規模なゲーム
— 専用サーバのネガティブな印象
言語、作り方がわからない、手軽さが損なわれないか
— サーバ集中処理型の懸念点
遅延がどの程度影響するのか、ゲームとして成立するのか
これらは結局どうだった?
67
— クライアント処理型で難しかった
チート耐性や通信の安定性、大人数や大規模なゲーム
— 専用サーバのネガティブな印象
言語、作り方がわからない、手軽さが損なわれないか
— サーバ集中処理型の懸念点
遅延がどの程度影響するのか、ゲームとして成立するのか
チート耐性は
68
— サーバ集中処理型はクライアント側で行える操作が
限られるため基本的にチート耐性は高いと考えられる
— とはいえ、パケット分析による自動化ツール作成などが
想定されるため、通信の暗号化を行う必要がある
通信の安定性は
69
— ほんとうに通信状態が悪い場合、を除き安定的に動作した
— とはいえ WiFi <-> キャリア回線 の切り替わりなどでは
切断を生じるため、再接続および復帰処理の実装が重要
大人数や大規模なゲームにも
70
— プロファイラを使用しサーバの通信処理を最適化
最終的に1スレッドあたり40人程度まで捌けるように
— 無論このあたりの数値はゲームデザインに依存するもので
あり、逆にリアルタイム性が重視されないジャンルならば
100人規模であっても対応できるのではないか
これらは結局どうだった?
71
— クライアント処理型で難しかった
チート耐性や通信の安定性、大人数や大規模なゲーム
— 専用サーバのネガティブな印象
言語、作り方がわからない、手軽さが損なわれないか
— サーバ集中処理型の懸念点
遅延がどの程度影響するのか、ゲームとして成立するのか
やってみると意外に簡単
72
— やはりC#や.NETなど普段から使い慣れているUnityの
開発環境がそのまま使えるメリットは大きい
— もちろんネットワークの知識は必要とされるものの
そこを身に着けさえすれば、通常の開発とそう大差はない
— Unityだからこそのデバッグのしやすさもある
手軽さも損なわれない
73
— サーバとクライアントが単一プロジェクトで完結できる
という点では手軽
— もっとも、ホスティングサービス上でサーバを動作させる
ため更新の都度、バイナリをデプロイする必要があり手間
— ローカル環境上でサーバを起動し、クライアントから
直接接続できるしくみを用意しておくと捗る
これらは結局どうだった?
74
— クライアント処理型で難しかった
チート耐性や通信の安定性、大人数や大規模なゲーム
— 専用サーバのネガティブな印象
言語、作り方がわからない、手軽さが損なわれないか
— サーバ集中処理型の懸念点
遅延がどの程度影響するのか、ゲームとして成立するのか
遅延も対策すれば怖くない
75
— 通信ライブラリのドロップ&遅延シミュレーションの機能で
低品質な通信環境を前提としたテストが行える
— これによりUDP+冗長化や、位置予測などの遅延対策が
正しく動作することを確認できた
— ダメ元で50ms程度遅延させてみたところ・・
“まあ、すごくラグいけど操作できなくもない”
むしろ・・
76
モバイル機器では負荷の高いPhysicsなどの処理を
オフロードでき、クライアントの負荷を軽減できる
77
そして・・
社内プレイ会のもよう
78
その他ここがよかった
79
— 使い慣れた言語&エンジンなので、通信のハードルさえ
乗り越えればゲームロジックの実装に集中できる
— Editor上で直接サーバとクライアントをデバッグや
プロファイリングできるので作業効率が高かった
— Unityを扱える企画メンバーがゲームを直接、拡張できる
今後の課題
80
— サーバとクライアントのコードが混在しているがゆえの
紛らわしさがあるため、より分離性のある設計にしたい
— Unityサーバ開発を基盤化し、他のプロジェクトでも
手軽に扱えるようにしたい
今後、機会があればもっとUnity寄りの話などできれば・・
81
本講演は以上です
皆様もぜひ試してみてください
ご清聴ありがとうございました
82
Ver. 2019_09_24_1

More Related Content

What's hot

What's hot (20)

【Unity】 Behavior TreeでAIを作る
 【Unity】 Behavior TreeでAIを作る 【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
 
文脈を操る美しきZenjectプロジェクトからの眺め 〜Contextの扱い方と活用方法〜
文脈を操る美しきZenjectプロジェクトからの眺め 〜Contextの扱い方と活用方法〜文脈を操る美しきZenjectプロジェクトからの眺め 〜Contextの扱い方と活用方法〜
文脈を操る美しきZenjectプロジェクトからの眺め 〜Contextの扱い方と活用方法〜
 
UniTask入門
UniTask入門UniTask入門
UniTask入門
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
 
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
 
「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム
「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム
「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム
 
Unityでパフォーマンスの良いUIを作る為のTips
Unityでパフォーマンスの良いUIを作る為のTipsUnityでパフォーマンスの良いUIを作る為のTips
Unityでパフォーマンスの良いUIを作る為のTips
 
なぜなにリアルタイムレンダリング
なぜなにリアルタイムレンダリングなぜなにリアルタイムレンダリング
なぜなにリアルタイムレンダリング
 
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
 
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
 
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
 
MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~
 
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
 
UnityでUI開発を高速化した件
UnityでUI開発を高速化した件UnityでUI開発を高速化した件
UnityでUI開発を高速化した件
 
Observableで非同期処理
Observableで非同期処理Observableで非同期処理
Observableで非同期処理
 
【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす
【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす
【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす
 
UE4でマルチプレイヤーゲームを作ろう
UE4でマルチプレイヤーゲームを作ろうUE4でマルチプレイヤーゲームを作ろう
UE4でマルチプレイヤーゲームを作ろう
 
【Unite Tokyo 2018】誘導ミサイル完全マスター
【Unite Tokyo 2018】誘導ミサイル完全マスター【Unite Tokyo 2018】誘導ミサイル完全マスター
【Unite Tokyo 2018】誘導ミサイル完全マスター
 
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
 

Similar to 【Unite Tokyo 2019】Unityだったら簡単!マルチプレイ用ゲームサーバ開発 ~実践編~

VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
モノビット エンジン
 
Hpc server講習会第3回応用編
Hpc server講習会第3回応用編Hpc server講習会第3回応用編
Hpc server講習会第3回応用編
Osamu Masutani
 

Similar to 【Unite Tokyo 2019】Unityだったら簡単!マルチプレイ用ゲームサーバ開発 ~実践編~ (20)

VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報 - モノビットエンジン - GTMF 2018 O...
 
Aiming のクラウド採用基準
Aiming のクラウド採用基準Aiming のクラウド採用基準
Aiming のクラウド採用基準
 
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
VRライブ・コミュニケーションサービス「バーチャルキャスト」でのモノビットエンジンの採用事例と最新情報
 
【CEDEC2017】新しくなったモノビットエンジンを使って10万人規模のサーバを構築するノウハウを公開!
【CEDEC2017】新しくなったモノビットエンジンを使って10万人規模のサーバを構築するノウハウを公開!【CEDEC2017】新しくなったモノビットエンジンを使って10万人規模のサーバを構築するノウハウを公開!
【CEDEC2017】新しくなったモノビットエンジンを使って10万人規模のサーバを構築するノウハウを公開!
 
【モノビットエンジン勉強会inサイバーコネクトツー】 第一部「モノビットエンジンVer2.0シリーズ概要」
【モノビットエンジン勉強会inサイバーコネクトツー】 第一部「モノビットエンジンVer2.0シリーズ概要」【モノビットエンジン勉強会inサイバーコネクトツー】 第一部「モノビットエンジンVer2.0シリーズ概要」
【モノビットエンジン勉強会inサイバーコネクトツー】 第一部「モノビットエンジンVer2.0シリーズ概要」
 
「Monobit Revolution Server」のご紹介
「Monobit Revolution Server」のご紹介「Monobit Revolution Server」のご紹介
「Monobit Revolution Server」のご紹介
 
新しくなったモノビットエンジンを使って10万人規模のサーバを構築するノウハウを公開!2017年10月27日モノビットエンジン勉強会
新しくなったモノビットエンジンを使って10万人規模のサーバを構築するノウハウを公開!2017年10月27日モノビットエンジン勉強会新しくなったモノビットエンジンを使って10万人規模のサーバを構築するノウハウを公開!2017年10月27日モノビットエンジン勉強会
新しくなったモノビットエンジンを使って10万人規模のサーバを構築するノウハウを公開!2017年10月27日モノビットエンジン勉強会
 
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
 
Web サービス インフラの近未来
Web サービス インフラの近未来Web サービス インフラの近未来
Web サービス インフラの近未来
 
Hpc server講習会第3回応用編
Hpc server講習会第3回応用編Hpc server講習会第3回応用編
Hpc server講習会第3回応用編
 
革新的ブラウザゲームを支えるプラットフォーム技術
革新的ブラウザゲームを支えるプラットフォーム技術革新的ブラウザゲームを支えるプラットフォーム技術
革新的ブラウザゲームを支えるプラットフォーム技術
 
【Unite Tokyo 2019】Render Streaming - WebRTC を用いたストリーミングソリューション
【Unite Tokyo 2019】Render Streaming - WebRTC を用いたストリーミングソリューション【Unite Tokyo 2019】Render Streaming - WebRTC を用いたストリーミングソリューション
【Unite Tokyo 2019】Render Streaming - WebRTC を用いたストリーミングソリューション
 
SoftLayer最新動向と賢い利用方法
SoftLayer最新動向と賢い利用方法 SoftLayer最新動向と賢い利用方法
SoftLayer最新動向と賢い利用方法
 
Google Container Engine を始めてみよう
Google Container Engine を始めてみようGoogle Container Engine を始めてみよう
Google Container Engine を始めてみよう
 
Windows HPC Server 講習会 第2回 開発編
Windows HPC Server 講習会 第2回 開発編Windows HPC Server 講習会 第2回 開発編
Windows HPC Server 講習会 第2回 開発編
 
今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略
 
第4回「クラウドを支えるKVMの現在と未来」(2011/07/07 on しすなま!)
第4回「クラウドを支えるKVMの現在と未来」(2011/07/07 on しすなま!)第4回「クラウドを支えるKVMの現在と未来」(2011/07/07 on しすなま!)
第4回「クラウドを支えるKVMの現在と未来」(2011/07/07 on しすなま!)
 
仮想化技術の基本の基本
仮想化技術の基本の基本仮想化技術の基本の基本
仮想化技術の基本の基本
 
わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)
わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)
わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)
 
シンラ・テクノロジー第2回クラウドゲーム開発者会議
シンラ・テクノロジー第2回クラウドゲーム開発者会議シンラ・テクノロジー第2回クラウドゲーム開発者会議
シンラ・テクノロジー第2回クラウドゲーム開発者会議
 

More from UnityTechnologiesJapan002

More from UnityTechnologiesJapan002 (20)

5分でわかる Sensor SDK
5分でわかる Sensor SDK5分でわかる Sensor SDK
5分でわかる Sensor SDK
 
10分でわかる Unityコンピュータービジョン
10分でわかる Unityコンピュータービジョン10分でわかる Unityコンピュータービジョン
10分でわかる Unityコンピュータービジョン
 
5分でわかる Unity Forma
5分でわかる Unity Forma5分でわかる Unity Forma
5分でわかる Unity Forma
 
ROSのロボットモデルでバーチャルロボット受肉する
ROSのロボットモデルでバーチャルロボット受肉するROSのロボットモデルでバーチャルロボット受肉する
ROSのロボットモデルでバーチャルロボット受肉する
 
Unityでロボットの教師データは作れる!
Unityでロボットの教師データは作れる!Unityでロボットの教師データは作れる!
Unityでロボットの教師データは作れる!
 
ARとUnity-Robotics-Hubの連携
ARとUnity-Robotics-Hubの連携ARとUnity-Robotics-Hubの連携
ARとUnity-Robotics-Hubの連携
 
産業用ロボット開発におけるUnityの活用
産業用ロボット開発におけるUnityの活用産業用ロボット開発におけるUnityの活用
産業用ロボット開発におけるUnityの活用
 
建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について
建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について
建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について
 
UnityとROSの連携について
UnityとROSの連携についてUnityとROSの連携について
UnityとROSの連携について
 
中国深センから盛り上がる、ソフトウェアフレンドリーなロボティクス
中国深センから盛り上がる、ソフトウェアフレンドリーなロボティクス中国深センから盛り上がる、ソフトウェアフレンドリーなロボティクス
中国深センから盛り上がる、ソフトウェアフレンドリーなロボティクス
 
Unityでお手軽ロボット開発「toio SDK for Unity」最新事例
Unityでお手軽ロボット開発「toio SDK for Unity」最新事例Unityでお手軽ロボット開発「toio SDK for Unity」最新事例
Unityでお手軽ロボット開発「toio SDK for Unity」最新事例
 
集まれ!Dreamingエンジニア! 〜箱庭で紡ぎ出されるIoT/クラウドロボティクス開発の新しいカタチ〜
集まれ!Dreamingエンジニア! 〜箱庭で紡ぎ出されるIoT/クラウドロボティクス開発の新しいカタチ〜集まれ!Dreamingエンジニア! 〜箱庭で紡ぎ出されるIoT/クラウドロボティクス開発の新しいカタチ〜
集まれ!Dreamingエンジニア! 〜箱庭で紡ぎ出されるIoT/クラウドロボティクス開発の新しいカタチ〜
 
5分でわかる Unity点群
5分でわかる Unity点群5分でわかる Unity点群
5分でわかる Unity点群
 
5分でわかる Unity Reflect
5分でわかる Unity Reflect5分でわかる Unity Reflect
5分でわかる Unity Reflect
 
BIMからはじまる異世界転生 ~Unity Reflect が叶える新しい建築の世界~
BIMからはじまる異世界転生 ~Unity Reflect が叶える新しい建築の世界~BIMからはじまる異世界転生 ~Unity Reflect が叶える新しい建築の世界~
BIMからはじまる異世界転生 ~Unity Reflect が叶える新しい建築の世界~
 
【Unity道場 自動車編】Unityで実現する産業向けxRソリューション
【Unity道場 自動車編】Unityで実現する産業向けxRソリューション【Unity道場 自動車編】Unityで実現する産業向けxRソリューション
【Unity道場 自動車編】Unityで実現する産業向けxRソリューション
 
【Unity道場 自動車編】トヨタのxR活用で進める現場DXへの挑戦 ~UnityとHoloLens 2を用いて~
【Unity道場 自動車編】トヨタのxR活用で進める現場DXへの挑戦 ~UnityとHoloLens 2を用いて~【Unity道場 自動車編】トヨタのxR活用で進める現場DXへの挑戦 ~UnityとHoloLens 2を用いて~
【Unity道場 自動車編】トヨタのxR活用で進める現場DXへの挑戦 ~UnityとHoloLens 2を用いて~
 
【Unity道場 自動車編】空間再現ディスプレイの概要と活用事例
【Unity道場 自動車編】空間再現ディスプレイの概要と活用事例【Unity道場 自動車編】空間再現ディスプレイの概要と活用事例
【Unity道場 自動車編】空間再現ディスプレイの概要と活用事例
 
【Unity道場 自動車編】 リアルタイム3D技術が支えるデジタルツイン
【Unity道場 自動車編】 リアルタイム3D技術が支えるデジタルツイン【Unity道場 自動車編】 リアルタイム3D技術が支えるデジタルツイン
【Unity道場 自動車編】 リアルタイム3D技術が支えるデジタルツイン
 
【Unity道場 自動車編】モビリティへの活用に向けて
【Unity道場 自動車編】モビリティへの活用に向けて【Unity道場 自動車編】モビリティへの活用に向けて
【Unity道場 自動車編】モビリティへの活用に向けて
 

Recently uploaded

Recently uploaded (10)

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

【Unite Tokyo 2019】Unityだったら簡単!マルチプレイ用ゲームサーバ開発 ~実践編~