C Board  

Go Back   C Board > Community Boards > General Discussions

Reply
 
LinkBack Thread Tools Display Modes
Old 04-16-2009, 04:09 AM   #1
Registered User
 
Join Date: Dec 2008
Location: California
Posts: 37
What game programmer should I be? need some advice.

Creating some games on my own is fun but I think this is the right time I should focus on what field that I really want to be. I don't have any 3D game to show on you right now but after finishing this 3D maze that I'm going to make this weekend will really be a one step forward for me on my goal.

Graphics Programmer
- Excellent C/C++ programming skills
- Superior 3D math skills
- Expert in OpenGL, including the newest extensions ( e.g. shaders, vertex buffer objects, frame buffer objects ) and low level issues
- Experience with writing and maintaining shaders, both in high level languages (cg, glsl, hlsl) and assembler.

Physics Programmer
-Excellent C/C++ programming skills
-Superior 3D math skills
-Experience writing simulation code for components such collisions, contact force calculation, fluid-dynamics
-Experience with commercial game physics packages

So both needs to have a superior 3D math skills that I lack right now. So I think I should study on my own linear algebra or get a class on my university.

1) I suck so bad in designing or what I mean in arts. I hate web designing so I quit those CSS many years ago. So, can I still become a graphics programmer?
2) I may not be a god in math but can I still be one of these?
3) If linear algebra is the most advanced for 3D programming, what's in physics?
4) I want to know which of these two is better?

So please help me o my gurus! Teach me and give me some advice, Gurus.

Last edited by m3rk; 04-16-2009 at 10:50 AM.
m3rk is offline   Reply With Quote
Old 04-16-2009, 04:53 PM   #2
Super Moderator
 
Bubba's Avatar
 
Join Date: Aug 2001
Posts: 7,811
Be what you want.
__________________
If you aim at everything you will hit something but you won't know what it is.
Bubba is offline   Reply With Quote
Old 04-16-2009, 06:07 PM   #3
Senior software engineer
 
brewbuck's Avatar
 
Join Date: Mar 2007
Location: Portland, OR
Posts: 5,755
If game programmers are constantly having to deal with math, then their code is written wrong.

For instance, you need to understand quaternion math just long enough to write a QuaternionRotate() function (maybe 20 minutes?) If you're constantly thinking about math, something's not right.
__________________
"Congratulations on your purchase. To begin using your quantum computer, set the power switch to both off and on simultaneously." -- raftpeople@slashdot
brewbuck is online now   Reply With Quote
Old 04-18-2009, 07:39 AM   #4
Registered User
 
Join Date: Jun 2008
Posts: 266
Physics
__________________
Quote:
Fried chicken for everybody!
-Kernel Sanders
lruc is offline   Reply With Quote
Old 04-19-2009, 01:42 AM   #5
Registered User
 
Join Date: Dec 2008
Location: California
Posts: 37
@Bubba

I want to be good at both but it's not possible. Maybe time will tell which one I really love.

@brewbuck

Yeah, I think you're right. So far I didn't use any linear algebra formula on my 3D maze. Actually, I didn't have any idea how to apply it in opengl.

@lruc

Why physics?
m3rk is offline   Reply With Quote
Old 04-19-2009, 11:46 AM   #6
Super Moderator
 
Bubba's Avatar
 
Join Date: Aug 2001
Posts: 7,811
Since this has nothing to do with code, I'm moving this to GD.
__________________
If you aim at everything you will hit something but you won't know what it is.
Bubba is offline   Reply With Quote
Old 04-19-2009, 12:38 PM   #7
Senior software engineer
 
brewbuck's Avatar
 
Join Date: Mar 2007
Location: Portland, OR
Posts: 5,755
Game physics programming is not really like scientific physics programming. The goal in scientific programming is to get results which correspond to the theories you are trying to test. The goal of game physics is to generate effects which resemble real physical effects closely enough that the player will be fooled into thinking they are real.

It isn't always true that the best way to simulate game physics is with traditional physics simulation methods. It only has to LOOK right.

So I wouldn't necessarily separate game physics from other game programming. It's all the same idea, which is to create a simulated environment which is entertaining.
__________________
"Congratulations on your purchase. To begin using your quantum computer, set the power switch to both off and on simultaneously." -- raftpeople@slashdot
brewbuck is online now   Reply With Quote
Old 04-19-2009, 04:47 PM   #8
Registered User
 
Join Date: Oct 2006
Location: UK/Norway
Posts: 469
Shawn Hargreaves Blog
h3ro is offline   Reply With Quote
Old 04-19-2009, 06:21 PM   #9
Registered User
 
Join Date: Jun 2008
Posts: 266
Quote:
Originally Posted by m3rk View Post
@Bubba

I want to be good at both but it's not possible. Maybe time will tell which one I really love.

@brewbuck

Yeah, I think you're right. So far I didn't use any linear algebra formula on my 3D maze. Actually, I didn't have any idea how to apply it in opengl.

@lruc

Why physics?
I don't know. I just like math.
__________________
Quote:
Fried chicken for everybody!
-Kernel Sanders
lruc is offline   Reply With Quote
Old 04-19-2009, 07:25 PM   #10
mastering the obvious
 
MK27's Avatar
 
Join Date: Jul 2008
Location: SE Queens
Posts: 5,098
As someone who 1) doesn't play games but tries to appreciate their beauty 2) is in the midst of an occasional "3D graphics" programming fit 3) is also considering various alternatives to pursue in terms of a programming career (certainly not games -- but it would be an admirable thing to do), I would observe:
  • computer science and computer programming is a field where specialization has probably grown faster than any other "academic" realm remotely classifiable as science -- in history.
  • today I was trying to read more of "Mathematics for Game Programmers" (Tremblay), which I found at the library and is very good (I think). I figured it would be an interesting intro to basic linear algebra stuff (it probably is). The problem is: I was bored by math when I was kid, and figured my tastes had changed enough that I might get excited picking up where I left off. Boy, am I wrong. The only way I could get interested in this would be by force, like school.
  • you cannot spend your entire life in front of a screen or reading books (but you're free to try).
  • an interesting thing about the aforementioned book is that it could probably be read as an in depth guide of how to create your own 3D API (such as GL or DX); which since that's done already, might be better titled "A Mathematical History of Game Programming". And by that I do not mean that it is some how irrelevant to contemporary computer programming.
  • brewbuck really said it all; if you want to write games, you need to spend time doing it, and when you NEED math to solve a problem, go find it. The amount of trigonometry it takes to make a wireframe sphere was more than I was hoping, but starting from nothing (I had heard the word "cosine" before), it still only took me an afternoon (not a PHD!). It makes total sense to me that it is all about "three dimensionality". As a programmer you have to look at a niche in an ecosystem: while in the past one person may have done everything from soddering hardware to configuring interfaces, a production quality game is obviously the exact opposite of that, which is why the game industry is such a driving force in the industry as a whole (it puts money into specialization).
__________________

"A man can't just sit around." -- Larry Walters

Last edited by MK27; 04-19-2009 at 08:26 PM.
MK27 is offline   Reply With Quote
Old 04-20-2009, 11:12 PM   #11
Registered User
 
Join Date: May 2007
Posts: 147
Generally, game programmers are consumers of math, not mathematicians.

The larger point, though, is that there are many layers in a team in larger firms. The question becomes where within that team do you want to be, or do you want to become one of the 'new' style independent developers - one person doing the whole thing.

Posit for a moment a large firm, highly competitive and at the forefront of new technologies. Artists gain greater flexibility to create detailed environments, and generate massive volumes of graphical data, some of it descriptive of motion (like the motion of hair in the wind), some of it descriptive of special effects processing (complex materials), etc.

New physics modeling may be required, and one or more high priests of math may be employed to design that math, then hand the specifications over to the programming team to implement it.

Similarly, there could be many such design-programmer handoffs, where the programmers may exist in tiers of various levels of competence and training, all paid accordingly. Naturally, the lesser trained are more expendable, less appreciated, but if they survive that stage and gain experience, they may either ascend to higher tiers or into management.

If that image sounds a bit bleak, take it as a warning. Like any other treadmill, it can burn people out. The better prepared you are to excel in that environment, the better your experience will be, but make not mistake of the simple truth - it's about money to the company that employs even the best of them, and unless you are a part of the business, your skills are a commodity they purchase. The company may earn millions, but your salary will be a function of your negotiating skills, and the kind of 'game' the company plays in keeping their costs low.

This works the same way in all fields. There are hundreds of thousands of musicians that toil in obscurity, many of great skill. A few are wealthy, and some of them aren't even all that talented, but are packaged and sold well.

There are personality types that function best in an employment scenario. They lack the incentive and drive to make their own business (or the luck, which is part of it). There are some that simply can't be content as an employee, but must be a creator - an entrepreneur. Depending on what you really want, and what you really are capable of, you should figure out where you are best suited.

Underneath your original question, though, is a larger philosophical point. You are asking, almost literally, if you really have to work all that hard at something you're not that comfortable with, math namely. You asked, too, which is better.

First, you really need to learn the basic point that no matter what you do, you'll get out of it what you put into it. Either decide, and dedicate your entire mental energy toward that, or don't - and benefit accordingly. It's a bit harsh, but then it's also like asking if you have to really run all that fast to get into the Olympics.

Second, physics is more about math than graphics. Physics engines are so plentiful now that you're either relegated to using an existing engine, in which case you're not really a physics engine programmer - or you're inventing new ways to portray detailed physical phenomena, and thus heavily steeped in the mathematical means of portraying it.
JVene is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Open Source / Semi Open source game idea. Help needed CaptainPatent Projects and Job Recruitment 10 05-16-2007 10:44 AM
software engineer and game programmer shiva shankar Game Programming 2 03-30-2006 01:14 PM
12 year old in need of game programming advice thehack Game Programming 35 07-03-2004 11:04 AM
Game Programmer's AIM Circle: Join Today KingZoolerius66 A Brief History of Cprogramming.com 28 12-20-2003 12:12 PM
My Maze Game --- A Few Questions TechWins Game Programming 18 04-24-2002 11:00 PM


All times are GMT -6. The time now is 08:07 PM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22