Find Week 6's report here. Find Week 4's report here.
For the week 6 meeting on 5/4. As we mark the halfway point in our class, the different aspects of the project begin to come together. Graphics brought many of our models to life this past week, rendering animation for all models except the character model. Tackling animation for the character model will be a complex challenge for next week due to the character animations’ use of ASSIMP bones. The gameplay and networking teams this week started gameplay-network integration. The goal of integrated player movement was not met in part due to issues with getting Boost and ASSIMP to work with Visual Studio, preventing us from compiling code. With these issues being worked out, efforts next week look to be more productive. The art team completed a sprinting animation and created 2D icons representing the powerup abilities. These icons will appear on the user’s display. Next week, the art team will aim to finish a crouching animation and the remaining 2D icons. While challenges with gameplay-network integration and time requirements from outside commitments meant less was accomplished this week than in past weeks, morale remains high and our outlook on the project is optimistic. The last four images display the weapon animations in the 3D world.
My concrete goals for this week were to get the interpolation feature of the animation working for the models.
I was able to accomplish this for the models which have animations and do not make use of bones (essentially all models except the character model).
I was unable to animate the player correctly. I am still actively working on this, but it has become far more complicated than I imagined. My original way of handling interpolation to get the animation to play properly did not account for the fact that certain animations use ASSIMP bones. I am unfamiliar with working with bones and this past week I have spent time trying to understand how they operate and how they can be fitted into the existing code I have without breaking everything. There is a small chance that I need to overhaul most of the animation code I have written so far as the bones work in a very different way than the ASSIMP meshes which were pretty easy to accommodate.
My specific goal for next week is to try and load in the character model properly which makes use of ASSIMP bones.
This week I learned more about using ASSIMP and how their data structures fit together. It's kind of complicated because our files are being exported in GLTF format which also uses nodes and meshes but these are very different than the ASSIMP nodes and meshes. My original way of handling animations more aligned with the GLTF format so now I need to kind of rethink my approach.
My individual morale is ok. I would say that I can most likely figure this out but it will take some time and it might not be perfect at the end. This past week was also kind of tough because of midterms and some other assignments, but hopefully this next week I'll make some more progress.
Network integration.
None, ongoing.
Integration is a major task which will likely require multiple weeks. On top of that the animation integration seems to have broken some things so I have to try and fix all 3 together.
Network integration.
Learned more about the animation/network code structure.
Good, project is going well. Do wish we had attempted the network integration earlier though.
Integrate gameplay with networking. Try to get basic movement to work with the server.
I fixed some bugs with existing gameplay such as ability chests and deletions. I was able to run the client and server with Visual Studio independently and together.
It took a while to get Boost/assimp to work with Visual Studio and to compile the files correctly. Getting Visual Studio to run twice (once for the server and once for the client) surprisingly also took a lot of work. Trying to use the same project was not possible, since Visual Studio only allows for one to run. Creating a new project required linking the packages (ex: Boost) again, and despite having the same settings, it would not compile correctly. I didn't have enough time to work on any gameplay/movement/etc. logic as a result.
Try to get basic movement to work with the server and start implement client/server gameplay logic.
Visual Studio is rough...
Low. I spent a long time trying to get all the packages to work together with Visual Studio. I am optimistic about next week though.
My concrete goals this week were to create icons for the abilities and to work on crouching and running animations.
I was able to make 3 out of 7 icons for the abilities and I was able to create the running animation.
I was not able to finish all the icons because I was busy working on work for other classes.
My goals for next week are to finish all the icons and to create the crouching animation.
I learned how to work with Illustrator to create icons. I did not expect to learn it.
My morale is high.
For this week, my goal was to help out integrating network and gameplay branches.
I was not able to accomplish my goals.
I am behind in the progresses we are making. Instead of helping out with integrating, I helped our art specialist with more models. After my midterms and PA next week, I will try to catch up with the progresses and help with integrating.
For next week, I will try to learn and catch up what my team has done so far and help with integrating network and gameplay branches.
I did not really learn much this week.
For this week, I don’t feel like I accomplished much for the team.
My goal for this week was to help the gameplay team integrate the game logic into the server/client files so the game can be played over the network.
I met with the gameplay team to go over the client/server code and recommendations on how they should integrate the code. I also went over some problems with compiling the server code on Windows, which we’re still working on.
I met with the gameplay team to begin integration, but we haven’t completed the integration yet.
My specific goals for next week are to continue to help to gameplay team integrate the code, as well as modify the existing server code as the current code is an initial implementation that can be integrated with the gameplay code, and can be improved in a few areas.
I got my feet wet with the gameplay code, which I haven’t encountered before.
My morale is good.
My primary goal this week was to get gameplay-network integration to the point where user-controlled character movement was achieved. My secondary goal this week was to update our server and client parsing methods to reflect footsteps being generated by the Client rather than the Server.
I achieved my secondary goal. Upon discussion, we decided it would be better for the Client to generate and track footsteps rather than the Server.
I was unable to achieve integrated user-controlled character movement. We struggled with issues related to our tools, and while it seems much of those problems have been rooted out, we did not accomplish much with gameplay-network integration outside of planning and discussion.
For next week we aim for integrated user-controlled character movement. While the early part of my coming week will be absorbed by work for other classes, I should have enough of time in the remaining part of the week to help reach this goal.
I learned about how the gameplay code is structured and functions.
I’m still confident in the direction of the project.