Find Week 4's report here. Find Week 2's report here.
For the week 4 meeting on 4/20. Our group has continued progress on our project. For graphics, we have implemented the crosshair view that players will see in the game. As for art, an additional weapon model was designed and a walking animation for the character model was created. Next week, the current models will be loaded into the 3D world and further work will be done on animations. The gameplay team has implemented automatic maze generation, crouching, sprinting, and firing. Work on abilities will begin next week. Important details in the game such as footstep trails and footstep related audio have also taken shape. The networking teams has been able to send a stringified message between client and server and have designed the basic messages necessary for the game. The method that will parse and unpack the data contained in those messages is currently being implemented. Once it is implemented, network integration can begin with graphics and gameplay. Group morale is high as the project is developing nicely.
My concrete goals for the week were to implement the debug feature so that the bounding boxes can be seen and to implement the crosshair/fix the player perspective issue.
I was able to accomplish both of these goals for this past week.
All goals accomplished.
My specific goals for next week are to load in the models.
This week I learned that Visual Studio is very particular when it comes to installing libraries and that it is often easier to work with pre-built binaries as opposed to building and installing the source code myself.
I feel that things are progressing at a good pace, however, I am a little concerned that I will not be able to load the models in properly. This is my first time working with ASSIMP (our model import library) and I am not familiar with the file formats that our models are being exported in. However, this weekend I have made better progress than expected so hopefully, this does not turn out to be an issue.
Firing (hitscan), Footstep trails, Footstep directional audio.
All 3 are complete.
All goals accomplished.
Blood trails, integration with network.
Learned how to use IrrKlang for audio.
Good, project is developing fast.
Generate the maze/walls.
Automatic random generation of the maze, crouching, and sprinting functionality.
Met all my goals.
Work on abilities, including deleting a wall and temporarily see the map.
Learned how random maze generation works and the different algorithms that result in different maze textures.
High.
My concrete goal for this week was to rig the character model and to create a walking animation and to decide on a theme for the game.
I was able to create a simple walking animation for the model and we were able to decide on a low-poly theme similar to the game “Superhot”.
I was able to complete my goals for the week.
My goals for the next week are to create additional animations.
I learned how to rig a model in blender and how to create keyframes for animations. I did expect to learn it.
My individual morale is good as I am really enjoying working with models and animations in blender, especially for a game.
For this week, my goal was to help out with gameplay part of our game.
I helped out our art specialist with constructing more model for another weapon.
I was unable to meet my goal for this week because I have PAs due this week and I was falling behind in lectures. This is due to my poor time management and I will try to make sure it will not happen next week.
For next week, I will start by understanding what I need to do for the gameplay part of our game and helping with implementing our must have functionalities.
For this week, I learned more tips and tricks about blender features.
For this week, I am a bit behind with my work and I will try to spend more time on our game next week.
My concrete goal for this week was to send our game_state struct over the network, and to implement a timer to periodically send the struct to all clients.
I was able to accomplish both of the above goals.
I met my goals for the week.
My specific goals for next week are to finish implementing the client and the server so our team can begin integrating the game with the network.
I learned about the different ways to implement async timers in C++, and went with a very hacky way of just spinning up a new thread and having it sleep repeatedly.
My morale is good. I accomplished what I set out to do and believe I can accomplish my goals for next week as well.
The network team’s goal was to create a string message structure that sends the necessary game state updates from server to client. My secondary goal was to make some aesthetic improvements to the website.
I created a design document that outlines the message structure of the string messages that need to be sent from the server and the client. I’m am currently writing a parsing method for these messages. We were able to send a test string message structure from client to server and back, meaning that once the parsing method is in place, all different message types should be usable and the work we have done for networking is ready for integration with gameplay and graphics.
I did not have time to make aesthetic improvements to the site.
My goal for next week is to complete the message parsing method and to design a message structure capable of representing updates to the maze.
It was valuable experience thinking through all the communication that needs to take place between the client and server from the start to end of a player’s game experience.
I’m happy with the work I have done this week, and I am excited to continue it next week.