ID:277660
Oct 6 2007, 6:07 pm
|
|
Since I've got a little extra cash on hand, I decided to get a game programming book, but I need a bit of help deciding from this page. So far, I'm kinda leaning towards 3D Game Programming for Teens (For Teens) but I'm still not quite sure; especially since it doesn't teach in c++ although it supposedly gets the job done according to a few reviews. In case you're wondering, I'm aiming for a book about $25 and below, preferably at this site(because I can easily go to a nearby store and buy it), and it possibly being on a widely used language such as c++(if it would be of major help). Any help is appreciated.
|
In response to Tiberath
|
|
Alright thanks..Any c++ book recommendations? 0_0
|
In response to Mecha Destroyer JD
|
|
C++ For Dummies? That's what I'm reading right now. It's quite interesting.
|
In response to Mecha Destroyer JD
|
|
http://members.byond.com/Hiead
Hiead's hosting some pretty good C++ books on his member page. I've also got a few if you'd like different ones. If you're going to use any of those, I say just go ahead and buy the XNA book if you're interested in Windows/Xbox 360 development. I don't know what else to say. If anything, just get a book that documents a graphical API useful in creating games, like OpenGL or DirectX. You're going to want to start off small in 2D games (are you even getting into gamedev, or are you interested more in application development?) and then work your way up. There are a ton of resources available for these tasks, like Gamedev. Once you understand all the 2D stuff, it would be time to get into 3D (if you were interested anyway). This is where buying books comes in handy. You'll want books that document OpenGL, DirectX, or the basics of 3D game programming. It might be more fun to venture into the more advanced things on your own once you know the basics. :D |
I can give you reviews on two of those:
1. 3D Game Programming All in One SE with CDROM by Kenneth Finney This book is great and fairly in-depth for teaching you the basics of making games, but it uses Torque/TorqueScript, and therefore only gives you vague ideas on how game ENGINES are put together. Also, the CD gives a free version of Torque, but it's an older, sucky version, but it's sufficient if you ever wanted to learn it. 2. Microsoft XNA Game Studio Creator's Guide by Stephen Cawood and Pat McGee I was a little disappointed when I received this book because it was a fairly small book with large font. The chapters are very small. But it is okay that it is like that if you knew before-hand that this book only teaches XNA. It does NOT teach C#, nor does it teach DirectX, which are both necessary skills to have when working with XNA. You'd have to buy this book with another. This book does, however, cover XNA very well for what it is. There's probably some more in there that I have but I don't want to search through the list as it just lists everything. The kinds of books you need depend on your goals. For example, I doubt you'd want 3D Game Programming for Teens with CDROM because it's made for people who've never touched on programming or anything before, and even wastes time on web development which shows it will get you nowhere by the end of the book unless you're a complete beginner. Depending what path you want to take, I'd get some books/ebooks in about these quantities, and only get ones where you've read the reviews and description thoroughly. Note that you can find many with thorough walkthroughs of more than one language you need, but the more it has the less in-depth it will be: C# Game Programming: 1 beginner C# book, 2 advanced C#, 1 XNA, 1 DirectX, 1 game engine design, 1 multiplayer engine design, 1 3D modeling basics, 1 3D character design, 1 game math, 2 game physics, 2 game AI C++ Game Programming: 1 beginner C++ book, 2 advanced C++, 1 data objects, 1 DirectX, 1 game engine design, 1 multiplayer engine design, 1 3D modeling basics, 1 3D character design, 1 game math, 2 game physics, 2 game AI Java Game Programming: 1 beginner Java book, 2 advanced Java, 1 OpenGL, 1 game engine design, 1 multiplayer engine design, 1 3D modeling basics, 1 3D character design, 1 game math, 2 game physics, 2 game AI Torque/DarkBASIC/Other higher-level languages: 1. 1 beginner language book, 1 advanced, 1 3D modeling basics, 1 3D character design, 1 game AI So the cheapest route to take would be to use an already-created engine to begin learning on, and is VERY cheap if you already know 3D modeling and design, but you'll be less happy with your final results. If you want to become professional, go with C#, C++, or Java, but it'll cost you. Note that almost all game math books assume you're already good with calculus. If you don't yet know calculus, you'll also need some good math books. |
In response to Kunark
|
|
Alright, thanks again. I think I might try C++ for Dummies or somethig for now and look at some ebooks because it looks like solely teaching myself is gonna cost alot. I also have taken Pre-Calculus last year and am currently in Advanced Algebra and Trignometry instead of AP Calculus(kind of doubted my math skills) so I probably won't be completely stumped if that math is required. ALthough I've heard that Pre-Calculus is extremely different from AP Calculus.
Either way, I plan to take computer science in college but I kinda felt like why not get a "head start" if not just a little one. Game programming is also my ultimate goal but it is pretty confusing on where to start compared to Byond. I've somewhat tried the online route but when I come across errors and the community isn't as good as Byond's help-wise, I'm pretty much stuck not knowing what to do. I'll still probably check out more articles on Gamedev.net and some more ebooks though. |
In response to Mecha Destroyer JD
|
|
Books and e-books, whichever you prefer, are FAR better than most resources you will find on the internet. The internet is mostly only good for a. specific problems, and b. references.
Game programming is an akward place to start because it's one of the most difficult fields in the tech industly, but one thing that is good about game programming is that it can hold your attention for much longer. You will lose motivation faster if you are unskilled, but you will always WANT to do it, which is a plus. For a jump start for college game programming, learn about 3D modeling and a full-blown computer language like C++. For a jump-start in programming classes that aren't focused on gaming, learn a full-blown language like C++ very well, learn about low-level programming/design (Like ASM/binary, data objects, memory, etc), hardware, and fundimental technologies (like XML, windows/mac/linux, etc). Also, self-teaching is much less expensive than school for the same, if not better, education. But since you want to do both, that's a different story :) |
In response to Kunark
|
|
Personally, I hate e-books. They're a pain in the ass to read, and most of the time, they always refer to "attached CD ROM". Which is pretty useless if you don't have it.
That's why I'm more of a fan of the classic book. You can take it anywhere and read it any time. Without waiting for start up and examples that aren't accessible to you. -- For the reccord, even if you have a programming background. It's always good to refer to the basics. Some languages do things differently. I've started from the absolute beginning with C++, and not surprising, I've picked up a few bits of knowledge I never had before. Of coarse, it is boring as hell, but when you want to succeed in this profession, you have to be prepared to be bored. Anyone with a low attention span will not make a good programmer. |
It's best to start off with a basic C++ book, learn what you can from it, then decide to branch off into different areas. That way you know your way around a compiler, and have a basic understanding of the language itself. Diving right into a "OpenGL/DirectX Game Programming for Awesome People" would probably just confuse your average learning programmer and/or anger them into giving up.
Start off small and work your way up. That's the best advice I can give.