newbie

newbie

Re: newbie Posted by simke on Tue Nov 2nd 2004 at 9:47am
simke
1 post
Posted 2004-11-02 9:47am
simke
member
1 post 0 snarkmarks Registered: Nov 2nd 2004 Occupation: software programer Location: Slovenia
Hi!

I don't know if I am on the wright page but I think you might help me. I am a complete beginner in working with computer games. I do work on software programming but my work is based on financial aplications so it doesn't have much in common with computer games. I've always wanted to be able to work with computer games (especially developing them) and would like to know where to start. What software to use, which books to read or where to look for help? Anything would help and I would appreciate your help in getting me started.

thank you,

simke
Re: newbie Posted by scary_jeff on Tue Nov 2nd 2004 at 10:08am
scary_jeff
1614 posts
Posted 2004-11-02 10:08am
1614 posts 191 snarkmarks Registered: Aug 22nd 2001
I guess downloading the half-life (or other game) SDK would be a good start. It's probably best to try and make a mod for an existing game before making your own game from scratch.

I know there are a few open-source game engines as well, so maybe it would be worth having a look at one of those. I don't no the name off by hand, but a quick look on sourceforge should turn up something.
Re: newbie Posted by fraggard on Tue Nov 2nd 2004 at 10:40am
fraggard
1110 posts
Posted 2004-11-02 10:40am
fraggard
member
1110 posts 220 snarkmarks Registered: Jul 8th 2002 Occupation: Student Location: Bangalore, India
Assuming you have some C and C++ knowledge, the best place to start would be the "For Beginners" section at http://gamedev.net. If you're interested in learning OpenGL, there's a brilliant OGL tutorial at http://nehe.gamedev.net. I don't know of any DirectX sites off hand except for the MSDN.

If you'd like to get started with a simple 2d SDK, try the allegro game programming library at http://www.talula.demon.co.uk/allegro/. It comes with a fair bit of documentation.

Also, if you're going to be coding for windows, a beginners knowledge of the windows programming API might be useful. Try the book Programming Windows by Charles Petzold (Microsoft Press).

Simplest way to start, write your own tetris :smile: Work your way up to Pong, and then decide on where you want to go. Of course, I'm not much of a game programmer myself, but these are the most common names I heard when I was starting out in the same way. I suppose you're most important ally will be stubbornness.
Re: newbie Posted by Orpheus on Tue Nov 2nd 2004 at 10:44am
Orpheus
13860 posts
Posted 2004-11-02 10:44am
Orpheus
member
13860 posts 2024 snarkmarks Registered: Aug 26th 2001 Occupation: Long Haul Trucking Location: Long Oklahoma - USA
you start by saying "hi" which you did wonderfully, then we reciprocate by saying "welcome to snarkpit" which we slipped up on till now..

then we move on to the yukky programming stuff :biggrin:

welcome to snarkpit.
Re: newbie Posted by Forceflow on Tue Nov 2nd 2004 at 4:19pm
Forceflow
2420 posts
Posted 2004-11-02 4:19pm
2420 posts 451 snarkmarks Registered: Nov 6th 2003 Occupation: Engineering Student (CS) Location: Belgium
And if you need a good C++ editor: http://www.bloodshed.net/dev/devcpp.html
Re: newbie Posted by fishy on Tue Nov 2nd 2004 at 6:28pm
fishy
2623 posts
Posted 2004-11-02 6:28pm
fishy
member
2623 posts 1476 snarkmarks Registered: Sep 7th 2003 Location: glasgow
There's also the likes of amxmod, that allows you to add features to existing maps and mods, and the scripting language, small, even makes sense to me in parts. (though only very small parts )

It could be a way for you to dip your toes in, instead of jumping in at the deep end with something like C++

An example would be my avatar. It's a half-life model that flies around esporthalle tfc server, along with some other flying models. When any of them are close to a you, they stop, giving you a chance to use the use button on them. When you do this, you see from the birds perspective and can fly around in control of it, while your own player model stays where it was until you hit the use button again. Then your perspective returns to the player model.

Another thing that the birds do, is randomly drop large egg models. When the egg hits the ground, it opens to reveal possible bonus models inside. The bonus would be either a jetpack, a hook, a low grav backback, or a no-clip backpack. All of these bonus abilities are already available as amx plugins, but have been tweaked and modified to be used with custom models and sprites, resulting in the one of the best amx plugins I've seen. (I'm not allowed to talk about the best one yet :wink: )

None of this would be possible in tfc without amxmod.
Re: newbie Posted by Crono on Tue Nov 2nd 2004 at 8:55pm
Crono
6628 posts
Posted 2004-11-02 8:55pm
Crono
super admin
6628 posts 700 snarkmarks Registered: Dec 19th 2003 Location: Oregon, USA
simke said:
Hi!

I don't know if I am on the wright page but I think you might help me. I am a complete beginner in working with computer games. I do work on software programming but my work is based on financial applications so it doesn't have much in common with computer games. I've always wanted to be able to work with computer games (especially developing them) and would like to know where to start. What software to use, which books to read or where to look for help? Anything would help and I would appreciate your help in getting me started.

thank you,

simke
First off, that type of programming has its uses in game development. I think the harder part for you, based on your background work, would be the graphical end of things.

I mean, in games weapons, for example, are just classes that hold values to go into the physics algorithms.
I know from a programming standpoint the only issue I'd really have in building a game is the graphical end, since I have no experience programming graphics or relaying information to or from the video card.

I've got a friend who's developing a game off of an open source engine under GNU's GPL. I can't remember the name at the moment, I'll ask him though.

NeHe has openGL and some DX tutorials (DX has terrible tools and sucks.)
You'd also might be interested in the Cg language to use when talking to the video card as opposed to Assembly. It's about the same efficiency as C : Asm, so, it's quite good.

Really, if you wanted to do a game from scratch you can. In some respects it isn't a good idea to do this from the getgo since you can develop from other games and see how they did things. However, on the other end of the spectrum, those games probably have crappy code (most games do). They also rely on single platform libraries too often.

But, I'd really suggest:

Sites:
gamedev.net
neheproductions.com
nvidia.com

Books:
"C++ Primer Plus" by: Stephen Prata <- you probably have this already
"The OpenGL SuperBible 3rd Edition" by: Richard Wright and Benjamin Lipchack

You'll have to shop around for books on algorithms and the Cg language that suit your taste, I'm not as familiar with them.

As for developing suites, if I need to use an IDE I use eclipse. Otherwise, I use Vi or Vim.

I hope all that helps.
Re: newbie Posted by Orpheus on Tue Nov 2nd 2004 at 9:07pm
Orpheus
13860 posts
Posted 2004-11-02 9:07pm
Orpheus
member
13860 posts 2024 snarkmarks Registered: Aug 26th 2001 Occupation: Long Haul Trucking Location: Long Oklahoma - USA
you know, i used to think dealing with daves joke about bladder control issues was the pinnacle of feeling inadequate, but after reading this post through, i'd rather settle for just a small penis, than knowing just how dumb i am.. this thread really shows just how little my education really was :sad:
Re: newbie Posted by Tracer Bullet on Tue Nov 2nd 2004 at 9:19pm
Tracer Bullet
2271 posts
Posted 2004-11-02 9:19pm
2271 posts 445 snarkmarks Registered: May 22nd 2003 Occupation: Graduate Student (Ph.D) Location: Seattle WA, USA
I know as little about this subject as you Orph. It's not something your average "education" deals out. It's specialized knowledge.
Re: newbie Posted by Crono on Wed Nov 3rd 2004 at 3:45am
Crono
6628 posts
Posted 2004-11-03 3:45am
Crono
super admin
6628 posts 700 snarkmarks Registered: Dec 19th 2003 Location: Oregon, USA
Orpheus said:
you know, i used to think dealing with daves joke about bladder control issues was the pinnacle of feeling inadequate, but after reading this post through, i'd rather settle for just a small penis, than knowing just how dumb i am.. this thread really shows just how little my education really was :sad:
If it's any consolation, I didn't know any of this three years ago. Not to mention, the instructors I've had and have are incredibly good at what they teach.
Re: newbie Posted by Kain on Wed Nov 3rd 2004 at 7:38am
Kain
225 posts
Posted 2004-11-03 7:38am
Kain
member
225 posts 33 snarkmarks Registered: Oct 24th 2003 Occupation: Architect Location: Lebanon (Middle East)
Crono said:
First off, that type of programming has its uses in game development. I think the harder part for you, based on your background work, would be the graphical end of things.

I mean, in games weapons, for example, are just classes that hold values to go into the physics algorithms.
I know from a programming standpoint the only issue I'd really have in building a game is the graphical end, since I have no experience programming graphics or relaying information to or from the video card.

I've got a friend who's developing a game off of an open source engine under GNU's GPL. I can't remember the name at the moment, I'll ask him though.

NeHe has openGL and some DX tutorials (DX has terrible tools and sucks.)
You'd also might be interested in the Cg language to use when talking to the video card as opposed to Assembly. It's about the same efficiency as C : Asm, so, it's quite good.

Really, if you wanted to do a game from scratch you can. In some respects it isn't a good idea to do this from the getgo since you can develop from other games and see how they did things. However, on the other end of the spectrum, those games probably have crappy code (most games do). They also rely on single platform libraries too often.

But, I'd really suggest:

Sites:
gamedev.net
neheproductions.com
nvidia.com

Books:
"C++ Primer Plus" by: Stephen Prata <- you probably have this already
"The OpenGL SuperBible 3rd Edition" by: Richard Wright and Benjamin Lipchack

You'll have to shop around for books on algorithms and the Cg language that suit your taste, I'm not as familiar with them.

As for developing suites, if I need to use an IDE I use eclipse. Otherwise, I use Vi or Vim.

I hope all that helps.
This is chinese to me also. But I fully understood the last sentence. I hope that helps too...
Re: newbie Posted by wil5on on Wed Nov 3rd 2004 at 8:30am
wil5on
1733 posts
Posted 2004-11-03 8:30am
wil5on
member
1733 posts 570 snarkmarks Registered: Dec 12th 2003 Occupation: Mapper Location: Adelaide
fraggard said:
Simplest way to start, write your own tetris :smile: Work your way up to Pong, and then decide on where you want to go.
I've heard this a lot, and I personally disagree. Pong was teh easeh, Tetris is more difficult (with the rotating blocks and whatnot).

My first game was actually a space invaders type thing, but you were flying... think 1942 in space :biggrin: . Then I progressed to sidescroller helicopter games (ever played Tigers Bane?)... then i stopped fooling around in QBasic :biggrin: Ahh memories...

Since you obviously already have experience in programming (business apps, its still programming) just get out there and give it a go. Get your weapon of choice (whether it be Java, C++ or VB, yes VB can be used for games :razz: ), think of a simple game (something like Tic Tac Toe or Connect 4 is really good) and code it. The main things youll need to learn to convert over to games programming would be graphics/sound routines, and concepts like game loops.

And if you make any games that work, I'm sure youll get plenty of feedback here. Not that its our primary focus... but a lot of members know about this stuff, and I'm sure would be happy to comment on your work.

Oh and Jeff, getting the SDK out and screwing around with that is good if you have little programming experience, since with fairly little work you can get some nice results. If you write your own game, it takes more effort and youll have a less "polished" product at the end, but youll have a far better understanding of how it all works.
Re: newbie Posted by Crono on Wed Nov 3rd 2004 at 8:57am
Crono
6628 posts
Posted 2004-11-03 8:57am
Crono
super admin
6628 posts 700 snarkmarks Registered: Dec 19th 2003 Location: Oregon, USA
Never use VISUAL anything to develop games. I don't recommend using Basic for games since it is too high level of a language. Java is too damn slow. C is excellent for stuff that needs to run fast fast fast. I think the best medium is C++.

I actually don't suggest using any programming language that is heavily OOP based in game programming. I think certain parts of the engine might work well developed in Java which is a plus, since Java is easier. I know Chrome has some of its engine in Java.

Pong is Bulls**t. Waste of time developing. What you really need to do is tackle tetris. This is basic beginner crap. When you move onto side scrolling games that aren't puzzles (adventure games, like mario), you'll gain some experience with creating an editor or adapting a current map editor to your game engine, this will keep it so you don't have to edit minor level details in code form <- pain in the ass!

By the way, you don't need a editor for tetris because you define the objects then all the functions, speed, level number, score, etc. are variable based. You can even make an auto loading list of background images into a dynamic array and floor or ceiling their modded (% operation) point value to choose an image element for certain stages. It basically means the game is infinite, or whatever you cap the stage number at. Pretty simple actually.
Re: newbie Posted by Cash Car Star on Wed Nov 3rd 2004 at 9:28am
Cash Car Star
1260 posts
Posted 2004-11-03 9:28am
1260 posts 345 snarkmarks Registered: Apr 7th 2002 Occupation: post-student Location: Connecticut (sigh)
Is there a game in particular you're looking to work with, or are you just kind of sort of interested in the field? Are you looking to pursue this as a hobby, or are you currently a professional programmer looking to shift fields? All these people above me could wax on and on about which programs and whatnot to use, but I would see the thing that has to come first is a passion for games. It's a rough field that literally millions would like to get into and so therefore, much like being a novelist or filmmaker, you have to love the form and be in it for the long haul - that is, if you're looking towards the professional aspect.

If you're just a hobbyist, passion for a single game is enough. Wade through its online community and you will come across its mod community - provided it has one. Learn what's within the realms of that game (for example, Half-life lets nearly anything you set your mind to happen, while Halo is much more restricted) and have fun.

Oh, and no one reads books about these things anymore.
Re: newbie Posted by fraggard on Wed Nov 3rd 2004 at 12:59pm
fraggard
1110 posts
Posted 2004-11-03 12:59pm
fraggard
member
1110 posts 220 snarkmarks Registered: Jul 8th 2002 Occupation: Student Location: Bangalore, India
Points Up read what CCS says again. And then again. :smile:
wil5on said:
fraggard said:
Simplest way to start, write your own tetris :smile: Work your way up to Pong, and then decide on where you want to go.
I've heard this a lot, and I personally disagree. Pong was teh easeh, Tetris is more difficult (with the rotating blocks and whatnot).
Actually, try making Tetris WITHOUT graphics. Just an array of numbers representing blocks, new block, blanks etc. It's very simple and fun that way and you need to learn nothing about any graphics langauge.