Photon Server イントロ
Photonは高速で非常に使いやすいオンプレミス型のリアルタイムソケットサーバーとクロスプラットフォーム・マルチプレイヤーゲーム開発フレームワークです。
Photon ServerのマルチプレイヤーAPIを使って、共有されたゲームセッションにプレイヤーを参加させ、異なるプラットフォーム間でプレイヤー同士がデータやメッセージ転送を同期的またはリアルタイムでおこなえるようにしましょう。
自分だけのマルチプレイヤーゲームバックエンド!
Photon CloudはクライアントSDKを使用する、幅広いゲームタイプに対応しています。対応可能なゲームタイプの例は以下のとおりです:
- ファーストパーソン・シューティングゲーム
- レーシングゲーム
- マインクラフトタイプのゲーム
- カジュアルなリアルタイムゲーム
- 同期型/非同期型ゲーム
- …その他 多数
Photon Serverアプリケーション によって、マルチプレイヤーゲームバックエンドを構築して実行するためのフレームワークを取得できます。すべてのアプリケーションはC#のソースコードで提供されます。
アプリはパフォーマンス重視で構築されており、必要に応じてカスタマイズをおこなったり、もしくはそのまま使うこともできます。
また、xcopy deployの自動または手動再起動によって非常に簡単にデプロイをおこなえます。
Photon Serverを実行するには、有効なライセンスが必要です。
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ソケット/ 安全なWebソケット
転送プロトコルは非常に効率が高いです。
Photonは各クライアントプラットフォームのネットワーキングレイヤーをまとめてくれます。
ゲームクライアントにクロスプラットフォーム間、プロトコル間での通信手段を与えましょう。
データをハッシュテーブルまたはバイト配列に入れて送信するだけです。
サーバー開発フレームワーク (C#)
すべてのアプリケーションは、共通のタスクを処理してくれる開発フレームワーク上にあります。
- RPCコールは簡潔で柔軟性が高く、オペレーションインスタンスにマッピングされています。
- スレッディングの問題は、ファイバー経由のメッセージ通過によって解決されます。
- Photonは、CPUがボトルネックになる前にトラフィックを充填するよう設計されています。
サーバー開発ツール
完全にVisual Studioで稼動していますので、コードからF5 >>デバッグをおこなえます。
.NET Developmentのすぐれたツールを存分に活用してください。
- Microsoft: Visual Studio
- Redgate: Memory Profiler、Performance Profiler、Reflector (こちらを参照してください)
- Jetbrains: ReSharper、dotTrace、dotCover、dotPeek (こちらを参照してください)
データ持続性 (DBs)
Photon Serverは持続性レイヤーを提供しません。
.NET/Windowsはすべての主要な製品をサポートします。
ORM(マッピング)レイヤーのオプション利用には、たとえば以下を使用してください
Back to top