Irrlicht + VB6

Discuss about anything related to the Irrlicht Engine, or read announcements about any significant features or usage changes.
Umar Nizamani

Irrlicht + VB6

Post by Umar Nizamani »

I have a really good knowledge of vb6 where as my oop in c++ really sucks, so its nearly impossible for me to make a good game. So is it possible to irrlicht with vb6. I know its possible to connect c++ and vb6. I have done that a few times my self. But how to connect irrlicht with vb6. If this can be done then 3 million vb users can make use of irrlicht too you know.
TrueLiar
Posts: 16
Joined: Thu Sep 29, 2005 2:13 pm
Location: Vietnam

Post by TrueLiar »

You should learning C++ :lol: . VB really not good developing game.
Prepare for my Piluzz...
(about 3 years)
dracflamloc
Posts: 142
Joined: Sat Dec 11, 2004 8:13 am
Contact:

Post by dracflamloc »

VB6 cant be used. Its not true object oriented
AndyCR
Posts: 110
Joined: Tue Nov 08, 2005 2:51 pm
Location: Colorado, USA
Contact:

Post by AndyCR »

microsoft has released visual basic 2005 express, and visual studio 2005 express as a whole, for free at http://msdn.microsoft.com/vstudio/express/
Umar Nizamani

Post by Umar Nizamani »

Well again i see that spark which i am trying to stop. Everyone says vb is no good for game programming. So i have started on a game engine for visual basic. The idea is huge, and i even have hosting at sourceforge for it. About to release the first pre-alpha edition. And i know c++ but i always have problems when i have more than one header. I mess it up at the oop part. Ok so back to the topic, anyone interested in helping me? Anyone has any experience? Anything???
Umar Nizamani

Post by Umar Nizamani »

And another major point. There are 3 million vb users through out the world. Think about the publicity irrlicht will get with a vb wrapper. And creating a gui creator or visual editor will be a matter of hours.
BlackNinjaGames
Posts: 31
Joined: Mon Sep 05, 2005 4:47 pm
Contact:

Post by BlackNinjaGames »

Sigh.

>>You should learning C++. VB really not good developing game.

VB is perfect for developing games. That is a biased comment, and from what I can tell, you've never tried to create a game in VB. Production is much much quicker, and its much less hassle than in C++. The only problem is that there is a lack of engines for VB6. Most are for C++. So I use C++, becuse I'd rather NOT take time to create an entire 3D engine from scratch. However, whenever I make 2D games, I ALWAYS use VB. It's so much faster production-wise.

It would be nice to have Irrlicht available for VB. It could help spawn a little more respect for VB games. VB is not meant to create engines. It is meant to tie together different libraries into a fully functional application. VB is slower than C++ code-wise, so any core functionality of a game needs to be written in C++. But other than that, VB is just as good a language as C++.

Also, people say that VB produces bad coding habits. Bullcrap. The coder produces bad code and coding habits. VB is just leaniant enough to let you do so.

So, back on topic, I would like to see Irrlicht have VB support, it would be very nice. Prehaps someone could create a smallteam that would make Irrliocht into an ATL object library, so B can partake in it.

I would join, also. However, I am busy creating a game. However, I could help the process of conversion.
Guest

Post by Guest »

BlackNinjaGames wrote:Sigh.
VB is not meant to create engines. It is meant to tie together different libraries into a fully functional application. VB is slower than C++ code-wise, so any core functionality of a game needs to be written in C++
.
hehehe! So, to develope 3D game engine, you choose C++ or VB ?.
I hate VB. VB is procedure language and only good for developing some Microsoft's products, such as : Database App, 2D game...(on Windows)
Cristian

Post by Cristian »

True, VB doesn't suck for GDEV but it's really slow compared to C++ (after all it's pretty much an OS embedded interpreter anyway :D)
BlackNinjaGames
Posts: 31
Joined: Mon Sep 05, 2005 4:47 pm
Contact:

Post by BlackNinjaGames »

Anonymous wrote:
BlackNinjaGames wrote:Sigh.
VB is not meant to create engines. It is meant to tie together different libraries into a fully functional application. VB is slower than C++ code-wise, so any core functionality of a game needs to be written in C++
.
hehehe! So, to develope 3D game engine, you choose C++ or VB ?.
I hate VB. VB is procedure language and only good for developing some Microsoft's products, such as : Database App, 2D game...(on Windows)
I'd write the core (graphics, sound, physics) in C++, for speed. But then I'd tie them together into a game outside of C++. I'd just rather be lazy and use C++ and Irrlicht, than write an entire 3D engine for VB... 8) :roll:
Conquistador
Posts: 340
Joined: Wed Sep 28, 2005 4:38 pm
Location: Canada, Eh!

re:

Post by Conquistador »

The only problem is that there is a lack of engines for VB6
I think there's a reason there aren't any engines out there for VB, because all the people that are serious about coding an engine do so in C/C++ because it's:

- Faster
- More portable
- More encapsulated

I for one, think that VB is only good for windows applications, not for 3D games. Now for some Bash quotes!
<DAL9000> VB is like fingerpainting.
<Epitaph> except it's not fun.
<foo-busy> besides, saying you're a vb programmer around true geeks is like saying you're gay at the mormon's men convention. seeya later
<mungbean> using VB is like masturbating with a cheese grater.
<Queued> It must be late -- "perl5" is looking like "penis"
<Boinger69> Stay up until "VB" looks like "a good idea"
zenaku
Posts: 212
Joined: Tue Jun 07, 2005 11:23 pm

Post by zenaku »

The real reason nobody uses VB is because VB is Windows-Only.

Other than that, there is nothing wrong with using VB. Games usually have a scripting layer where most of the game logic exists. It might as well be VB.

People that say VB isn't object oriented have never really used the language. Almost everything is an object in VB.

VB can be very powerful when used correctly. The problem is a lot of people start learning how to program using VB, so that's what you are used to seeing: crappy beginner's programs and code.

In order to use Irrlicht in VB, you'll need a COM interface. To do that, you'll need to do some C++ ;)

In DevStudio, select New->Project-> C++ Project -> ATL project. Under settings, select "DLL".

Right click on your new project in the class view and select "add->New Class". From the available templates, select "ATL Simple Object". You'll need to pick some names for your classes and interfaces. Under the options section, make sure to check the connection points box. You'll need that to make the callbacks work from irrlicht to VB.

Now you have your COM class. From here, you'll have to basically wrap all of irrlicht's functions :shock:

I've greatly over-simplified making a COM interface, especially for something like Irrlicht. It would probably take months if you are new to COM, longer if you are new to C++. Also, if the COM interface was finished, Irrlicht.NET would pretty much be finished, as .NET can use COM interfaces.
Umar Nizamani

Post by Umar Nizamani »

Ok! Firstly off topic, the biggest problem with vb is speed other than that alls great and if you are wise enough to do some good vb coding and mix it up wid a little asm and c++ then the engine can really kick ass. The reason why most people dont make good engine is vb is because vb is so simple. A person draws a button on a form and thats it. There is nothing more. But if you research and practice you can do lots of tricks with vb not known before like u can use pointers in vb if you know how to.

Now back to topic. I took advice of some of you guys and tried vb.net. And i must say i am impressed. Damn good speed, more object oriented with stuff like inheritance and more or less the same vb coding. In the past week i have completed call of duty 2 ...... oh i forgot that was for the gaming forum, i mean i have used irrlicht terrain node, md2 and bsp meshes, and lots of stuff with vb.net . Now what i want to know is how to make a dll in vb.net that could be linked with vb6. If anyone has any knowledge do share mean while i will go googling.
Alberto Rubinato

Post by Alberto Rubinato »

I'm not very sure, but I know that all .net languages can share code or part of programs made with different languages.
For Example you can write a function with VB.net, a class with Delphi.net and the rest of program with C#. Finally you link all together in one program.
If this is true, simply use Irrlicht.net in VB.net ( Microsoft has released it for free with the Express edition). In this way you don't need to reimplement all of Irrlicht stuff your self.
Other
Posts: 85
Joined: Fri Dec 03, 2004 5:41 pm
Contact:

Post by Other »

Umar Nizamani wrote: And i know c++ but i always have problems when i have more than one header...
Have you tried to use preprocessor definitions? It could solve your problem:

Just use in each headerfile something like that:

Code: Select all


// At begin of header with name e.g. "header_name.h"
#ifndef _HEADER_NAME_H_
#define _HEADER_NAME_H_

// Here comes your cool C/C++ code
// ...
// ...

// At the end
#enddef
// Newline after it 


My Irrlicht&ODE-Project: http://www.lofing.de/myworld/
Post Reply