We did this drawing a bull’s-eye to mark in the center what is important to get done first before we get distracted on working on the non-essential parts of the game.
Making games one step at a time
Sunday, April 27, 2014
The Start of a New Game
Three
friends and I have started the process of making a game on our free time. We
try to meet Monday through Thursdays after school for an hour of two. For the
first week we did a lot of brain storming. We wrote many ideas on the white
board, seeing what we liked the best. After spending about an hour on taking
turns with our game ideas, we decided on an idea we all liked. When we decided
on the idea on making a rouge-like game for android devices, it was time to go
more in-depth on what the game was going to be. While doing that we also
decided what the core mechanics of the game are.
Sunday, February 9, 2014
So for the past 5 weeks, I have
been working on a game. I’ve been working with my classmates, so we are a total
of 11 people working on this game for our game engine implementation class.
This game is called Lycan(https://www.dropbox.com/s/wn2tbejoudwbx1u/Lycan.exe). Lycan is currently being built on the Unity game
engine. This is the first time I have been part of a team larger than 4 people
and that has made working on this game an interesting experience. So the way
the team got split up was 2 people on coding game play, 1 on AI, 1 on
networking, 1 on UI, 1 on audio, 2 as level designers, 2 animators and
modelers, and me on art. Everyone in the class is a programmer first, so it was
different for some of us to not work mainly in the code base.
As an
artist I mainly worked on textures. I actually worked on all the textures in
the game. I have some experience with using Photoshop, so I think I was the
best candidate to the job. The textures I worked on ranged from tileable
textures like wood and the dirt on the ground to the skybox the players see to
the texture on the Werewolf and the human player.
The textures
on the players were the most challenging textures to make. Mainly because I need
to UV the models. That was very time consuming because I wanted to get the UV just
right, in order to make my job of making the texture easier. I also I forgot
how to UV a model, so plenty of time of spent on learning from mistakes, but I
think I learned how to me a good UVer and I am comfortable doing that job.
In the
end I think I learned a lot on what it means to be in an artist when working on
a game. Being an artist is probably a different experience in industry from
what I experienced, but I think the principles are similar. Anyway, when I
communicate with an artist on my team in the future I’ll have an idea on how to
talk to him and know the artist’s point of view.
Friday, December 13, 2013
John Paul Ownby: Is the game industry right for you?
For the
early parts of John-Paul Ownby’s life he thought he was going to be a musician.
He has played piano for most of his life. Ownby was told that he was great and
should pursue this career path. When he was deciding what he wanted his major
to be in college, he decided that music was the clear choice. A few years
later, he works in the game industry. He works at Disney at Avalanche Software.
The
point of that was to give an example that you may not end up working where you
expect to work. And to illustrate that just because you like something goes not
mean you are fit to make that something your profession. When perusing his
musical career, Ownby did not like to practice playing the piano for more than
two hours. This was a clear sign that music was not the career path for him. So
just because you like to play games goes not mean you should get into the game
industry.
If you do decide that the game industry is for you, you
first must know some of the negatives. Crunch is a very prominent thing in the
game industry. You will work long hour regularly and it may burn you out. Having
a career in the game industry is not a very secure thing, companies go under
often. This field is very competitive, so just know that you are replaceable. You
will get paid well, but you could get paid better elsewhere. And In these sense
you could get a better job elsewhere. Other tech companies will pay you better,
provide better security, and are less competitive. If those negatives do not
scare you then let’s check on some of the positives.
The
main reason to join the game industry is because it is creatively fulfilling.
Making games is one of the most creatively fulfilling jobs out there because
there is so much that goes into making games. When making games there are an
always new things to be learning. If you like solving problems and doing things
that have not been done before then maybe making games it for you.
Friday, December 6, 2013
Joe Barnes - What he looks for in a new hire
Joe Barnes has been in the game
industry for 22 years. He was worked on games that have come out on the Super
Nintendo and Sega Genesis. Barnes enjoys working on low level engine
programming. When Barnes is looking for a new employee here are things he looks
for in them.
First thing he looks for is
if the person has strong C++ skills. If you are going to be an engine
programmer you are going to use C++ as your primary language. So having strong
C++ skills and being comfortable with the language will do you well. Barnes
also likes to know that you are interested in the language because having an interest
in C++ will lead to learning quicker. Understanding the ramifications of code
you write is also a big deal because you knowing what your code is doing extremely
important. You will be working in a team, so knowing how your code can and may affect
the project as a whole will save the team lots of time from debugging.
Next thing Barnes looks for
is if the potential employee is a team player. Making games is a team effort,
so enjoying who you work with is key. Especially when you are working 60+ hour
work weeks, you will hope the people you work with are likable. Being a team
player also means being able to ask for help and working well with others. As
the new guy you will want to ask to help constantly, so you understand what is
going on in this company’s code base. You do not want to waste time trying to
figure out something when somebody else already knows the answer.
Some questions you may be asked
in the interview process are what is the difference between const char * p and
char * const p. Also seeing if you are able to reverse a string in place. And
being able to tell what is wrong with this method, Vector Cast( Vector
Direction).
Thursday, November 28, 2013
Singleton Design Pattern
Singleton is a simple design
pattern. It is used when you want one
global object that can be used throughout the entire project. An example when
you may want to do this is when using debug tools like a logger.
You would only like one logger in your project so that one logger is logging
your projects information out to the same file, so you do not end up with
multiple files.
In order to have one instance of
the object you need to control when the object gets initialized. One way to do
this is to do the initialization of the class in itself and to disallow the any
coping or assignment of the class. So first you make the constructor private and
disallow copy and assignment. The reason
for disallowing copy and assignment is so we do not let ourselves or anybody
else to make another instance of the object. You should end open with something like this:
Next you need to declare your instance of the class, so declare a static instance of
the class as private. Now we need a way to give access of that instance to
other classes. So make a public static function that return an address of the
class. Next define the function so it returns the static instance that you just
declared. Now
to call the single instance of the object in another class you scope into the
class and call the function that returns the class like so, “YourClass::GetTheInstance()”.
And that all this is to the Singleton design pattern.
Friday, November 22, 2013
Del Campbell: The Cons of Working in the Game Industry
Del Campbell, currently working at Avalanche
Software, has been in the game industry for about the same amount time as I
have been alive. He has spent all those
years with continued passion for what he does. Over those years he has learned that there are
a few negative sides in working in the game industry.
Cons:
Hours –
If you work in the game industry it is not rare that you work 40+ hour weeks. This
is just the norm, so it is something you should get used to. Part of the reason
people work so many hours is game industry is also no stranger crunch. During
crunch, employees are expected to work at least 60+ weeks and that includes
working on weekends. Working all those crazy hours can and will wear out people
out. This will lead to many people getting a divorce.
It Actually Work – People think
that getting into the game industry is all fun and games since we are making
games. But they are in for a rude awaking because making games is hard and
requires lots work. Many smart people work extremely hard to make a game, so
making a game is not the same as playing games.
Stability – The game industry is
not a very stable industry to work in. It is possible that you may work for
weeks without getting paid and you will do it because you are passionate for
the product you are making. Smaller companies are especially scary because you
may have a job one day and the next you do because work is low. Also if the
company releases a game that is not successful the company has a high likelihood
of shutting down. And if you are the new guy working at a place that just
shipped a product, there is a chance of you getting laid off while the work
load is low.
Friday, November 15, 2013
Ryan McBride: What to Look For In New Employees
Ryan McBride has been in the game industry since 1995. So he
has been in the business for 18 years. He has had experience on with working as
a QA manager, designer and programmer. During that time, has also helped with
the hiring process. McBride shared what he looked for in a new employee.
First
and most importantly McBride would ask himself, “Can I work with this
person?” If you are going to make
something as big as a game that requires a lot of interactions with others, it
is important to be able to work with those people to make meaningful progress.
This question also answers how well the person can communicate. Communication is key because game making is a collaborative
project. You need someone that will be able to talk to other parts of the team
and be able to explain what they want. Talking to others is also important when
asking for help. You are more valuable getting a feature done in a day with
help rather than getting that feature done months later with no help.
The next
thing McBride would do is figure out how to you think. Learning how somebody
thinks is important because you will figure out if you are right for the team.
Also learning how somebody thinks is more important to learning what the person
already knows. You could teach the person the specifics of what they need to
know for the job, but it is harder to teach people how to critically think. This
process also shows how a person solves a problem.
After
he checks for both of these factors he looks at their projects, schooling, and
code. He sees the person’s portfolio and seeing how good their work is. It is
important to have you projects publicly viewable. This way employers can see it
at any time. Also have the code viewable so they could see how you work. And it
is important to have experience in working in groups and with some sort of
revision control. And do not be afraid to move in order to find a job.
Subscribe to:
Posts (Atom)