[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.
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!
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.
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 :)
Re: [Theory] Game Programming
Quote:
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.
Re: [Theory] Game Programming
Quote:
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..:)
- ØØ -
Re: [Theory] Game Programming
NoteMe, are you saying that C# is completely compatable with Linux, not just Windows?
Re: [Theory] Game Programming
Quote:
Originally Posted by neicedover1982
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.
VB.Net is a more powerfull language then VB used to be. More object oriented, and they are getting all sorts of advanced stuff like operator overloading and so on. This is all nice feautures if you know how to use them. If you don't and you don't care, then they will just scare you away. Since it is a more powerfull language it is of course also more difficult to learn. And yes,as you started you self, it doesn't have many similarities to VB6 and earlier versons. But I won't agree that it looks like Java or C++ code. It is still the Basic syntax with "if then", "end sub" and so on. C# on the other hand has the C syntax. Wit { } and so on.
RapchikProgrammer said that since both C# and VB.NET is using .NET they are going to be equaly fast. This is not entirly true. Differnet syntaxes makes the the compilers have different difficulities with different stuff, and will therefor optimize the code a bit different. And since this is an open standard, then everyone can make their own compiler, something many others are doing at the moment. And different compilers will optimize differently. This is also a new thing for VB programmers. Since VB have always only had ONE compiler, and it has been the one that shipped with VS. C++ has had many compilers for differnet platforms, and C++ coders all ready know that different compilerrs can have a huge impact on the speed of the finished code.
An other thing is that the VS compiler doesn't write pure .NET code yet. Something other compilers like Mono does. That means that if you write some code in VS and compiles it, you might not be able to run it on other platforms, since it will input some ASM code into the files. When VS 05 is out, this will be improved, but it will stilll not be perfect.
Over to game programming:
As I have all ready said, VB.NET is a more powerfull language then VB6, mainly because you have more functionality that VB6 lacked, and people are usualy using VB6 because it lacks all the advanced stuff. So you can make small nice apps in an easy way. But DX has never been easy before. And it might not be easy today either. But Managed DX is a LOT easier then the normal DX that has been out for many years all ready. The thing is that to use MDX you have to use a managed langauge. You can choose VB.NET or C# or C++.NET. So there you go again. Medium to Advanced languages, but an easy API. So there you have your choice.
Just to name a few of the changes between MDX and DX:
- In MDX, MDX will try to restore lost devices for you. You still have to fill VBs and so on after the device is lost, but except that it tries to help you as much as you can.
- If you are running in windowed mode. And you resize the window. MDX will do the work for you. It has events to cary out most tasks like this for you, so you don't need to write the boring code as you had to in DX.
- Advanced topics are not so advanced anymore. Things like loading and drawing meshes used to be really advanced. And you should have been doing a bit of DX before you would start something like that. These days in MDX it is just a few lines of code. They are also approaching more OpenGL like drawing of common meshes, like spheres and boxes to. There is buildt in functions for drawing stuff like this, so it can be done in a few lines.
Well I could be talking for hours about this, but I am going to watch some footy now. So ask if there is something I forgot to cover...:)
- ØØ -
Re: [Theory] Game Programming
Quote:
Originally Posted by aewarnick
NoteMe, are you saying that C# is completely compatable with Linux, not just Windows?
;)...yes..they are still working on it though. C# and VB.NET and .NET is constantly renewed. .NET 2 is soon out, and C# 3 is designed, so there is always some updating to do, but yes, I can write you a small game in VB.NET or C# in Linux and then send you the "exe" file, and you can run it on your machine...;)'
[Edit] As long as you have the .NET framwork installed that is...;)
- ØØ -
Re: [Theory] Game Programming
Thanks for very elaborate explaination NoteMe, and thanks to everyone else. I am probably going to keep programming my stuff in VB6. If in the future I get alot of demand or something for any of them, I might go and change the game into a new language. But for now, VB6 does everything I require so far.
Re: [Theory] Game Programming
.net framework on linux? :eek:
Cool :D
Re: [Theory] Game Programming
Quote:
Originally Posted by neicedover1982
Thanks for very elaborate explaination NoteMe, and thanks to everyone else. I am probably going to keep programming my stuff in VB6. If in the future I get alot of demand or something for any of them, I might go and change the game into a new language. But for now, VB6 does everything I require so far.
No problem, just happy to help out...:)...if you think you got some good answers in this thread, you are allowed to rate them..:)
Re: [Theory] Game Programming
Quote:
Originally Posted by BodwadUK
.net framework on linux? :eek:
Cool :D
You can get .NET framework on any OS where someone have had the time and guts to port it. Havn't checked it out, but I think it is more or less ready for Mac also...but don't quote me on that..:)
- ØØ -
Re: [Theory] Game Programming
Are you guys referring to The Mono Project?
Re: [Theory] Game Programming
Yes, we are. Nice gravedigging.
Re: [Theory] Game Programming
OMG, yeah. This one goes up on the Hall of Grave digging...:)
PS: D# compiles in Linux now...ohhhh..:)
Re: [Theory] Game Programming
Well, a bit of gravedigging again ;)
I've been learning VB.NET for a few months now, but not game programming. My interest has been peeked into game programming though, as it offers the opportunity to learn a lot of programming concepts.
My friend is working on a game and I would like to help out a bit while learning. He knows VB6 but he wants to code the game in C++ as he says it is better for game programming.
After reading this thread though and seeing how VB.NET has come a long way into implementing real OOP, I feel that you could get the same results using VB, just easier. Is this true? Would VB run a lot slower and limit the graphical displays etc?
Re: [Theory] Game Programming
C++ is still the #1 choice for any serious game programming, but for hobby programming, VB.Net ought to suffice.
Not that the lack of OOP was really an obstacle for VB6 - C was for a long time by far the most popular game programming language, and its OOP capabilities are nil. I think the main problem of VB6 was a poor OS interface. Managed DirectX should enabled VB.Net to do much better there.
Re: [Theory] Game Programming
Re: [Theory] Game Programming
Oh, and did I mention that this thread starts closely resembling a zombie?
Re: [Theory] Game Programming
This thread is over 3 years old?