• [librcsc][soccerwindow2] ゲームログのシリアライゼーション機能を作成開始.(akiyama)

soccerwindow2にRCGファイル保存機能を追加した.そのために必要なデータ変換の処理をlibrcscにも追加.

soccerwindow2は,サッカーモニタとして使用するときとログプレイヤとして使用するときのいずれの場合でも,RCGファイルに含まれるログデータの全てをメモりに保持している. つまり,soccerwindow2単体でRCGファイルを新規保存することが可能である. ということは,soccerwindow2がrcssserverの代わりにログを保存することができるというわけ.

ノートPCなどのスペックが低めのマシンでrcssserverを動かすと,ログの書き出しのせいでシミュレーションがちょっと遅くなることがある.このような場合に,サーバ側でのログ保存をオフにして,試合終了後にsoccerwindow2でログを保存すれば多少はシミュレーション速度が改善されるはず.更に,うっかりログを保存してなかったけど今の試合は記録しておきたい,などという状況にも非常に役立つ機能なわけです.

いやあ,また良いもの作っちゃったな.

  • [librcsc] 通信の実装を分離中.(akiyama)

将来的にsoccerwindow2にOZip相当の機能を持たせることを想定して,エージェントから通信の実装を分離する作業を行っている途中.

クライアント機能とエージェントのイベントハンドラ部分を分離すること自体は簡単だが,ソケットのキューが溜まることがあるという仕様に対応しようとすると,メッセージ受信時の委譲部分がどうしても複雑になってしまう.複雑といってもたいしたことは無いのだけれど,関数ひとつでdelegateというわけにいかないので,あまり美しくない.どう実装したもんだろうか.やっぱり,キューに溜まったメッセージの解析と,メッセージ解析完了後の2フェーズに分けるのが一番シンプルかなぁ.


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-03-14 (月) 14:51:37 (1285d)
SourceForge.JP
Creative Commons License
RoboCup tools by Hidehisa Akiyama is licensed under a Creative Commons 表示-非営利 2.1 日本 License.