Where to start? - Printable Version
+- iDevGames Forums (http://www.idevgames.com/forums)
+-- Forum: Development Zone (/forum-3.html)
+--- Forum: Game Design (/forum-5.html)
+--- Thread: Where to start? (/thread-2856.html)
Pages: 1 2
Where to start? - Next Generation Chocolate - Jan 6, 2008 04:13 AM
I'm new to the forum. Anyways, seeing how I'm extremely new at game design (no knowledge whatsoever), can someone please tell me, what would be the best way to learn, and actually make a greeat 3d game one day? BTW, what would be the best languages to learn, and what is the BEST way to start possible?
Where to start? - stevejohnson - Jan 6, 2008 08:31 AM
Start by reading this post from a few days ago, then ask any other questions you may have. Let's try to keep the duplicate content to a minimum.
Where to start? - SethWillits - Jan 6, 2008 03:39 PM
That thread really sucked, though. Nothing informative at all IMO.
The way I started learning programming was (other than HyperCard) starting to use REALbasic ($100, academic version is less). The language is simple (no memory management) and there's a large really friendly community ready to help. I wrote mainly applications (and some games) until I got pretty darn good at it (if I may say so). I learned all about basic programming principles and object oriented programming, and then I started getting into the more advanced stuff.
To do this "advanced" stuff I need to work with "Declares" which are one way for REALbasic to talk to C-based APIs like Carbon (the older/traditional set of APIs for Mac development). Using declares required learning a bit of how to use C, so that's how I got my feet wet with C.
One major downside to REALbasic for game development is that there is no native set of classes that really scream "game development." There is an ancient 2D sprite surface which was cool in 1998, and there's the newer RB3DSpace which almost works fine for pretty good 2D stuff, but is wonky for 3D stuff, so generally, it's just not... ideal. Then tack on the other missing features like advanced audio and device input and it looses its appeal.
So for this reason, I learned C and started using SpriteWorld. SpriteWorld (an oldie but a goodie) is a 2D animation toolkit that provides a bunch of functions to make 2D games. With that I wrote (actually rewrote, since I had previously written it in REALbasic) Space Spuds (an asteroids game) which was not very difficult at all and very very helpful in learning stuff.
After I did that I moved on to dabble a bit in 3D. I bought OpenGL Game Programming which teaches the popular cross platform API for 3D graphics. (This is what big name games like Doom 3 use.) I did a few things there, but got sidetracked with other projects, so I put my game development on a hiatus.
That's the short version of how I learned things. I'm still not an expert in 3D/OpenGL stuff, but I know enough about things to understand what pieces there are and how everything fits together.
Naturally, I'd recommend doing the same thing I did, but if you're brave, resilient, and persistent enough I definitely think it's possible to just jump in and start with C. In itself it isn't a super hard language to understand if you take it bit by bit. (They taught it to complete morons at school, after all.) SpriteWorld, although old (and slowly being rewritten from the ground up to be much more modern) still works great and is fast. It's also really simple. I also have a decent enough "engine" that's commented well to get you up and running with it, handling all of the audio, display, and input stuff letting you focus on learning how to organize a game and use C.
As you can see by reading the other thread, every person has their own opinion as to what you should start with. TNT Basic, Future BASIC, Blitz, Processing (never heard of it before), HTML???, FreeBASIC, ObjectBasic, Ruby, Python, Lua, etc etc..... There's a billion options all to say "start with something simple." The problem I have with 90% of those suggestions are that they're either a) outright silly (IMHO), b) next to nobody uses them at all, or c) next to nobody uses them at all for games. The ones that are left over (Blitz, TNT Basic, and a few others) are nice and game focused so they're pretty good for starter stuff and even more advanced things, but I think it's worthwhile to at least consider taking something a little more meaty step by step.
Where to start? - igame3d - Jan 6, 2008 04:35 PM
Never heard of Processing? Living under a rock much?
Its been around long enough for five books to be written on it.
And its only at version 1.0 beta!
I'm guessing at least five years since I first saw it.
Lua's not used in games? What?
That rock must be a big one.
Homeworld 2, World of Warcraft, Freedom Force, Marathon: Aleph One...just to name a few.
Here's 93 game related pages for Lua on Sony PSP
The OP has big plans for a great 3D game, but has not really started even looking into what they need to learn, else they'd have tried whats available and taken a look in the book store and picked up something.
Also note the specific reference to "game design" which is not exactly game programming. Not much point in souring their viewpoint with opinions on this or that language if what deep down they want to do is write great fiction that others can interact with.
The best advice for the OP is to dig around these forums, read lots threads that intrigue your curiosity, until you feel like a total nerd, and then you will be ready to choose your next move.
Ask questions, spill your brains on a few threads, and find an area of learning you feel you can follow through on.
Use the search function.
And in closing I will say, iGame3D with Lua is the best thing to learn, all other options are for the eternally damned. Its true.
Where to start? - AnotherJake - Jan 6, 2008 04:38 PM
I did the old fashioned way by learning C, starting in like 1990 or so. I wouldn't recommend against it, but I personally think that nowadays there are two really fantastic solutions for heading straight into 3D:
1) If you have a Winderz PC (I dual boot into XP on my Mac for it) you should absolutely look into learning C# and programming XNA with it. That is hands down (in my opinion) THE best thing going on for independent game programmers nowadays, and C# is a really awesome language IMHO (not quite as good as Obj-C, but real close). And it's free on Windows. You can also move those games onto your XBox 360 if you have one, but it costs $100 a year to do so.
Where to start? - SethWillits - Jan 6, 2008 05:57 PM
igame3d Wrote:Never heard of Processing? Living under a rock much?
Ok..... I was just saying I've never heard of it.
Quote:Lua's not used in games? What?
I never said it wasn't. I've played with it myself.
Where to start? - SethWillits - Jan 6, 2008 06:07 PM
Yeah, this was another point I was going to make. Most suggestions are always for things that are free. (Probably because a) free is usually nice and b) most people asking are young and have no money).
Paying for things usually gets you some pretty spiffy stuff you won't find elsewhere, though. This is why I'm still a REALbasic fan for beginning programming; it's easy to pick up, scales pretty well, and has something of everything built-in, unlike most other solutions.
XNA & the different Torque engines are great on Windows, Dark Basic and some others look nice as well, though being a Mac development forum...
Unity's a great solution. Unity is definitely wonderful and more and more of the people on this site are using it. 2.0 w/ networking has finally gotten me on board. The only downside is buying it, finding out you don't like it or programming at all, and then wondering what else you could have spent the $200 on.
Where to start? - AnotherJake - Jan 6, 2008 06:27 PM
FreakSoftware Wrote:XNA & the different Torque engines are great on Windows, Dark Basic and some others look nice as well, though being a Mac development forum...
Yeah, that does seem a bit odd doesn't it? But consider this: I think of myself as 100% Mac and have no intention of ever selling a software product on any other platform, but I dual boot into XP just to fiddle around with XNA from time to time. It's *that* good! I don't use Windows for anything else at all. It is incredibly cool to make a little game and upload it to my living room Xbox 360 to play on the 40" HDTV in all its glory. If I were a Windows user wanting to start 3D game programming, I wouldn't consider any other alternative. If I were a Mac user wanting to start seriously getting into 3D game development, I would still consider it. In fact, if it were I who was starting off and didn't necessarily have an attachment to Mac and loved 3D games so much that I wanted to seriously get into them, I would most definitely drop the Mac and go Windows-only just for XNA. I can't believe I just said that, but dude, it's that cool! Not recommending against Mac, but just being honest about 3D game programming. Unity certainly fits the bill on the Mac IMHO, but for the price, if you have an Intel Mac, you could afford Windows and XNA too!
Where to start? - SethWillits - Jan 6, 2008 06:47 PM
Yeah, being able to upload to a console... super cool. I'm pretty sure I heard some things somewhere about Unity & Wii being worked with. That will be awesome if it ever happens.
They're now teaching XNA at my school, but I just graduated so I couldn't take the course. A one stop shop for Windows & Xbox development is pretty enticing. Wonderful experience for working in the industry too.
GarageGames has an interesting solution as well. The Mac side is still lacking (though not as much as before), but they now allow you to basically use the same code and deploy on Mac, Linux, Windows, Xbox 360, and the Wii. That's pretty awesome. There are still some parts that are playing catch-up, and there's some porting needed between different engines, but let it evolve for a few more years and that'd be a nice package. (A little pricey in indie terms, but far less than hundreds of thousands of dollars.) Pretty cool especially considering it costs $150 to get started. The other nice thing about it is that there are a few books on Torque and the community is huge.
Where to start? - AnotherJake - Jan 6, 2008 07:00 PM
FreakSoftware Wrote:The other nice thing about it is that there are a few books on Torque and the community is huge.
Yeah, I have one of the books: 3D Game Programming All in One. It's a pretty good comprehensive book on how to make games with Torque, but sadly, it is Windows-centric.
I'm still split on Torque. I didn't like it on the Mac and I'm still a little peeved at them on their Mac support (I assume my license is still valid but I haven't checked up on them in over a year), but it's a pretty good product on Windows, like you already said. They also have great tie-in products with XNA (as I've read, but not tried personally) and what appears to be a great relationship with Microsoft on that front.
Unity on Wii would actually be a HUGE plus on Unity's side. And Unity is cross-platform too, as I recall, if that's your thing, and you add some extra cash to your license. Don't know if that's changed recently though...
Where to start? - aarku - Jan 6, 2008 08:09 PM
FreakSoftware Wrote:Yeah, being able to upload to a console... super cool. I'm pretty sure I heard some things somewhere about Unity & Wii being worked with. That will be awesome if it ever happens.http://unity3d.com/company/news.html#Unity-To-Enable-Nintendo-Wii-Games
You need a Nintendo dev kit, but you can contact Unity to get using it. Trick is the Nintendo dev kit. http://www.warioworld.com/apply/wii.html
In the mean time, someone made a plugin that lets you use the Wii remote+nunchuck in Unity on the Mac. I truly believe if some indie developer made a cool console grade Unity game that would work well on the Wii (By first developing for Mac/PC), it'd be very within the realm of possibility to make it happen. Just need some of that damn talent and ideas.
FreakSoftware Wrote:Unity's a great solution. Unity is definitely wonderful and more and more of the people on this site are using it. 2.0 w/ networking has finally gotten me on board. The only downside is buying it, finding out you don't like it or programming at all, and then wondering what else you could have spent the $200 on.They do have that 30 day trial and they have a record of liberally extending trial licenses.
Where to start? - aarku - Jan 6, 2008 08:16 PM
Next Generation Chocolate Wrote:what is the BEST way to start possible?http://unity3d.com/
More than worth every penny.
Where to start? - FlamingHairball - Jan 6, 2008 09:11 PM
But what if you don't have any penny's?
Where to start? - igame3d - Jan 6, 2008 09:20 PM
Unity got three pages of coverage in this months Game Developer magazine.
The three reviewers were pretty much in love with it.
If the Windows version was available I don't think there would have been any complaint at all.
I've been reading the magazine for thirteen years, waiting for a Mac game development program to show up. This is a milestone.
The money I spent on Unity makes me feel like a proud uncle every time they make a move forward in the industry. Well thats about where I limit the religious awe that tries to take hold.
I hear a choir of angels calling...
Where to start? - aarku - Jan 6, 2008 09:23 PM
Hairball183 Wrote:But what if you don't have any penny's?Sell blood/plasma/other fluids for a month or two.