P2P方式と構成の一般化 負荷の分散、ゲームセッションのデザイン
サーバー型で組んでいたがP2P型の小規模なネットワークを取り入れた。 プログラムテスト
P2Pとは P2P(ピアツーピア)とはピア、つまりネットワークの終点・到達地点を連結するという意味です。 システムとシステムが対等な関係を結んでいること。
網の目構造 Host ユーザー プレイヤーリスト送信や、更新によるつながり ユーザー ユーザー ユーザー
ゲームセッションデザイン セッション ネットワーク プレイヤー ゲーム
ホストと非ホストのアルゴリズム ホスト 非ホスト No Yes No Yes 参加 新規生成 プレイヤーリストを受け取る 新規プレイヤー 他のプレイヤーに接続 Yes プレイヤーリスト更新 待機 No 新規プレイヤー参加 他のプレイヤーに送信 Yes
定義した構造体の簡易図 P2P_GAME Sub_data NODE PlayerList Player
ロビーチャットへの適用 P2Pライブラリを使用してロビーチャットを実装する。テストプログラムはEasychat_P2P
case WM_CREATE: InitInformationString(); SetInformationStringMax(20); CreateEditLine(hWnd, wParam, lParam); if(WS32Load() != 0) { MessageBox(NULL, "DLL ロードエラー", "Error", MB_OK); PostQuitMessage(0); } g_ezchat = PGCreateP2PGame(g_game_type, g_uuid, TRUE); if(g_ezchat == NULL) MessageBox(NULL, "ゲーム生成エラー!","Error", MB_OK); PGSetSubMsgProccess(g_ezchat, EzChatMsgProccess); break;
EasyChat_P2P