Categories
Uncategorized

Shad(er)y Business

It is always interesting how knowledge from other courses can be applied to game design, sometimes courses that would be least expected. Computer Graphics is not one of those courses. Computer Graphics is obviously going to be related to making video games, there is no surprise there. This week in Computer Graphics we have been learning about lighting and shaders, so the whole time I have been thinking about how I can use that knowledge and apply it to the VR Rhythm Game project.

Shaders are able to do some amazing things, and much more efficiently than other methods because of the hardware support of the graphics cards. As the person in charge of the User Interface, I feel that shaders will be especially useful to me. They can be used to make visual effects, warp objects and apply texturing. Best of all, Unity has built in support for the shaders, so creating shaders should be a simple process. I look forward to digging into shaders and learning how to get the most out of them.

Before this project I hadn’t realized just how all inclusive Unity is. The tools available out of the box make putting together a game much easier, if you take the time to learn the tools. And that, I believe will be the biggest difficulty for this project, learning the tools. I have every confidence in the team’s ability to write the code and get everything functioning, but for two of us Unity is completely new.

Despite the oncoming learning curve, Unity is definitely the right choice for this project. The all-in-one system will make it easier to manage the project, and the plethora of free assets means we don’t need to keep reinventing the wheel.

Categories
Uncategorized

Good Team Bad Team

Never underestimate the benefit of good teamwork, but you should also never underestimate the encumbrance of bad teamwork. During this term I am taking four teamwork intense classes, and the difference between the teams I am on is stark. Let’s begin by examining the bad.

A team I am in was required to prepare a presentation, and present in front of the class. The presentation was prepared on Google slides. An interesting thing about Google slides, is that it records every change made by every person, so it is possible to see exactly how much different people contributed. I felt that I was doing a bit more than my fair share, so after the presentation, I checked the records to see how much each person contributed. There were two people who’s only contribution was literally adding their names to the slide deck. There were also two people who without notice did not show up to present. It only takes one guess to figure out which members those were. On top of that, the group is unorganized, and will not respond to communications in a reasonable time, if at all.

On the complete opposite end, you have the group that I am working with for the capstone project. They respond quickly. They actively engage to help. They have, in a short time, earned my trust. I know if they say they will get something done, it will be done. They contribute, a lot! When we are putting together the group papers, they do an amazing job of merging our ideas together, like putting puzzle pieces together to makes something greater than the sum of it’s parts.

This vast difference in group dynamic drastically changes how I feel about the course. The first class, I am now dreading. I can’t wait to be done with this term so I don’t have to work with them anymore. But when it comes to this capstone project, I can’t wait to be done with this term to so I work even more closely with my two partners. Here is to you, Zach and Xinpeng. I have hope that we will succeed in this project, because of the both of you.

Categories
Game Development

Problematic Problems

As seems to normally be the case, here I am on Sunday night, trying to get everything done that needs to be done, and there is so much more that could be done. However, it feels like a rhythm is starting to develop in our workflow, decreasing stress and panic greatly. Communication in the group has been great this week.

I was required to write a problem statement paper for our VR Rhythm game, which was particularly difficult to me. What world problem is solved by creating a video game? How can a problem statement be written for the creation of a game? I decided to try to explain that there is a demand for new games, and so the creation of our game would help meet that demand, and thus solve that problem. It was a stretch and flimsy at best. Receiving an 80% with notes saying that I didn’t properly hit the prompt, I decided I would resubmit.

So, after many hours of debating with myself, some guidance from the professor, and forcing my wife to listen to my complaints, I selected a new approach and tried again. Unfortunately, my original could not be salvaged. I needed a complete rewrite. And it paid off! I have now received full credit and glowing comments from the professor.

My advice for writing a problem statement for a video game project:

  • Look internally for the problem! The problem should not be something external to the game, but instead should be a problem that you expect to encounter in developing the game.
  • Look to other developers for solutions! Chances are other games have faced similar problems to your own. How did they address the problem? Would that work for your game?
  • There may be multiple solutions! My whole team ended up addressing very similar problems, and we all came up with different ways to solve it. Ultimately, combining portions of all of our solutions will create more novelty than any singular solution.
  • The whole project is not the solution! You don’t need to find a way that every piece of your game is tied in to solving the problem. It could be solved by a single system, or it could be many, but don’t try to force your entire project to be the solution to one problem.

Writing problem statements, and requirements documents aren’t very fun to me. However, I can already see the benefits of having these available when we start developing in earnest. Looking to the future, developing plans for how to address problems, and outlining specifications: it’s all making me excited to make something!

Categories
Game Development

Project Assigned

So, this week has been a crazy dash to get things done. Midweek we were assigned our capstone projects. I was hoping for something in game design, and I can’t be happier with the results. I will be working with a team of two other people to create a VR Rhythm game.

So far, communication with the team has been somewhat difficult. One of our teammates is in a different timezone, but I’m actually glad because I want experience working with people around the world. I like the idea of working remotely, and this is an excellent opportunity to develop teamwork skills. So far I have learned that it is very important to have the whole team decide on a method of communication as soon as possible, and a standard for how frequently people should response. We decided on a 24 hour turnaround on any communication, meaning if someone sends me a question, they can know that I will respond within 24 hours at most.

The contact for the project happens to be the professor for the capstone class. This simplifies things in many ways, but at the same time I would typically communicate with a professor in a very different way than a client. For instance, I may talk to a professor for advice on how to communicate with a teammate if they are not being helpful, but that sort of communication would be very inappropriate and unprofessional to send to a client.

We had our first client meeting just earlier today to discuss some of the specifics of the project. To my surprise, it is extremely open to our own creativity. There is no specific look, or game play loop that is required, other than for it to be in VR, work on the Oculus Quest, and be a rhythm game. My mind is buzzing with possible options. With only 9 months to build the game, it is going to be hard to implement too much. I can already tell scope creep is going to be a struggle. It would be easiest to make some sort of BeatSaber clone, but we want to take it in a different direction, doing our own thing, developing something new.

I’m excited! Let’s have some fun!