ゲームのネットワーク化
Posted: 2009年5月26日(火) 18:35
お世話になります。さがです。
今回は前製作したものにネットワークを組み込もうと思ったのですが、うまく動作しなく困ってしまったので質問させてください。
コードは添付のtxtに入ってます。
やろうとしていることは
キー入力情報の受け渡しです。
また DataSend() DataRecv()へのアクセスはSERVERとCLIENTで交互にしようと思ってます。
・受け取る char の値が不定。
・ゲームのプレイ中にラグ(1秒程度)が発生する。
となっています。
自分なりに考えて見たところ、 本家リファレンス GetNetWorkSendDataLength()項の
NetWorkSend 関数で送信をしたデータはすぐに 送信されるわけではない場合があり、
その場合はライブラリ内部のメモリ領域に 一時的に保存されます。
というところが原因では無いかと考えていますが、なにぶん経験が浅いので原因を特定することが出来ません。
どなたか御教示いただけないでしょうか。
環境
Windows XP
visual studio 2005 EE Dxlib
今回は前製作したものにネットワークを組み込もうと思ったのですが、うまく動作しなく困ってしまったので質問させてください。
コードは添付のtxtに入ってます。
やろうとしていることは
キー入力情報の受け渡しです。
また DataSend() DataRecv()へのアクセスはSERVERとCLIENTで交互にしようと思ってます。
if(SERVER_FLAG){ DataSend(&buf[0]); DataRecv(&pad[1]); }else{ DataRecv(&pad[1]); DataSend(&buf[0]); }今のところ実行すると、
・受け取る char の値が不定。
・ゲームのプレイ中にラグ(1秒程度)が発生する。
となっています。
自分なりに考えて見たところ、 本家リファレンス GetNetWorkSendDataLength()項の
NetWorkSend 関数で送信をしたデータはすぐに 送信されるわけではない場合があり、
その場合はライブラリ内部のメモリ領域に 一時的に保存されます。
というところが原因では無いかと考えていますが、なにぶん経験が浅いので原因を特定することが出来ません。
どなたか御教示いただけないでしょうか。
環境
Windows XP
visual studio 2005 EE Dxlib