Sign in to follow this  
marky03

college

Recommended Posts

If you are asking this because you want to become a game programmer, you are better off having a solid Computer Science background. If you understand the CS basics (data structures, algorithms, programming, etc) well picking up a language is not that difficult.

Share this post


Link to post
Share on other sites
Just when i get out of highschool, thats exactly what i want to do. Game programming in c++..one college, beck college has you take math and science courses first..

Share this post


Link to post
Share on other sites
Are you currently in high school? It's a lot better to know such things before going into college. If you I think you should start with CS and possibly programming right away. If you're not in high school yet, then would be a good time start.

Share this post


Link to post
Share on other sites
Im going into 10th grade and have had interest since 7th or 8th. For this, for what i want to do, where should i start. Ive been learning blitz basic, which is for games, and it has basic and C combined...but its not as strong as c++ ONE BIT. Ive trie dplaying with c++ and man, biigggg difference.

Share this post


Link to post
Share on other sites
College will give you some ideas for game programming... but game programming is an entirely different beast than conventional app programming. Do what you're doing and if you're REALLY interested, you'll learn C++ along the way. As for college, all I can say is that it will teach you how to structure code and data at a basic level. This stuff is important but you'll have to figure out game programming on your own. I think the game programming courses that they're beginning to offer is a waste of time and money but that's just my opinion. Nothing beats experience (hands-on) and combing gamedev forums for info ;-)

Share this post


Link to post
Share on other sites
Start learning C,C++,Java now and probably C#. Mostly because CS program in most college and university will use those language to teach you Computer science concepts and theory. If you get an early start on these while you're still in high school then it will help quite a bit when you enter college/university. Put game aside until you learn enough of the science side, then you can start into game. That's how I would do it if I have a chance to do that, but I started programming when I enter the university. Not too bad but I just have more things that I need to learn in a short time. If you're set for computer science then start learning, as it's one of the fast growing field (dynamically growing and changing), and you have a lot to learn and keep learning as it grow.

Share this post


Link to post
Share on other sites
Start now. I'm 10th grade also, and I started when I was in grade 4 (I think. I was 9). It's never too early to start programming, and if you start now, then you'll be ahead when you get to college. Keep going with Blitz, then move on to C++ as soon as you feel ready.

Share this post


Link to post
Share on other sites
As Ideej said, don't worry about this specific language. Make sure you get a decent computer science background, and you can pick up C++ along the way.
And don't choose the college based on which languages they teach, because the language means *nothing*.
If they teach you some decent CS, you'll be able to pick up C++ in your lunch break, and you'll end up a much better programmer than if you choose a college which actually focuses on C++ rather than CS.

Share this post


Link to post
Share on other sites
Is it a bad idea to just skip right to c++? I mean i am taking VB in school, but not for gaming. Just App programming. But id rather move on right to c++ instead of screwing around wiht other languages.

Share this post


Link to post
Share on other sites
BTW - I disagree that game programming is a different beast. On the contrary, I strongly believe game programming brings together many different areas of Computer Science that are active research areas:

Graphics (Real and non real time)
Networking (Multiplayer, server-client, peer-to-peer)
Operating Systems (Consoles)
Performance and optimizations (SIMD, Multi-Core, Multi-processor)
Distributed Systems (Lightmap farms, build systems, etc)
Physical Based Modeling and Simulation (Animation, physics, etc)

Just to name a few...

Some of the areas require heavy CS background and a solid understanding of Math. Knowing C++ matters very little in most cases, since if you have a solid background you can pick up any language.

Share this post


Link to post
Share on other sites
Moving to C++ right away is not a bad idea, the bad idea is to choose a College based on the idea of learning a specific languages. Surprisingly enough there are schools that offer Bachelors and Masters degrees with focus on C++ programming.

Share this post


Link to post
Share on other sites
Quote:
Original post by marky03
Is it a bad idea to just skip right to c++? I mean i am taking VB in school, but not for gaming. Just App programming. But id rather move on right to c++ instead of screwing around wiht other languages.


As SpoonBender says, it's important to have a strong computer science foundation first, then worry about languages. If you're studying with VB in school now, I would stick with it and learn about program structure, because most languages are pretty similar in that area, with major differences being syntax. It's always good to know the WHY to do something before the HOW. Keeping with VB will allow you to concentrate on the bigger scope of programming, since you can ask your teacher questions. Trying to learn VB and C++ at the same time, without that foundation might be difficult and confusing.

As for your original question, there are technical and institutional colleges offering game design degrees popping up everywhere these days. Depending on where you are, you may have to relocate, so a BS in CS might be what you want to look into for post-high school education.

:stylin:

Share this post


Link to post
Share on other sites
Computer Science

n : the branch of engineering science that studies (with the aid of computers) computable processes and structures [syn: computing]

A Bachelors in Computer Science will give you a solid foundation on:
Programming concepts
Programming Languages
Operating Systems
Logic
Math (Usually CS requires Calculus)
Data Structures
Algorithms

Some electives in most CS programs:
Graphics
Networking
Distributed Systems
AI
Compilers
etc

I believe taking College classes before you graduate form HS to learn different technologies is a good idea, you can take some C++ classes if that is what you want. What I do not think is a good idea is to choose a BS or AS program on a College or University after you graduate from HS, based on wether or not the school offers C++ courses, or even a C++ degree.

Share this post


Link to post
Share on other sites
Quote:
Original post by ldeej
BTW - I disagree that game programming is a different beast. On the contrary, I strongly believe game programming brings together many different areas of Computer Science that are active research areas:

Graphics (Real and non real time)
Networking (Multiplayer, server-client, peer-to-peer)
Operating Systems (Consoles)
Performance and optimizations (SIMD, Multi-Core, Multi-processor)
Distributed Systems (Lightmap farms, build systems, etc)
Physical Based Modeling and Simulation (Animation, physics, etc)

Just to name a few...

Some of the areas require heavy CS background and a solid understanding of Math. Knowing C++ matters very little in most cases, since if you have a solid background you can pick up any language.

I'm only making the point that writing an application can be hard, but writing a computer game can be damn near impossible. What you said is so true. It's many areas of computer science. But that's what makes it different. I can write an entire database application and probably not have to worry about bitwise logic or assembly. Programming games requires in-depth knowledge.

I guess saying that it's a different beast is inaccurate. I just think that in most cases, it's a tougher beast to kill ;-)

Share this post


Link to post
Share on other sites
Do NOT enroll with any of the Art Institutes for Game Art Design or Visual Game Programming. I switched to the game Programming major here in Atlanta recently and the courses they have are incredibly useless. I'm not sure about whether or not you will need a Computer Science degree, but from the last few posts I'd say it's a good idea. I'm surprised no one has mentioned learning an API though. An API is just as important as the language you're using to me it seems, especially for 3D games. I've taken a stab at openGL and didn't really like it because there weren't very many GOOD tutorials online and it seemed like a real hassle just to create an openGL window to display graphics. DirectX has SO MUCH MORE documentation and tutorials online however and I've purchased a few books on it and am pleased with what I have now.

But just remember not to go to an Art Institute for programming and make the mistake I did.

Share this post


Link to post
Share on other sites
Quote:
Original post by coderx75
I guess saying that it's a different beast is inaccurate. I just think that in most cases, it's a tougher beast to kill ;-)


I've seen a flame-war about that not-so-long-ago around here... (*searching for a link to post*) :/


@marky03:
the folks saying that it's better to stick with paradigms and techniques than languages are 100% right. But I can see your point though.

At my Uni, first two semesters we only used Scheme, then one semester with Smalltalk. And then They magically assumed we all know C, and - knowing C and Smalltalk - they can teach us C++ in 1 month... Well, it was good to know C a bit back then. But later it was only "I don't care. Just pick a language and make the damn project!".

So go, learn C, C++, write programms. But only for your personal knowledge. They hardly will teach you something so common as C/C++ (well, maybe some basics). They will be forcing into you all the knowledge that is hard to gain on your own (mainly: math and programming paradigms). All the rest, including language, is your personal choice.

Share this post


Link to post
Share on other sites
Quote:
Original post by infernosnow
Do NOT enroll with any of the Art Institutes for Game Art Design or Visual Game Programming. I switched to the game Programming major here in Atlanta recently and the courses they have are incredibly useless. ... But just remember not to go to an Art Institute for programming and make the mistake I did.


Sorry to hear the courses in the school you are going to are not very good. I wouldn't rule all art institutes or design colleges out totally just because of one poor implemenation.

I think it would help the OP to have some reasons as to why you think those classes are "incredibly useless", and I'm curious myself.

:stylin:

Share this post


Link to post
Share on other sites
Personally I'd suggest getting a full CS degree. For no other reason as you would be better suited to get a job as a programmer in any field, not just game developement.

Share this post


Link to post
Share on other sites
Quote:
Original post by marky03
Is it a bad idea to just skip right to c++? I mean i am taking VB in school, but not for gaming. Just App programming. But id rather move on right to c++ instead of screwing around wiht other languages.

I know and use C, Java, Python, Perl, TCL, AWK, Lua, Lisp, MAXScript, and at least a half-dozen other languages. They look completely different, and often work completely differently. And yet, to a large extent, it doesn't matter what language I'm using at a particular moment. Ninety-five percent of programming has nothing to do with the programming language. Programming is not just about remembering the difference between a forward slash and a backslash..... it's about data structures and object interaction and dataflow. You will learn these things in a computer science class regardless of what language you are learning.

Share this post


Link to post
Share on other sites
Keep messing around and programming and you'll learn CS on the way. Use google, forums like there, there are some good tutorial sites, if you want pick up some books, plenty of resources. Take whatever courses you may have available in high school. If you're a gamer, play games a lot, it really helps in designing games, also try to find glitches. I'm a glitch hunter, I think it's fun and it's sort of a start to learning how a game works(somewhat). Use whatever language you feel comfortable with, hell if you want, try something like flash or shockwave to start designing(it makes things a lot easier, graphics are done for you, input, sound, you have to code stuff still). However I highly recommend C/C++, personally I like C++ the most and I find it the most useful for game development and I think it still will be in years to come. Java and C# are getting more popular and it'd be a good idea to learn them especially if you're going into college and such, they seem to be using those lanuages for learning and testing now. I recently took my AP test (did very well on it by the way woot lol) and it was Java. The previous year it was C++. So it's be a good idea to know C/C++ just for programming experience and you may feel more comfortable programming games, or just in general in those language, but also know some Java and C# to be ready.

Share this post


Link to post
Share on other sites
I am sure I'm alone here in offering this advice, but it's what I would do if I were you: Learn assembly language first. Most people associate assembly language with some uber-fast "premature optimization" waste-of-time, you'll never need it, blah blah blah. But it's simply the language that your processor is executing, step-by-step, all the time.

It's quite easy, actually. C++ is daunting because there are so many rules, you can mess up syntactically and semantically in so many different ways, it's insane. It's why there's a vast community of C++ developers who structure their code foremost around techniques that make the compiler catch semantic errors. With assembly, the rules are very simple, all the semantics are single instructions which are heavily documented, 99% of errors are basic logic errors.

So instead of worrying about what you might be doing wrong, you can see exactly what's happening. Sure you might not be able to write that FPS you're dreaming of, but you can still write Tetris (Assuming mode 13h is still available...) And it's not crucial that you know everything now, so this is the only real "down time" you'll have if this is your career; no one else will teach you assembly. And when you start to learn other languages, you'll have a good grasp on the underlying Why? of how things evolved.

Anyway, I do program video games professionally. I use SIMD assembly very frequently, on multiple architectures, and I'm sure that my knowledge with assembly got me a job in the first place. Now, I don't work for Naughty Dog, but I do have tremendous respect for them... and here's what they have to say (emphasis theirs):

"Assembly programming alas is all too often considered a dying art form; however, this is definitely not the case at Naughty Dog. We take assembly programming VERY seriously and use assembly extensively in our games. We're looking for someone who really enjoys getting down to the metal and writing highly optimized assembler code. This person should have a very solid grasp on caching issues, processor pipelining, and latencies. Strong 3D math skills are a big plus, and good fundamental 3D math skills are required."

Share this post


Link to post
Share on other sites
I'd be a lot more inclined to suggest learning assembly if x86 assembly weren't such a horrible, HORRIBLE piece of crap to actually work with. I really don't know of a single architecture that's less elegant or has more gotchas. MIPS assembly would be a good start for beginners, though.

Share this post


Link to post
Share on other sites
If you looking into actual college, the one I go to (WPI Worcester Polytechnic Institute) just started a new major IMGD Interactive Media and Game Design http://www.wpi.edu/Academics/Majors/IMGD/ sorry not clickified. I just graduated but am going back for Masters (CS), I was only to take the intro classes, which are nice but very simple and easy. I would highly suggest though if you did come to WPI would be to dual major in CS and IMGD. I don't know the exact numbers, but I am fairly certain you can get the dual major without overloading/staying an extra year or semester because the majors overlap a lot. I have no idea how helpful the actual IMGD major would be to get a job in the industry, but it can't hurt and the CS degree is good.

-THACO

P.S. the 2 classes I was able to take, the first one was about analysis of video games, the second was going through the developemnt cycle. We actually created a design doc, and developed our own game using gamemaker. This major cators to both the art side and the programming side, you can choose whichever side you want. You will also do a MQP (senior project) which in this case would be heavily game related, none have been completed yet because the major started last year. I can only assume it would probably end us with creating mods or simple 3d engines?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this