Sign in to follow this  

how good can visual basic graphics get?

This topic is 4780 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

ive been programing visual basic for a while even tho i took a break for a little while because in my high school programing class we do qbasic and at the end of the year we do visual basic and for the next years java and c++ but i wanted to know if i start to program games in visual basic how good can the grapics get? some screenshots would be great thanks in advanced

Share this post


Link to post
Share on other sites
Short reply: As good as anything else.

It's more dependent on the library you use, and your knowledge of putting those libraries to good use, as well as the artistic skills needed. Some (likely a very few) algorithms may not be quite as efficient as writing them in C or assembly, but this is usually a non-issue, for a variety of reasons that have been discussed numerous times here already.

Also, are you intending to use VB.NET, or older versions of VB? From what I've heard, newer iterations of VB don't have nearly the efficiency problems that older versions had. And besides, many times the inefficiencies of VB are caused by VB itself, but by inexperience of a programmer.

If you're wanting experience so that you can jump in the industry, I'd recommend not just sticking exclusively with one language. Especially become at least somewhat familiar with C/C++. If you're doing this more as a hobby, I'd say to just go ahead and stick with VB. It'll work fine.

Share this post


Link to post
Share on other sites
Visual Basic .NET can use Managed DirectX, which supports all the same DirectX9 features that Far Cry and Half-Life 2 use.
Thus, the graphics in Visual Basic .NET can get as good as your artists are, as far as screen shots go.

Now, Visual Basic is not the fastest runtime around (although the CLR actually makes it reasonable). Thus, if you implemented all the same algorithms used in Doom III for shading, shadowing, skinning, etc, I'd expect the CPU to have to work significantly harder, and thus your frame rates would be lower than what you see in Doom III.

Whether this is a problem is up to you. Maybe you're much more productive in a known environment such as VB, than you would be in an unknown environment such as C++. Maybe actually finishing an actual game is more important than having a high frame rate in a game that never gets completed. If that's true, then maybe you should stick with Visual Basic.

Share this post


Link to post
Share on other sites
Hi
every body agree with the idea that VB is slower than VC++ or C or even Delphi.
But When you have DirectX (7 and 8) and imagination, you can realize some good Graphic application.

I have made a simple 3D engine in VB that can perform at very fast speed several good graphic effects:
i have upload a SDK with 51 tutorials that deal with all the aspects of this Engine.

If you want to see what VB and DirectX 8 can perform go at NemoX 3D Engine website

http://perso.wanadoo.fr/malakoff/index.htm


Polaris

Share this post


Link to post
Share on other sites
As has been pointed out, VB can do anything any language can do. VB has access to the DirectX libraries, so one can use those to use complex 3D graphics or simpler 2D.

The main issue that people tend to bring up with VB is it is relatively slow compared to c++. As long as you use fairly good programming practices, though, this is rarely noticeable.

Share this post


Link to post
Share on other sites
The speed differences between code generated by VB6 and VC6 are not critical in most cases.

However, it is not always possible to write a more optimum solution to a problem with VB6 because it lacks some of the tools that C has. VB6 lacks pointers. VB6's classes are also different than a C++ class and require more overhead because they are based around COM and IDispatch.


' Always create objects this way:
Dim objThing As PROJECT.CLASS
Set objThing = New PROJECT.CLASS

' Never create objects these ways:

' Every time you reference objThing VB will
' check to make sure that objThing has been
' created
Dim objThing As New PROJECT.CLASS

' Every call to objThing will require VB to get the
' a DispID and then invoke the method by calling the
' Invoke() method of IDispatch. Very costly.
' read more about it at: (clickified outside of source)
' http://msdn.microsoft.com/library/default.asp?url=/library/en-us/automat/htm/chap5_61id.asp
Dim objThing As Object
Dim objThing As Variant
Dim objThing
Set objThing = New PROJECT.CLASS



Clickified

Share this post


Link to post
Share on other sites

This topic is 4780 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this