Archived

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

uray

Visual C++ VS C++ Builder

Recommended Posts

is there anyone that building game with C++ Builder??!! why always Visual C++,what the advantage of VC++ beside C++ Builder??, i think C++ Builder have all functionality as VC++ and with some improvement for ease of programming!

Share this post


Link to post
Share on other sites
I have worked with the Borland C++ Builder and think the main target of this compiler is to let you write applications that require a user interface a lot more quickly. It's also a lot easier to use then MFC for that task.

But if you want to write a game, you usually don't need all of that gui stuff. Plus the code completion of Visual C++ worked a lot better (faster!) for me, combined with Visual Assist it's a dream. I also found the way to handle different project files in Visual a bit easier.

Edit: Oh, and sure the C++ Builder has the same (basic) functionality as any other C++ Compiler. It compiles C++ code. It just happens to add a lot of nifty features, that are sadly of little use to games.

[edited by - Wildfire on July 25, 2003 1:50:19 PM]

Share this post


Link to post
Share on other sites
i know C++ Builder on Game Development not really need to use VCL or GUI stuff,but its class library (T*)is really help, like
TMemoryStream,TFileStream,TList,TTree,TStack,TQueue,TBitmap,TTimer etc. then combine with Win32 Library it will be more complete than VC++ with easier...

Share this post


Link to post
Share on other sites
I have used C++Builder for small games and it worked great. However, they were the type of games that required a GUI and I was also able to use several components it offers. It has its place just like every other compiler. You can turn items off and build games just like in VC++ and use the more visual features to your advantage. If that''s what you like, it works. It is kind of hard to not use VC++ with Visual-Assist though as it is quite a productive pair. I also use WndTabs Extended in VC++.

Share this post


Link to post
Share on other sites
Concerning TList, TTree, TStack etc... take a look at the STL. That''s part of the C++ standard, and offers all of those + a lot more.
TMemoryStream, TFileStream... look up std::string std::iostream, std::stringstream etc...

I can''t think of a build in TTimer class for VC++ (maybe MFC has one?), but I think there''s more then enough libraries for those out there.

Oh! One point against Borland Builder: Try finding a .lib for it... like say opengl.lib glu.lib etc... a lot more difficult then for VC++.

Share this post


Link to post
Share on other sites
Not entirely. Since TList and std::list are most likely the same, you just get the same thing twice.
And you''ll have trouble porting your code, if you use non standard things like TList. (Same goes for MFC or other MS specific stuff of course).

Share this post


Link to post
Share on other sites
OK,that''s just one example,i think there''s a lot of C++ Builder Library that is not same to MFC Library...

now how about Speed and FileSize???
(just want to know,because i never write on VC++)

Share this post


Link to post
Share on other sites
Actually because Builder is based on Delphi (Pascal) most of the Builder specific stuff is written in Pascal. They include a lot of the code for the controls and most of it is in Pascal.

[edited by - Kestrel on July 25, 2003 5:26:27 PM]

Share this post


Link to post
Share on other sites
I''m someone you should listen to on this subject. Borland C++ Builder is awesome for any task. If you are making level editors and other GUI stuff, then you can use VCL. For one of my current projects the level editor is a VCL-based inferface with OpenGL. The game does not use VCL- it uses raw Win32 stuff, with Winmain and Winproc.

The interface is very good, I prefer it to VC++6. The only downside to Borland C++ Builder is if you have a crappy computer the IDE will take a while to load...

So, BCB is great, and so is the VCL, if you need it. I''m still getting used to all the VCL features. It''s perfectly possible to program a game in BCB with out using VCL.

Share this post


Link to post
Share on other sites
i have created bomberman like games using DirectX::Direct3D with C++ Builder Compiler
it has GameEngine,GraphicsEngine,InputEngine....Engine..each engine is inherited from
TComponent (invisible) so it have property and event that can be change or modify at
Design time...

with this feature the code is more reusable, i can use this engine on another game with easy
just a simple click and click, edit the little code,then game is change,and another
benefit is you can give this component to higher level programmer so they can making code
easier without any complicated code and documentation

how about VC++ can it have this similiar feature?

Share this post


Link to post
Share on other sites
I have owned:

Turbo C++ 2 and 3
Visual C++ 1.52, 4.2, 6, and .NET
Borland C++ 4.5 and 5 (with Design Tools)
Borland C++ Builder 3, 4, and 5

and all I have to say is ... old Borland C++ ROCKED because you could define syntax highlighting lists in a simple text file ... I don''t know how to do that in VC or Borland Builder - everything else is better in the new editors.

Borland Builder 5 was a better C++ compiler in almost every respect than Visual C++ 6. Both langauge wise, and simply usage wise. One reason it was less popular is MSVC produced more optimized code (particularly for the PII and PIII when they we''re fairly new).

Borland C++ has NEVER been my only / primary tool for only one reason - support for simple third party projects and libs. Because Visual Studio is the standard (just like MS Office - and I use Corel WordPerfect Office for $22 OEM) - then there is a real wealth of information, example, projects and libraries for it. Borland however is the bastard stepchild, a wonderfull, but unappreciated compiler. PLUS they chose to use there own .lib format, which is not compatible with the MSVC choice, this was necessary I believe for things like VCL support (Pascal conventions, etc), but really has just always made it one or two extra steps harder to use Borland Builder, because it doesn''t "play nice" with MSVC. It doesn''t import MSVC projects completely and correctly (neither do new version of MSVC though), nor can it use .lib files for MSVC correctly .. this kills it, as non open source projects are not rebuildable, therefore, no BCB support from vendor == impossible to use. If not for this, and the problems it caused me back with DirectX 6 and various other libraries, I would be using BCB more.

doing everything as a COM/ActiveX control kinda allieviates this problem ... but now MS has gone to .NET, just as BCB was really getting their support really top notch (notice that the BCB library has changed very little since BCB 3, because they already had a great thing ... not counting the always improving database support, and the brand new XML components).

Also, Kylix version 3 was finally getting promising .. and MS goes and changes the rules again ...

BTW, I still love BCB, and plan to get 6 ... or maybe wait for 7, but MSVC .Net (and 2003) are finally correctly some major weaknesses in MSVC, and adding things like PDA emulator, which make the platform really nice ... not to mention that the .NET platform retained over half of what makes VCL so good ...

Share this post


Link to post
Share on other sites
so do i :

Turbo C++ 1,2,3
Turbo Pascal 7.0
Borland C++ 4.5 , 5.02
Borland C++ Builder 1,3,4,6
Borland Delphi 1,2,4,5,6,7
(never use VC++)

i have owned Borland C++ Builder 6 Enterprise this is a good tools,but with
a little improvement from BCB4 (i don''t have BCB5), i think you should be wait
for BCB7 but it was over 1 year while delphi is get into 7th version but BCB still
stuck on BCB6 do you know what''s wrong i wait for it,or maybe they moved
into Borland C# Builder?

Share this post


Link to post
Share on other sites
quote:
Original post by Wildfire
Oh! One point against Borland Builder: Try finding a .lib for it... like say opengl.lib glu.lib etc... a lot more difficult then for VC++.


One point for C++ Builder: Just use implib(vc++ dlls) or CoffToOmf utilities to create Builder compatible libs from the VC++ ones. These are command line utilities provided with Builder.


[edited by - raging_jakl on July 25, 2003 9:12:06 PM]

Share this post


Link to post
Share on other sites
There is nothing wrong with BCB. I use version 5. If you need to use a VC lib, then you can use implib to make it compatible with BCB. If there is no DLL, it is possible to compile one with VC. I doubt version 7 of BCB would include anything game developers need. Borland makes all sorts of database and web application stuff.

-BCB (probably even back to version 1) is perfect for making games on the windows platform, whether OpenGL, DirectX, GDI, SDL...
-It has a great interface and a fast compiler
-VCL is excellent for all sorts of things like level editors
-You only need VC if you need to compile a dll so you can use implib to make it work in BCB

It''s a shame that BCB is so underrated. I sometimes pity VC6 users (I don''t know if .net''s IDE is any good).

A little history: Wolfenstein 3D was was made in Borland C for DOS!

Share this post


Link to post
Share on other sites
quote:
Original post by matt_j
There is nothing wrong with BCB. I use version 5. If you need to use a VC lib, then you can use implib to make it compatible with BCB. If there is no DLL, it is possible to compile one with VC. I doubt version 7 of BCB would include anything game developers need. Borland makes all sorts of database and web application stuff.

-BCB (probably even back to version 1) is perfect for making games on the windows platform, whether OpenGL, DirectX, GDI, SDL...
-It has a great interface and a fast compiler
-VCL is excellent for all sorts of things like level editors
-You only need VC if you need to compile a dll so you can use implib to make it work in BCB

It''s a shame that BCB is so underrated. I sometimes pity VC6 users (I don''t know if .net''s IDE is any good).

A little history: Wolfenstein 3D was was made in Borland C for DOS!


Agreed. But I don''t think the dll has to be compiled with VC++ in order for implib to work.

Share this post


Link to post
Share on other sites
I''ve used both. I think MSVC is more comfortable, so I use it for games and general purpose stuff. It''s very nice that you can build GUI apps so easily in Builder though.

Share this post


Link to post
Share on other sites
Personally I hated Borland C++ Builder when I wrote my 3D MasterMind game for class. I couldn''t delete the default main cpp file it added without asking me so I had to cut&paste the source into this main cpp file. Then when I added new "units" it added stupid preprocessor directives to the main cpp file. Sometimes, i still don''t know why, the piece of crap wouldn''t parse these preprocessor directives saying it was old version or something.

All in all I must say that BCB was a pure nightmare to work with I it cost me a lot of time. I was forced to compile using BCB because that was what the school computers had installed.

Of course I wrote the code at home using MSVC where everything worked like a breeze.

Share this post


Link to post
Share on other sites
Blah, yeah, sometimes getting used to VCL (the "units" etc) is a pain. But I have an OpenGL / VCL combination program in the making and it''s working great. Now that I understand VCL I really like it. I don''t desire the high-levelness of it for game programming, but it''s still very possible.

Share this post


Link to post
Share on other sites