Find Week 7's report here. Find Week 5's report here.
For the week 7 meeting on 5/11.
Before describing our previous week, we would like thank Bowen for his contributions to the project. While it is unfortunate that he will not be able to see the game come together, we hope we’ll have a chance to play the game with him once it is finished.
Work this week has moved us closer to that point. In graphics, the character models were successfully loaded in. The model moves well in the 3D world, rotating when the user shifts the crosshair and moving with the player’s camera. The remainder of the animations we currently have will be loaded in next week. In art, we now have a crouching animation. The completion of the powerup ability icons as well as transitional animations such as walk-to-crouch and walk-to-run is a target for next week. Progress continues on network-gameplay integration. Code has been written for the Server to track and update player positions based on player input messages and for the Client to update each player’s position. We aim to render updated player positions next week. Other work has focused on sending the maze structure from the server to client. This has involved the refactoring of previously written maze code and efforts on this will continue into next week. Time was also spent resolving installation issues. The process is being documented and streamlined.
Group morale is high.
The gif on the left shows the character model moving with the camera and rotating with the crosshair, weapon in hand. The gif on the right displays the crouch-walk animation.
My concrete goal for this week was to load in the character model properly.
I was able to accomplish this goal. It actually took less time than I thought it would which was a very pleasant surprise. I was able to spend the rest of the week making it so that the character model rotates when the player moves their crosshair and so that the character model walks forward and backwards as the player moves around in the 3D world.
Goals accomplished.
My specific goals for next week are to finish loading in and verifying animations work properly for the models given to me by the art team as well as work with the integration team so that animations of other players can be seen in the world.
This week I learned how ASSIMP bones work in terms of animation and I also relearned a bit of 3D transformation math. This was stuff that we had covered in CSE 167 and 169 but I really needed to review and understand it in order to make sure that the model rotated and followed the player camera properly. It was actually pretty difficult just to get the model to move and rotate at the same rate as the camera and due to all the scaling and math issues. Basically, just loading the model in and getting it to play its animation is one challenge and making it move around in the 3D world is another challenge.
My individual morale is much better than it was last week. As a team, we were able to figure out the communication between client and server and I think now is just a matter of refactoring the code so that the client and server perform their responsibilities appropriately.
Network integration.
None, ongoing.
The code won’t build for me…working with Lucas to resolve. Nearly there, also figured out a lot of ways we can reduce our workflow bloat.
Write our documentation and streamline the installation process. Right now it’s a bit of a nightmare.
Learned more the various libraries we need to install setup.
OK, some issues with our installation that are frustrating. But made good progress clearing those up, hopefully it will speed up our future work as well.
Create the maze using the server/client.
Sending the maze structure from the server to the client.
I was unable to finish parsing the information from the server to create the maze on the client side as well. Creating the structure for the game requires me refactoring a lot of the code away from what was initially used, which was all being done in the "window" creation.
Create the maze using the server/client. Create ability chests as well.
Did not learn anything this week.
High.
My concrete goals for this week were to finish the ability icons and to create a crouching animation.
I was not able to work on the icons yet, but I was able to make a crouch-walking animation.
I was not able to work on the icons because I had to work on other classes.
My goals for next week are to finish the icons and to create a walk-to-crouch animation and a walk-to-run animation.
I did not learn anything new this week.
My morale is still very high.
My goal for this week was to continue to assist with the network/gameplay integration.
I chatted with members of the gameplay team over discord to help familiarize them with the network code, and to answer any other questions they had about the network.
We are still working to complete the integration.
My specific goals for next week are to implement hit detection when shooting.
I got more experience with the gameplay code.
My morale is good, but the past week and next week will be quite busy for me.
My goal this week was to help implement network-based user-controlled movement by having the Server track player positions through client input messages, update each client on the positions of all players, and have clients render the updated player positions.
I have written code that allows the Server to track and update information about each player and supply all clients with the updated information.
The rendering portion of my goal is incomplete. How Clients store information about other players has changed, so we’ll to discuss that before bringing the position tracking and update code into the mix.
Goals for next week will be to finish position update rendering and ensure other information passed in player_messages can be transmitted and rendered as expected.
I continued to gain more experience working with Boost and C++.
My morale is high.