Progress

This week our priority was preparing for the interim demo. For me, this meant integrating the PC controller software with the motor driver on the pi, creating a demo version of the game application by removing matchmaking and network communication with other PCs, and working on a revised schedule with my group.

After the demo was over, I fixed two major issues in the video streaming.

  1. Disconnecting from wifi (due to going out of range, network errors, OpenCV errors, etc.) caused the game to freeze for 5 seconds. Fixed this by calling the stream open method asynchronously and checking its status with the std::future::wait_for method with timeout.
  2. Roughly once a minute the video feed would experience lag spikes and frame drops from 40fps to ~15 fps. This was due to an issue with processing frames that had accumulated in the network buffer and was fixed by simplifying reading frames from OpenCV.

For this week’s main task, I began writing the code for the race game, implementing the core logic and communication between game instances. The core game logic included state updates tracking race progress such as place, lap, and gate count, and receiving and using items.

Also, I worked on reading assignment #2, due Sunday.

Schedule

This week I fell slightly behind schedule because I had an assignment and a lab due and a midterm on Monday, so I was unable to finish up the game logic and test it. Next week I don’t have any deadlines in other classes, so I should be able to get back on track.

Deliverables for next week

Unit test game logic with reasonable test coverage. Finish up game with items and animations. Should be able to play a game, with GUI updates, when methods are called on PCs.

David’s Status Report: Week 7

Leave a Reply

Your email address will not be published. Required fields are marked *