トップページ > 過去ログ > 記事閲覧
モデル描画が凄いことに(Winsock併用時
名前:うはwwおkww 日時: 2012/09/03 14:07

SetUseDXNetWorkProtocolをFALSEにして DXLibとWinsockを併用させています Winsock併用時→Winsock非併用時 となっています。カメラの位置がおかしいのは気にしないでください video.fc2.com/content/20120903LMSmVrQC/ この変なラグみたいなのをなくしたいのですがどのようにしたらいいでしょうか プログラム自体は キャラ移動処理 キャラあたり判定 カメラ移動 キャラデータ送信 ほかのプレイヤーのキャラデータ受信(自分のデータも受信) 描画 としています 受信データにおかしなところはないので、受信データによるのは考えられません。

Page: 1 |

Re: モデル描画が凄いことに(Winsock併用時 ( No.1 )
名前:softya(ソフト屋) 日時:2012/09/03 14:37

受信処理自体が遅延の原因では? スレッドで受信してますか? と動画を見るまえは思ったのですが動画を見ると描画が自体が変ですね。 ソースをコンパクトにした再現コードは作れないでしょうか?
Re: モデル描画が凄いことに(Winsock併用時 ( No.2 )
名前:うはwwおkww 日時:2012/09/03 16:14

できるだけコンパクトにしてみました firestorage.jp/download/a5809739ba3982009d7edb4118a2aa780df9e899 よろしくお願いします
Re: モデル描画が凄いことに(Winsock併用時 ( No.3 )
名前:softya(ソフト屋) 日時:2012/09/03 18:48

申し訳ないですが凄く危険そうなプログラムになっています。 コードの可読性も決して高くないのでバグを見逃す可能性がいちじるしく高いと思います。 規模が大きくなるプログラムは、ご自身のためにクラス化やファイル分割をもっとちゃんと行うべきですね。 現状は余りに機能分割されていませんのでごちゃごちゃしています。このコンパクト版だと通信部分は別関数やクラスなどに分離すべだと思います。 現状の問題点ですが、 SPC.PC_S.Data = OtherPC[0]; さえしなければ問題はありません。 なので、SPC.PC_S.Dataを参照している部分かSPC.PC_S.Dataに入っている内容に問題があると思います。 ※ ここまでしか確認しておりませんが参考になるでしょうか? 【補足】 ソースコードを追わずに勘で書くと自身の情報がサーバ経由でエコーバックされて何フレームかずれて届くことで情報の戻りが発生して見える様な現象ではあります。あくまで勘なので違うかも知れません。
Re: モデル描画が凄いことに(Winsock併用時 ( No.4 )
名前:うはwwおkww(解決) 日時:2012/09/03 18:46

ご指摘ありがとうございます コンパクト版はクラス化しなくても済むようになった部分はメイン部分にもって行きました コードの可読性は高くないですね・・・・ いろいろ試行錯誤はしているのですが 通信部分は分離しようとしてみたのですが、 通信が上手くいかなかったのでとりあえず放置中でした Dataに入っている値はデバッグで確認したところ問題ないようだったので参照している部分が問題なのでしょうかね・・・・・・ DxLibと関係ありませんでしたね スレ汚し失礼しました

Page: 1 |