Photon Server イントロ
Photonは高速で非常に使いやすいオンプレミス型のリアルタイムソケットサーバーとクロスプラットフォーム・マルチプレイヤーゲーム開発フレームワークです。
Photon ServerのマルチプレイヤーAPIを使って、共有されたゲームセッションにプレイヤーを参加させ、異なるプラットフォーム間でプレイヤー同士がデータやメッセージ転送を同期的またはリアルタイムでおこなえるようにしましょう。
自分だけのマルチプレイヤーゲームバックエンド!
Photon CloudはクライアントSDKを使用する、幅広いゲームタイプに対応しています。対応可能なゲームタイプの例は以下のとおりです:
- ファーストパーソン・シューティングゲーム
- レーシングゲーム
- マインクラフトタイプのゲーム
- カジュアルなリアルタイムゲーム
- 同期型/非同期型ゲーム
- …その他 多数
Photon Serverアプリケーションによって、マルチプレイヤーゲームバックエンドを構築して実行するためのフレームワークを取得できます。すべてのアプリケーションはC#のソースコードで提供されます。
アプリはパフォーマンス重視で構築されており、必要に応じてカスタマイズをおこなったり、もしくはそのまま使うこともできます。
また、xcopy deployの自動または手動再起動によって非常に簡単にデプロイをおこなえます。
Photons Server SDK(@WebProductDownloadUrl#server-sdkserverserver)とともに利用できるアプリケーションは以下のとおりです:
- LoadBalancing:サーバー間で負荷が分散されます。これによって、Photon Cloudが強化されます!
- MMO:多数のプレイヤーが参加する大規模ゲームに最適なソリューションです。
- Lite: これは、多くのPhotonの基本概念(オペレーション、イベントなど)への導入としてのみ使用するべきです。
今すぐアカウントを作成する
サインアップ後、無料の100CCUライセンスをダウンロードできます。
Photon Serverの内部
Photon Serverのアーキテクチャ
Photon Coreはパフォーマンス上の理由から、ネイティブC++で記述されています。
- コアは、ソケット処理のパフォーマンスを高めるためIO Completions Ports (IOCP)を使用しています。
- プロトコルの高度な「リフティング」を実装しています。
- 信頼性の高いUDP、TCP、HTTPおよびWeソケットをサポートします。
ビジネスロジックは、コアによってホスティングされる.NET CLRで実行されます。
- Photon上で実行されるアプリーションを含みます。
- C#、またはその他の.NET言語で記述されます。
プロトコル
Photon Serverのコアは、以下のプロトコルをサポートしています。
- 信頼性の高いUDP(eNETにもとづく)で、特にクライアントサーバー構造に適しています。
- バイナリTCP
- Webソケット
- HTTP
転送プロトコルは非常に効率が高いです。
Photonは各クライアントプラットフォームのネットワーキングレイヤーをまとめてくれます。
ゲームクライアントにクロスプラットフォーム間、プロトコル間での通信手段を与えましょう。
データをハッシュテーブルに入れて送信するだけです。
Photonがシリアル化/非シリアル化をおこなってくれるので、あなたがおこなう必要はありません。
サーバー開発フレームワーク(C#)
すべてのアプリケーションは、共通のタスクを処理してくれる開発フレームワーク上にあります。
- RPCコールは簡潔で柔軟性が高く、オペレーションインスタンスにマッピングされています。
- スレッディングの問題は、ファイバー経由のメッセージ通過によって解決されます。
- Photonは、CPUがボトルネックになる前にトラフィックを充填するよう設計されています。
サーバー開発ツール
完全にVisual Studioで稼動していますので、コードからF5 >>デバッグをおこなえます。
.NET Developmentのすぐれたツールを存分に活用してください。
- Microsoft: Visual Studio
- Redgate: Memory Profiler、Performance Profiler、Reflector (こちらを参照してください)
- Jetbrains: ReSharper、dotTrace、dotCover、dotPeek (こちらを参照してください)
データ持続性(DB)
Photon Serverは持続性レイヤーを提供しません。
.NET/Windowsはすべての主要な製品をサポートします。
ORM(マッピング)レイヤーのオプション利用には、たとえば以下を使用してください。
Back to top