Archived

This topic is now archived and is closed to further replies.

Zipster

Visual C++ or Visual Basic For Games

Recommended Posts

I recently went to a site ([url]http://www.redrival.com/voodoovb/[/url]) that had VB tutorials for DX 7, and I compared my equivelant C++ code with the VB code and said: "Why doesn''t everyone use VB?!" In VB, all you do is like "Dim DX As DirectX" and thats it, i think, but anyway it looked so much easier!! But then i realized how much more control i have in c++ and how much more im used to C++..... Any suggestions?

Share this post


Link to post
Share on other sites
Hi there

I am a VB programmer and I seriously like VB, you CAN program games in VB !!!! However I am learning C++ game programming parallel to VB. Another reason why I am learning C++ is that there might be a possibility that I would want to program games for Linux and BeOS.

If you need help with VB games programming, feel free to drop me a line.

groveric@mweb.co.za

Share this post


Link to post
Share on other sites
First of all, I use VB everyday, all day. And then at night I revert to being a real programmer and use C/C++

?? How is this, simple reason. C/C++ is majorly portable first off. Windows will not be around forever. Number two, pointers. You can get into the nitty gritty of data structures in c/c++, ever try making a quadtree in VB?

And lastly, speed. I know there will be ppl who argue up and down that VB is only a few percent slower, and their new game is made in VB and it rocks. Well, suprise, they lie. Most of these engines for VB that are starting to pop out of the wood work are in VB, with all the heavy routines in C/C++, just becuase of the speed issue.

I have two legs to stand on here. I made an 75% complete DX engine in straight VB code. It sucks. Not because it doesn't do anything good, because it is slower than hell and it is optimized to all heck. I then recoded the nasty bits in C++, and slap me silly, I got a 25% increase. Just from converting some camera and drawing routines.

My sugestion.... Use VB to make nice DB interfaces, program for the web and make quick and dirty windows apps. Use C/C++ for ever and anything game related.

And honestly, if you want to program in C++ with something easy, go OpenGL. It is soooo much cleaner and easier to read for the 2D/3D novice.

BTW, the engine, as it was in an alpha, is still posted at www.bworks.com/ogre/

it is free, keeping with the spirit of the internet.

Bworks.Com

Edited by - joviex on 3/31/00 5:05:46 AM

Share this post


Link to post
Share on other sites
Use VisualBasic for pong (the regular picboxes will do ) and C/C++ for real games. That''s merely my humble opinion, of course.

"Paranoia is the belief in a hidden order behind the visible." - Anonymous

Share this post


Link to post
Share on other sites
Well I''m currently making a full game in VB, and I guess I just want to know first hand that VB sucks. I''ll tell you when it''s done.

-------------------------
-Now Working on Pokemon like Engine!

Share this post


Link to post
Share on other sites
GODDAMNIT!! HOW MANY TIMES DO I HAVE TO TELL PPL THIS:

" I recently went to a site ([url]http://www.redrival.com/voodoovb/[/url]) that had VB tutorials for DX 7, and I compared my equivelant C++ code with the VB code and said:
"Why doesn''t everyone use VB?!"
In VB, all you do is like "Dim DX As DirectX" and thats it, i think, but anyway it looked so much easier!!
But then i realized how much more control i have in c++ and how much more im used to C++.....
Any suggestions? "

This dude is 100% correct. As a matter-of-fact, this guy is a pimp (if he takes it as a complement(?)), for comming to realize this by his-self. You have 200,000,000% more power/speed/control in C++ than you have in VB, but you can make (some/a lot of) games 200,000,000% more faster in VB than you can in C++. So what do you do?!?! YOU DO ALL THE DIRTY WORK IN C++ THAT VB CANT HANDLE(?) AND ONCE YOU HAVE A DLL (LIB) WITH ALL OF YOUR FUNCTIONS IN IT, MAKE YOUR GAME IN VB IN TWO DAYS USING THE C++ DLL.

Share this post


Link to post
Share on other sites
I shall call this idea, ''cVB Technology'' since I have suggested it a million and one times. And besides thats how I do my games. I have a DLL callen cVB for rasterizing polygons, and it has all my hardcoded c++/asm functions in it which I call from VB. Here is a list of them, taken from my .def file, (and if your interested in the source, email me..):

LIBRARY cVB

EXPORTS
FillBuffer @1
CopyBuffer @2
SetMode @3
DrawPixel @4
GetBuffer @5
DrawLine @6
PutBuffer @7
AddPixel @8
Blend @9
Blend4 @10
Blend8 @11
Blend16 @12
DrawTriangleFlat @13
GlenzePixel @14
ShiftLeft @15
ShiftRight @16
HLine @17
DrawTriangleGouraud @18
DrawTriangleWire @19
BlurShift4 @20
clss @21
fatan22 @22
BuildTables @23
s_texture_triangle8 @24
s_texture_hline8 @25
texture_triangle8 @26
texture_hline8 @27
GSLine @28
GLine @29
TLine @30
Draw_Triangle_Glenze @31
Draw_Triangle_Texture @32
Draw_Triangle_Gouraud @33
HLineS @34
GLineVert @35
Bline @36
BLineShade @37
TextureLine @38
ShadedLine @39
ShadedLineGlenze @40
ShadedLineTextureAffine @41
Draw_Triangle @42
PerlinNoise_2D @43
SmoothBuffer2D @44
Noise1 @45
clss2 @50

Share this post


Link to post
Share on other sites
This all depends on your programming skills and needs. After programming in QBasic and VB for a while, I got board. I found it way too easy. So I went on to C++. I find C++ a lot better for making games. It''s faster, and, Do you know of any professional market games made on VB? I don''t. So to answer your question, I''ll just say that it''s your decision. But I would recommend C++.

"Remember, I'm the monkey, and you're the cheese grater. So no messing around."
-Grand Theft Auto, London

"It's not whether I win or lose, as long as I piss you off"
-Morrigan, Super Puzzle Fighter II Turbo

Share this post


Link to post
Share on other sites
Actually, there''s this game called FLUX, and it was made in Visual Basic.

If you are making a simple game, Visual Basic might be a good choice. If you are making a complex game, C++ is the way to go. Also, if you are using VB, you might want to make DLLs in VC++ or MASM to call in your VB program. Right now, I''m making a tile-scrolling RPG in VB, and I can make it go at 150 FPS so far, but I force it to go at 30 FPS.

Another thing to remember is that computers are getting powerful enough so that it will not matter. Also, if you have a HAL device such as a VooDoo 2 or 3, or an Ndivia based card, the language doesn''t matter as much. I''ve seen Direct3D samples using the HAL that can easily go over 100 FPS, and that''s with transform, textures, and lighting. If you have a TnL device (not many have that yet), then since the card will do virtually a of the graphics functions, it won''t matter.

To sum it up, for more simple games, Visual Basic can do it. For the complex games, C++ can do it.

Shinryuu64
Solenoid Software Interactive
http://solenoid.50megs.com
shinryu64@kiss-my.as

Share this post


Link to post
Share on other sites
I personally dont like VB. It's not about speed. It's just not nearly as versatile as a language as C++ is -- it's way too watered down. It feels like an GUI design tool with the langauge tacked on as an after-thought. Sure, you can write C++ DLL's for VB to use -- but then why bother to even use VB? It might be faster for writing neat little apps in, but when it comes to games I dont see much advantage in it.

My point is this: VB is a good language for what it was designed for (making small windows apps), but it's not neccasarily a better solution than C++ is for games. I've programmed both, and in my experience I've found its *easier* to write a game in C++ than it is in VB. Use whatever language suits the problem, instead of trying to push your language as the perfect solution like Uthman is.

--TheGoop

Edited by - TheGoop on 4/1/00 12:53:23 PM

Share this post


Link to post
Share on other sites
yeah, looks like im stickin'' with C++ till the end
i just don''t like VB that much anyway (don''t get me wrong, VB is great for small windows apps, but for games...well, ever heard of Klik and Play? its like that, sort of ). its like a design tool for the wimps, sort of (no offense to anyone, just my opinion). Like TheGoop said, its just watered down.


BTW, Uthman, thanx, i did take that as a complement

Share this post


Link to post
Share on other sites
If I knew how to include quotes, I would.
But...
"Another thing to remember is that computers are getting powerful enough so that it will not matter."

I don''t care if you''ve got a PVI 6000, You still work for speed and flexability!

-Mezz

Share this post


Link to post
Share on other sites
quote:
If I knew how to include quotes, I would.

hehe, am i mocking you yet?
at the beggining of what you want to quote, write "quote" in brackets ( [ ] ) without the quotes ( " " ) that you see.
at the end of the quote just wite the same thing, only with a / in front of the word "quote", but inside the brackets.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
quote:
Original post by Zipster

[quote]If I knew how to include quotes, I would.

hehe, am i mocking you yet?
at the beggining of what you want to quote, write "quote" in brackets ( [ ] ) without the quotes ( " " ) that you see.
at the end of the quote just wite the same thing, only with a / in front of the word "quote", but inside the brackets.


Or just do it the easy way and click reply to post instead of reply to topic, and the [~quote~] tags are already there

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Ok, heres the deal

I used VB to start off programming. Bad idea. I tried other languages and thought "Why use it when to make a program it takes a lot of code?" then i realized C(++) is so much more powerful.

Ok, now to game development:

Speed is VERY important, ESPECIALLY for games.
C(++) is much more powerful and VB is almost never used
in commercial products
C(++) can be ported, you can make the game logic, then make versions for linux, windows, and Direct X or OpenGL
C(++) has a wider support range, etc.
C(++) is much better for applications involving heavy math, string parsing, and programming in general.
C(++) doesn''t require almost a megabyte of runtimes for a Hello World.
A small C(++) app is a lot smaller than a small VB app.
C(++) is cooler

Share this post


Link to post
Share on other sites
Here''s my 2 cents worth (just in case anyone still cares )

I use VB all day at work, screwing around with databases and the like, and this is what VB is fundamentally designed for... fast development of GUI solutions. However, I also use VB to prototype ideas for my game engines because its quick and dirty, and you can interactively debug without it spitting page faults and other nasties in your face . Its also ok for making tools (like modellers, map makers, etc), simply because its piss easy to knock together a nice GUI.

When its time to get serious (and I''m always very serious ), I use C++, mainly for the reasons that others have listed above (speed, power, portability, etc), and because I like an object-oriented approach (VB''s (currently) half-baked version of OO makes me want to vomit... I''ve given up trying to implement a REAL OO design with it long ago).

And that anonymous poster is right... those runtime dll''s really piss me off. Makes the smallest app about 1.5 MB of joy to distribute

thankyoubye

-------------
squirrels are a remarkable source of protein...

Share this post


Link to post
Share on other sites
quote:
Original post by Bad Monkey
... and because I like an object-oriented approach (VB''s (currently) half-baked version of OO makes me want to vomit... I''ve given up trying to implement a REAL OO design with it long ago).



I totally agree. I''m working on making a tile-based rpg in vb and have the engine all nicely written out, but try and get a nice OO based gui system written without true polymorphism or inheritance! It sucks!

David

Share this post


Link to post
Share on other sites
I used VB over this spring break to make the map editor for my game. It was pretty easy, and since this is my first time working with tiles, it helped me conceptualize how the whole tile "thing" works. It took me one week and is pretty capable for what I need. However, I am using C++ for the game itself, because I''m having a hard enough time as it is getting FPS (sometimes I think I''m just missing something everybody else gets) and I actually find it more intuitive not to have to switch around between languages.

One other thing I noticed - I did try programming a game in VB once. Because it was so easy, I got really lazy. It got to the point where my friend (the "designer") asked me if I could do transparency for our game, and I said, "No, that''s WAYYYY too hard! You kidding me?" But that was then, this is now. With C++, I feel more as if I''m programming and less as if I''m playing with toys.

Whatever. I''m weird

-Trigon

I like food.

Share this post


Link to post
Share on other sites