Advertisement

im stupid

Started by June 17, 2002 09:52 AM
8 comments, last by Zell_ 22 years, 8 months ago
im also a newbie to game developement... sort of... well ne way im just wondering if its possible to make an RPG in visual basic 6? i know a bit and i can make basic programs.. but im not sure if everything is possible in VB so i dont want to start on ne thing just yet. thanks
Sure it is! It has been done before.
[Insert cool signature here]
Advertisement
http://msdn.microsoft.com/downloads/?url=/downloads/sample.asp?url=/MSDN-FILES/027/001/771/msdncompositedoc.xml&frame=true

Hey there, I''m stupid too! You might want to take a look at that link, it''s a games API and I believe you can use it with visual basic too.
This makes me realize that I must have a different mindset than a lot of programmers. I have never believed that any program was impossible in any language. For personal projects I have been known to choose VisualBasic, not because it's the best suited, but because I've learned how to do some interesting tricks with it. I have written a partial x86 assembler in VisualBasic 6 which uses a ADO to connect to a database with the op-code tables. Weird? Certainly. I used to do weird things with QBasic even though I was more familiar with Pascal.

Actually, it was not until I studied Discreet Mathematics in school that I realized that there were in fact problems that could not be solved (or at least in any plausible amount of time). This was a bit of a shocker to me. I always figured all problems could be solved given enough work on the algorithm.

Maybe I need to study quantum computing.

So my advice to you, Zell_: Go ahead and try using VB6 for an RPG if you want. You can do practically anything with the language. Be warned that there are problems with using certain libraries from VisualBasic. There is DirectX 8 for VisualBasic, but it has its limitations. But if you are a beginner and have never used DirectX before, you probably won't notice.

--TheMuuj

[edited by - themuuj on June 17, 2002 12:21:59 PM]
--TheMuuj
Would you guys say it''s true that C+ is harder to code than VB but is more compatible with various systems? I''m not a coder so...
ummm...
quote:
Original post by Caravaggio
Would you guys say it's true that C+ is harder to code than VB but is more compatible with various systems? I'm not a coder so...



If you are going to use DirectX for all interaction, then I would say C++ is easier to code.

If you are doing anything that involves Windows controls (text boxes, buttons, checkboxes, etc.) then VB is easier to program.

If you use C++ and learn to use the STL in order to avoid worrying about memory allocation/strings/etc., then it will certainly pay off in the long run over VB. If your game is nothing more than bitmaps on a VB Form, then I guess stick with VB.

I mean you will have to learn the same DirectX concepts no matter what language you are using.

Furthermore, if you are learning, you might consider using C++ and OpenGL. Many consider OpenGL easier to learn than Direct3D (I have to agree, to a point).

I don't want to discourage you from using VB if you want to, but when it comes to games I have found C++ to be just as easy as VB (or rather VB to be just as hard as C++).

EDIT--Spelling & Grammar :-(

--TheMuuj

[edited by - themuuj on June 17, 2002 12:34:31 PM]
--TheMuuj
Advertisement
Sorry I have to disagree , using DirectX (7 & 8) in VB is far easier than in C++, the main reason I use C++ (and many others) is its portability and low level features. Try using bit shifting and direct memory access via pointers in VB, not to mention stuff like operator overloading and OO derived classes.

,Jay (I still use VB a lot though, more than C++)
quote:
Original post by Jason Zelos
Sorry I have to disagree , using DirectX (7 & 8) in VB is far easier than in C++, the main reason I use C++ (and many others) is its portability and low level features. Try using bit shifting and direct memory access via pointers in VB, not to mention stuff like operator overloading and OO derived classes.

,Jay (I still use VB a lot though, more than C++)


Other than easier initial setup (creating a window, etc.), and abstraction of the COM interfaces, what exactly is easier in VB?

When modifying the contents of a vertex buffer, for example, the contents have to be copied in (and out). In C++ you can lock the buffer and access the contents directly. Granted they provide helper functions to do this, but to me it''s easier just to get a pointer to the actual data.

Plus, you have to write a lot of algorithms when using VB. There''s only so much you can do with VB''s Arrays and Collection objects. The C++ STL gives you access to some well-optimized algorithms that work on any data type (even your custom vertex types). This comes in handy when you need to sort some vertices by their distance from the camera.

I suppose the IntelliSense provided by the VB IDE makes things amazingly easier, but I solve that by having the DirectX SDK visible at all times on a second monitor.

I also suppose that you save a lot of typing by using ''.'' and not ''->'' to access class memebers. But for the most part there the functions in the VB and C++ versions of DirectX (version 8.1) are almost identical.

I guess I don''t mind releasing my COM pointers, since I always set my VB References to Nothing anyway. To me, the extra control you get and the amount of abstraction you can do with things such as operator overloading greatly simplify game programming in C++.

I suppose for a beginner-to-intermediate programmer, VB is easier. I retract my statement, as Zell_ said he is a beginner.

However, when you get deeper into it you might find VB''s limitations annoying.

By the way, I''ve never tested it, but I would hope that if you had a multiplacation by a constant power of 2 that VB''s optimizing compiler would catch it and convert it to a bit shift for you. Maybe I will disassemble some VB apps later to find out.

--TheMuuj
--TheMuuj
quote:
Original post by TheMuuj
.....
By the way, I''ve never tested it, but I would hope that if you had a multiplacation by a constant power of 2 that VB''s optimizing compiler would catch it and convert it to a bit shift for you. Maybe I will disassemble some VB apps later to find out.

--TheMuuj


Not if its a variable, unfortunately the compiler cannot make that kind of assumption.

The point being though, like you said is that its easier to learn and use for a beginner, C++ is undoubtedly more versatile but needs a lot more learning to develop properly.

,Jay
My head has now retracted into my neck. But thanks. :D
ummm...

This topic is closed to new replies.

Advertisement