|
-
Jan 24th, 2004, 10:56 AM
#1
Thread Starter
Hyperactive Member
[Theory] Game Programming
I have an extensive background of programming, have a BA in programming, and have about 2 yrs experience. Recently I have gotten the urge to get into game programming. But dont know where to start. Can someone provide me with some guidance, where can I start(what is the easiest to learn and would be benefitial to more advanced game programming?), what language to I go for, what are my options?
I would appreciate if you guys provided me with some insite.
Thanks to all that reply.
Last edited by NoteMe; May 27th, 2005 at 02:44 AM.
-
Jan 24th, 2004, 11:50 AM
#2
I'd say it depends on what type of game you want to write. Consider that most games these days have high-speed graphical interfaces, but some of the greatest computer games had pretty simple graphics. If you can come up with a fun game, that will be the hardest part.
If you want 3d or high quality graphics, you probably want to write in C++ using OpenGL or DirectX. If you want to write a game with simpler graphics, where refreshing the screen 30 times a second is not essential, you could use VB (though you might still be using DirectX). Lots of options out there, but coming up with a compelling game is probably the hardest.
-
Jan 24th, 2004, 01:23 PM
#3
Originally posted by Shaggy Hiker
... If you want to write a game with simpler graphics, where refreshing the screen 30 times a second is not essential, you could use VB (though you might still be using DirectX)....
I can't see that many advantages of using VB for DX programming over C++. The DX part of the game will look pretty much the same in C++ or in VB, at least not much harder ....
-
Jan 24th, 2004, 03:42 PM
#4
Fanatic Member
I can only get my mario game's frame rate down to ~20 with about 500+ active enemies (with a good 100 on screen).
It's usually at 100 (the maximum I set), where's the problem with speed in VB?
Don't pay attention to this signature, it's contradictory.
-
Jan 24th, 2004, 04:06 PM
#5
The graphics part of the game will be more or less the same if you are using VB or C++, but it is everything else that will be so much faster in C++, now I am talking about AI and stuff like that. And if you are making a big game you should try to wrap up as much as you can in Classes. Vb doesn't handle classes as good as C++. The way VB6 is doing it is terrible slow. .NET is faster on objects then 6 tho'.
-
Jan 25th, 2004, 02:12 PM
#6
Thread Starter
Hyperactive Member
At the moment I dont want to create something really big and fun. I just want to get a feel for it. I would like to start out with something simple, like slot machines, card games, driving games, etc. And if those go well for me then I would want to get into the more complicated and advanced games.
Are there any books that you guys would recommend, that would be a good starting point for game development. I really doesnt matter to me which language, I do know C++ & VB pretty well.
Thanks for the replys
-
Jan 25th, 2004, 02:25 PM
#7
For VB 2D programming I can recommand "Visual Basic Game programming with DirectX" - Jonathan S. Harbour...mainly DX7 programming
For C++ I havn't found a really good book yet, but the best starter book I have found is Beginning Direct3D game programming 1st edition for DX8 programming and 2nd edition for DX9 programming....
-
Jan 25th, 2004, 03:01 PM
#8
I don't like that book.
For general programming I recommend "Tricks of the Windows Game Programming Gurus" by André LaMothe. It's all 2d and uses DX7, but explains very many things about game programming.
There's a second part of it, but it's more theory than anything else, it's about developing a software 3d engine. I'm sure it can be very interesting, but I don't have the time to read it, even though I own it.
For 3d stuff in Direct3D, "Special Effects Game Programming with DirectX" is a very cool book, but you should have a fully DX8 compatible graphics card or you're not going to enjoy it - which is why I didn't 
Then I got "Mathematics for 3d game programming and computer graphics", which is definitly worth going through the pain of reading it. Can hardly have enough math in that area.
And "Physics for game developers", how to write realistic behavior for objects while keeping the calculations to a minimum.
Finally there are the game programming gems 1, 2 & 3, collections of articles about various aspects of game programming.
Or you might be more interested in OpenGL, the tutorials at nehe.gamedev.org are VERY nice, although slightly lacking in the general quality of the code.
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Jan 25th, 2004, 03:10 PM
#9
Originally posted by CornedBee
I don't like that book.
What book...the first one or the second one?
Originally posted by CornedBee
For 3d stuff in Direct3D, "Special Effects Game Programming with DirectX" is a very cool book, but you should have a fully DX8 compatible graphics card or you're not going to enjoy it - which is why I didn't 
I don't look at that as a beginning book at all. But that might just be me...if you want a good book you I would have said "Real Time Rendering Techniques and Tricks in DirectX" But that is no beginning book at all....
Originally posted by CornedBee
Then I got "Mathematics for 3d game programming and computer graphics", which is definitly worth going through the pain of reading it. Can hardly have enough math in that area.
All math books are a must, at least as much as you can get about Matrices and tranformations....but don't consider that either as a starting point to do something simple...
Originally posted by CornedBee
And "Physics for game developers", how to write realistic behavior for objects while keeping the calculations to a minimum.
Thats a good book. I enjoyed the car physics in that book. Even if it wasn't that much about it. But I guess you can find just as much physics on the internet as you need for a starting game, but a book about physics is a must when you get beyond the starting game.
Originally posted by CornedBee
Finally there are the game programming gems 1, 2 & 3, collections of articles about various aspects of game programming.
Never heard of these books? But I looked it up, to see what it was, and it looks like you forgot number 4... ....do you know if the number two has everything from number 1 and so on...or are you supposed to read all of them?
Last edited by NoteMe; Jan 25th, 2004 at 03:13 PM.
-
Jan 26th, 2004, 03:24 AM
#10
KING BODWAD XXI
www.directx4vb.com
Good starting point for graphics related stuff
-
Jan 26th, 2004, 05:44 AM
#11
And there is a lot of links in the last 10 posts in this thread too...
http://vbforums.com/showthread.php?s=&threadid=274946
-
Jan 26th, 2004, 09:14 AM
#12
Each programming gems is completly independent. They don't build upon each other (except where an article in one is a follow-up of an article in another), but they don't share information either. And I didn't know there was a fourth out. There's also a related series, "AI Game Programming Wisdom" (currently 2 books) which only features AI articles.
I didn't mean any of these books as beginner books for game programming, except for André LaMothe's. But "Special Effects" does teach you how to get started in Direct3D - better than "Beginning Direct3D Game Programming", which is the book I don't like btw. You should know I wouldn't touch a VB book
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Jan 26th, 2004, 09:43 AM
#13
-
Jan 26th, 2004, 09:48 AM
#14
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Jan 26th, 2004, 10:16 AM
#15
KING BODWAD XXI
You should know I wouldn't touch a VB book
-
Jan 26th, 2004, 12:43 PM
#16
Originally posted by CornedBee
Each programming gems is completly independent. They don't build upon each other (except where an article in one is a follow-up of an article in another), but they don't share information either. And I didn't know there was a fourth out. There's also a related series, "AI Game Programming Wisdom" (currently 2 books) which only features AI articles.
I will have to take a look at those books, thanks...
Originally posted by CornedBee
I didn't mean any of these books as beginner books for game programming, except for André LaMothe's. But "Special Effects" does teach you how to get started in Direct3D - better than "Beginning Direct3D Game Programming", which is the book I don't like btw.
In more or less all DX books, they are settin up the IDE for you and starts off with a simple sample on how to start, but I still don't look at Special Effects as an starter book. If you don't know anything about game programming from before, you will not be that much better in GAME programming after have finished that book, but you will have a lot of independent code up and running that looks nice....
Originally posted by CornedBee
You should know I wouldn't touch a VB book
Yeah, I guessed it, but you could have heard it from someone else or read what it said at Amazone or something....
-
Jan 26th, 2004, 12:56 PM
#17
If you don't know anything about game programming from before, you will not be that much better in GAME programming after have finished that book
Yeah, as I said, that's what André LaMothe's book is for. Read it for universal principles of game programming and some founding in 2D graphics, sounds, music, physics, math and AI.
Then the others: more math, physics, 3d graphics, whatever.
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Jan 26th, 2004, 12:58 PM
#18
Then we agree on everything but a good starting book for game programming in C++... ...I am soo glad I did that in VB...
-
Apr 13th, 2005, 06:33 PM
#19
Frenzied Member
Re: Game Programming
You should know I wouldn't touch a VB book
I agree 200% with that quote.
Anyway, I don't remember seeing C mentioned. Is there a reason why not?
-
Apr 13th, 2005, 06:45 PM
#20
Fanatic Member
Re: Game Programming
 Originally Posted by NoteMe
For VB 2D programming I can recommand "Visual Basic Game programming with DirectX" - Jonathan S. Harbour...mainly DX7 programming
I call shannanigans on that book!
First:
The random function he gives doesn't even work the way it's intended. I give you the code in all it's glory:
VB Code:
private function Random(byval lMax as long) as long
Random = clng(Rnd * lMax)
end function
Now if you don't see what's wrong with this function: Clng rounds a number, it doesn't always round down. So random(1) can return 2.
Not to mention: the airplane game has sprites that disappear and the space game doesn't connect to the server without some slight modifications to the code...
Don't pay attention to this signature, it's contradictory.
-
Apr 13th, 2005, 06:54 PM
#21
Fanatic Member
Re: Game Programming
Sorry, I gave the wrong problem with the random function.
The real problem is that
rnd(2) returns:
0: 25% of the time (0 to .5)
1: 50% of the time (.5 to 1.5)
2: 25% of them (1.5 to 2)
Random functions should not have a reduced chance of choosing the numbers at the limits!
Don't pay attention to this signature, it's contradictory.
-
Apr 14th, 2005, 04:23 AM
#22
Re: Game Programming
 Originally Posted by alkatran
Sorry, I gave the wrong problem with the random function.
The real problem is that
rnd(2) returns:
0: 25% of the time (0 to .5)
1: 50% of the time (.5 to 1.5)
2: 25% of them (1.5 to 2)
Random functions should not have a reduced chance of choosing the numbers at the limits!
I still wouldn't throw away a 800pages book just because one function isn't working as it should. I have NEVER seen a book where ALL the samples and functions worked as they should.
-
Apr 14th, 2005, 04:24 AM
#23
Re: Game Programming
 Originally Posted by aewarnick
I agree 200% with that quote.
Anyway, I don't remember seeing C mentioned. Is there a reason why not?
Probably because big games is more faster to write and easier to update in C++ then in C. And that many of the new game techniques is much easier to pull off in a fully working OO environment then in plain C.
ØØ
-
Apr 14th, 2005, 05:05 AM
#24
Re: Game Programming
Anyway, I don't remember seeing C mentioned. Is there a reason why not?
Working with DirectX (or anything COM) in C is a pain.
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Apr 15th, 2005, 10:51 AM
#25
Fanatic Member
Re: Game Programming
...Recently I have gotten the urge to get into game programming. But dont know where to start. Can someone provide me with some guidance, where can I start(what is the easiest to learn and would be benefitial to more advanced game programming?), what language to I go for, what are my options?...
If you are going to use C++ I'd recommend looking into using either SDL (2D), SDL/OpenGL (3D) or ClanLib.
http://www.libsdl.org/
http://www.opengl.org/
http://www.clanlib.org/
-
Apr 15th, 2005, 11:48 AM
#26
Frenzied Member
Re: Game Programming
Question answered, thanks.
-
Apr 15th, 2005, 12:08 PM
#27
PowerPoster
Re: Game Programming
I kinda just skimmed the threads and came up with a few things to say.
If you are a good programmer then use C++ for your game programming adventure, might as well start in the right place instead of starting in the easy place and having to learn an extra step. All real games are in C++.
I agree with CB, I won't touch a VB book either, VB to me a lost and quite useless language.... Although I did use VB the other day to write a MASS E-mailer to send 1000 messages for me to an ex-gf to call her some dirty words many times over....
All the books spoken of in this thread are great books except for Andre Lamothe's second book, I wasn't to happy with that. I'm not the greatest game programmer yet and the step from making games using DX to making your own 3D Software Rasterizer was a step I didn't feel like taking... So someday I'll ejoy that book maybe.
As always tho, if you have any questions, this is the place to ask..
"From what was there, and was meant to be, but not of that was faded away." - - Steve Damm
"The polar opposite of nothingness is existance. When existance calls apon nothingness it shall return to nothingness." - - Steve Damm
"When you do things right, people won't be sure if you did anything at all." - - God from Futurama
-
Apr 15th, 2005, 12:34 PM
#28
Fanatic Member
Re: Game Programming
 Originally Posted by NoteMe
I still wouldn't throw away a 800pages book just because one function isn't working as it should. I have NEVER seen a book where ALL the samples and functions worked as they should.
I was just pointing out the fact that apparently this guy didn't test his games enough.
But I agree, it has useful info in it. I just fear for people who copy-paste that random function...
Don't pay attention to this signature, it's contradictory.
-
Apr 15th, 2005, 05:31 PM
#29
Re: Game Programming
 Originally Posted by alkatran
I was just pointing out the fact that apparently this guy didn't test his games enough.
But I agree, it has useful info in it. I just fear for people who copy-paste that random function...
Anyone that just copies code from a book won't learn much after all... It is just sample code after all...
BTW, we have totaly forgotten a language in here. C# is starting to make it's way into game programming. There is still no AAA game that has used it. But the first Indie games are all ready out. But I fear it will take some time before we will see an AAA game using it. Because most of the big companies all ready have a LARGE code base, that they are resuing for games. So switching to C# and MDX won't be that easy for them. But it will be fun to see though.
ØØ
-
Apr 15th, 2005, 06:05 PM
#30
Frenzied Member
Re: Game Programming
Just remember though, C# is another Microsoft language and has a HUGE runtime: 23 megabyte download last time I checked.
-
Apr 15th, 2005, 06:08 PM
#31
PowerPoster
Re: Game Programming
I hope no company ever releases a AAA game in the new MS languages like VB/VB.NET and C#.
Cobalt and C++ is all you need that may be an over statment
"From what was there, and was meant to be, but not of that was faded away." - - Steve Damm
"The polar opposite of nothingness is existance. When existance calls apon nothingness it shall return to nothingness." - - Steve Damm
"When you do things right, people won't be sure if you did anything at all." - - God from Futurama
-
Apr 15th, 2005, 06:46 PM
#32
Re: Game Programming
Amen to that. MS needs to stay away from .NET, period.
-
May 26th, 2005, 03:05 PM
#33
Frenzied Member
Re: Game Programming
If anyone wants to take the easy way out, where they don't have to worry about writing/configuring the graphics/sound engine, you might want to consider BlitzBasic(especially BlitzMax), or Java using Java2D/3D all of this being Object Oriented and straight forward.
"Lies, sanctions, and cruise missiles have never created a free and just society. Only everyday people can do that."
- Zack de la Rocha
Hear me roar.
-
May 27th, 2005, 01:55 AM
#34
Re: Game Programming
Or what about DarkBasic... ..."Visual Basic" merged with "DirectX". One line to get a cube on the screen.
ØØ
-
Aug 4th, 2005, 07:33 AM
#35
Member
Re: Game Programming
 Originally Posted by Halsafar
I hope no company ever releases a AAA game in the new MS languages like VB/VB.NET and C#.
Cobalt and C++ is all you need  that may be an over statment 
Huh! Why not .net! At first i only used vb6 but as microsoft is removing support for vb6 i went for vb.net and believe me it got loads of functions similar to vb6 and speed similar to c++! See vb.net and c# use the same libraries so they both got same speed! I have seen some vb.net 3d programs that got very complex terrain generators or high poly models and even then they got very very high fps! ~80! I even got an hundred once! See .net is gud! People are just scared of the change! But when we are forced to change and we start loving it!
Last edited by RapchikProgrammer; Aug 4th, 2005 at 07:47 AM.
-
Aug 4th, 2005, 08:09 AM
#36
Frenzied Member
Re: [Theory] Game Programming
.net is probably just M$ new way to get their grubby money filled hands on more things so they can RULE them. Everyone should start shifting to use C++ instead!
-
Aug 4th, 2005, 08:20 AM
#37
Fanatic Member
Re: [Theory] Game Programming
I would like to get someones opinion here, about VB6 and VB.NET. And I dont want the "its just better" answer. I have been programing with VB6 for 2 1/2 years. Working on small projects for myself, small games, etc.
I am hearing all this talk about how VB.NET is so much better than VB6. I would really like an good answer as to which is really better. I understand that they each have thier ups/downs. I have glanced at code for VB.NET programs and it looks nothing like VB6, more like my JAVA or C++ work I did in school.
None of my games are massive one, or graphics heavy, so I dont use DirectX. So I dont see moving to VB.NET but if I had to in the future, I would really like to know what I am getting into.
-
Aug 4th, 2005, 09:40 AM
#38
KING BODWAD XXI
Re: [Theory] Game Programming
I dont use vb.net yet but I have looked into it.
Files look to be a nightmare. They are closer to the C++ way of doing things and it looks to me like a bunch of C++ programmers got their hands on doing vb.net than some vb programmers.
However....
In 2005 version there are added functions and a code snippets option that adds in code to commonly used functions. E.g Delete folder, copy folder and many many more.
Controls seem to be more widely available and 'controllable'. Controls that were missing in vb6 and had to be coded are now available off the toolbar and are ready to go.
2005 will remove the annoying 'Extra' code added by earlier versions of .net. You will still have control but it will seperated into what I beleive they call a 'partial class' which divides your code from theirs while allowing you access to the most basic elements of the program via the partial class.
2005 will highlight undeclared and unused variables
Needless to say I am waiting for 2005 to be released and then I really do think I will do some proper coding in it. As with all things it takes time for the best features to come out and the new interface looks very impressive from a practical point of view.
Just my 2 pence. Vb.net still scares me but I feel happier that new functionality will make a move over easier and quicker
-
Aug 4th, 2005, 09:58 AM
#39
Re: [Theory] Game Programming
 Originally Posted by aewarnick
.net is probably just M$ new way to get their grubby money filled hands on more things so they can RULE them. Everyone should start shifting to use C++ instead!
C# is not an MS standard. It is an open standard, and anyone that want to make a compiler for it can do it, and read everytihing they want about it on the net.
-
Aug 4th, 2005, 09:59 AM
#40
Re: [Theory] Game Programming
 Originally Posted by BodwadUK
In 2005 version there are added functions and a code snippets option that adds in code to commonly used functions. E.g Delete folder, copy folder and many many more.
Controls seem to be more widely available and 'controllable'. Controls that were missing in vb6 and had to be coded are now available off the toolbar and are ready to go.
2005 will remove the annoying 'Extra' code added by earlier versions of .net. You will still have control but it will seperated into what I beleive they call a 'partial class' which divides your code from theirs while allowing you access to the most basic elements of the program via the partial class.
2005 will highlight undeclared and unused variables
Needless to say I am waiting for 2005 to be released and then I really do think I will do some proper coding in it. As with all things it takes time for the best features to come out and the new interface looks very impressive from a practical point of view.
Just my 2 pence. Vb.net still scares me but I feel happier that new functionality will make a move over easier and quicker 
VS .NET 2005 is just an idea..not a langauge. I do C#, but I don't use VS.. ..I am even writing all my code in Linux.. I can do that with VB.Net code to if I want..but I have no need for VB.NET, so I won't..
- ØØ -
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|