# HG changeset patch # User riono # Date 1644454926 -32400 # Node ID 050081af12963cb0bcf1da7127a3451f921957b3 # Parent 1402268d1eca1d9736c38e7aeefdbc18ddc8a473 update introduction diff -r 1402268d1eca -r 050081af1296 Paper/chapter/0-introduction.tex --- a/Paper/chapter/0-introduction.tex Thu Feb 10 02:39:17 2022 +0900 +++ b/Paper/chapter/0-introduction.tex Thu Feb 10 10:02:06 2022 +0900 @@ -1,5 +1,32 @@ -\chapter{序論} -\section{はじめに} +\chapter{オンラインゲームにおけるデータ通信} +オンラインゲームは様々な回線を通じて複数のプレイヤーが関与する分散プログラムである。 +多くの場合通信形態はCloud上のServerを中心としたクライアントサーバ方式である。 +分散プログラムを正しく書くことは、Debugなどを含め難しい。 +また、スマートフォンたタブレット端末の普及によりインターネット上で提供されているサービスやゲームに参加するユーザ数は増加傾向にある。 +増加するユーザに対応しつつ、正しく分散プログラムを書くことが求められている。 + +プログラマが1から分散プログラムを書くことは珍しくなっており、ほとんどの場合既存のフレームワークを利用して、分散システムの構築を行う。 +ゲーム開発においても、UnityやUE4などで使用できるさまざまな通信ライブラリが存在している。 +これらの通信ライブラリはゲームエンジン向けに実装されているが、煩雑な記述方法やDebugの行いにくさがある。 + + +当研究室では、初代PlayStation向けに作成したFederated Lindaを拡張して、CodeGear/ DataGearを用いた分散フレームワークChristieを開発中である。 +ChristieはJavaで記述されているため、既存のゲームエンジン上で直接動かすことはできない。 +そこでC\#で再実装することによりUnityの通信ライブラリとして使用できるようにする。 + +Christieは従来の通信ライブラリとは異なり、型のあるDataGearをタプル空間DataGearManager(以下DGM)にKeyをもつストリームとして格納する方式を取っている。 +DGMはnode内部にlocalなDGMが用意されており、自身のnodeのThread間での通信に用いられている。 +他のnodeのDGMとしてproxyを持っており、対応したproxyにデータを書き込むことでnode間の通信を行っている。 + +DGMの構成にはTopology Managerにより自動的に構成される。 + + + +%topo が分散のサポートする +%分散書くの難しい + + + \section{hogehoge} \subsection{foofoo} diff -r 1402268d1eca -r 050081af1296 Paper/chapter/conclusion.tex --- a/Paper/chapter/conclusion.tex Thu Feb 10 02:39:17 2022 +0900 +++ b/Paper/chapter/conclusion.tex Thu Feb 10 10:02:06 2022 +0900 @@ -1,5 +1,5 @@ \chapter{まとめ} -\section{総括} + \section{今後の課題} diff -r 1402268d1eca -r 050081af1296 Paper/master_paper.pdf Binary file Paper/master_paper.pdf has changed