Mini Bcb-Tools Forum Index Mini Bcb-Tools
Welcome to the Mini Bcb-Tools Website Where You Can Find Help and Download Free Programs
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups    CalendarCalendar    RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Welcome
Welcome to Mini Bcb-Tools.

You are currently viewing our boards as a guest, which gives you limited access to view most discussions and access our other features. By joining our free community, you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content, and access many other special features. Registration is fast, simple, and absolutely free, so please, join our community today!

DirectX and Borland

 
Post new topic   Reply to topic    Mini Bcb-Tools Forum Index -> Help Forum
View previous topic :: View next topic  
Author Message
Silvan
Member


Joined: 18 Dec 2007
Posts: 4
Location: Italy

PostPosted: Tue Dec 18, 2007 8:29 pm    Post subject: DirectX and Borland Reply with quote

Hi Darren!

First of all congratulation for your impressive work!!

It is since few week that I regularly visit your website, reading, reading, reading...

Obviously I have a lot of questions, but there is one thing over the other that I would like to know.

As you know Microsof never released the import library of their directx for borland. Indeed Borland use a different format for their library, and simple use their tools (implib, impdef, coff2omf) to convert the microsoft library to borland library don't work.

On the web there is a pletora of converted lib that pretend to works with delphi or bcb. Some of them are buggy but the worst thing is that you need a wrapper dll for use directx in borland.
This dll are the d3dx8ab.dll for example. Infact this is one more step beetween your application and the hardware (apps-> wrapper dll->directx dll). And finally you have to deploy alongside your app also the wrapper dll.

It seems (reading your website) that you resolved this problem.
Please could you say more about this?

Sorry for my english, and thank you for answer.

Regards
Silvan
Back to top
View user's profile Send private message
Darren
ADMINISTRATOR


Joined: 07 Dec 2007
Posts: 16
Location: Australia.

PostPosted: Tue Dec 18, 2007 10:25 pm    Post subject: DirectX .lib's Reply with quote

Hi,

I agree, the only real place to get the correct .lib files is clootie, but I have never used his .lib files, i created my own, which i now supply as part of the TDx_Library.

There are problems with the converted .lib files, which I had to manually recreate bugfixes in order to get the DirectX 7 SDK to work with BCBx.

Inside the TDx_Library, there is some code which fixes some of the missing data elements from the DirectX 7 SDK, and there are also the files dinput1.lib, and dinput2.lib, which i manually recreated, along with the rest, using COFF2EMF.

The reason there are now 2 input libs is that BCBx could not correctly use a single Dinput.lib file.

I had to break it up, add some extra bits, and so on, until i had working .lib files.

Eventually, I had them working, and i kinda forgot how i actually created them (just left lots of info lying around should i ever need to recreate it all for Dx10 or whatever).

Basically, in a nutshell, as far as i can tell, the DirectX 7.0a SDK version available from my website, with the dinput1.lib and dinput2.lib and the various bugfixes built into the TDx_Library to patch the Dx7 SDK, all work perfectly.

I have seen no-one else able to do this, besides myself.
Recreating internal Dx SDK databases?

I do that.
Part of what i've done overall.

- darren
Back to top
View user's profile Send private message Visit poster's website
Silvan
Member


Joined: 18 Dec 2007
Posts: 4
Location: Italy

PostPosted: Wed Dec 19, 2007 10:16 am    Post subject: Reply with quote

Hi Darren,

all this sounds good.

Well, I think that it is possible to use the dx header from the SDK and your
.lib to use the dx in borland directly? (without the VCL componets)

If yes, which dll do we need deploy alongside our apps?


Another question.
I read in your webside some technical considereation on Wondows OS, Borland IDE and DX. I agree with you completely.
Now in your opinion DX7 is fastest than DX8 and DX9?
I would like some inside also on D2 and D3 separately.


Thank you
Silvan
Back to top
View user's profile Send private message
Darren
ADMINISTRATOR


Joined: 07 Dec 2007
Posts: 16
Location: Australia.

PostPosted: Wed Dec 19, 2007 11:19 am    Post subject: Reply with quote

Hi Silvan, etc.

...

To use the TDx_Library, you just install the DirectX 7.0a SDK (available from www.bcb-tools.com/Downloads.htm) normally, and it installs the relevant header (.h) and lib (.lib) files for Borland.

Download and add my custom dinput1.lib and dinput2.lib to the DirectX 7.0a SDK .lib files (as per download instructions).

...

The headers work almost perfectly, unchanged.
The libraries work almost perfectly, when you add dinput1.lib and dinput2.lib.

It actually works after you add the TDx_Library, which then patches the missing bits from the DirectX-supplied headers and libraries, as a built-in part of the TDx_Library.

...

Note: In the BCB-Tools.com FREE Downloads Area (www.bcb-tools.com/Downloads) you will find the header and lib files if you want nothing else of the SDK.

...

When you create your TDx_Library applications, you normally create a standalone application, with no dll's required for the TDx_Library or DirectX.

You can add other dll's if you want, but there is no need for DirectX dll's to link with or ship with (deploy alongside) your application.

...

Yes, far as I can tell, Dx7 is faster.
I find Windows XP to be incredibly slow when compared to Windows ME.

...

I am going to write some more applications soonish... as soon as i can... which will be available to Registered Users, and which will show how to use much more of the TDx_Library, you know, some simple applications doing wierd stuff.

...

Thanks Silvan,

- darren
Back to top
View user's profile Send private message Visit poster's website
Silvan
Member


Joined: 18 Dec 2007
Posts: 4
Location: Italy

PostPosted: Thu Dec 20, 2007 11:19 am    Post subject: Reply with quote

Hi Darren,

What you said about header and lib is clear.
I think this point is of some importance, becouse maybe there are people that already have some c/c++ code working with DX and they would like
to migrate to borland but, at least in the first time, do not have to rewrite anything to work also with the VCL.
So if we have the header and lib that works perfectly and your components as an add on we could have the freedom to choose which to use.

Okey, there will be the same way also for the up coming TDX_Library for DX9? (I hope yes, becouse this time the SDK provided by Microsoft lacks of the borland lib).

About the technology I work with a sleepstreamed version of Win2000 and I work well, do you think that DX7 for 2D application is faster than DX9? I read that however DX9 are better and easier to use, is it right?

Thank to you Darren,
Silvan
Back to top
View user's profile Send private message
Darren
ADMINISTRATOR


Joined: 07 Dec 2007
Posts: 16
Location: Australia.

PostPosted: Thu Dec 20, 2007 2:49 pm    Post subject: Borland and DirectX Reply with quote

Hi Silvan,

I agree that if you were going to try to use DirectX with a Non-Microsoft product (such as Borland) then you are probably going to have all sorts of problems (as Microsoft intended).

Porting or Migrating from another compiler to Borland C++ Builder would initially be a painful experience, but I think it would be worth it ultimately, as once it has been ported, it's much easier to maintain and improve.

You don't actually need the entire DirectX 7.0a SDK to develop using C++ Builder, you only need the headers and libs, but I supply the entire SDK for a reason - there's a whole bunch of stuff in the SDK thats great for learning... ;)

Now, I don't like to talk TDx9, since it's not working, and not finished.

Ideally, yes, it will work like the TDx_Library, as simple and seamless as can be... but at this stage, thats still a dream.

Having understood DirectX 7 in it's entirety, and now understanding a whole lot about DirectX 9, it is my personal belief that DirectX 9 is far far far complex, and does not offer much more than DirectX 7.

Basically, Dx9 does not work on anything less than XP.
And it's more complex, and slower.

Dx7, well, it's older, clunkier, but nicer, i think.

- darren
Back to top
View user's profile Send private message Visit poster's website
Silvan
Member


Joined: 18 Dec 2007
Posts: 4
Location: Italy

PostPosted: Fri Dec 21, 2007 9:41 am    Post subject: Reply with quote

Hi Darren,

I hope this talk could be usefull.
If you agree we could continue after the holiday, for now
I thank you very much and Merry Christmass.

Silvan
Back to top
View user's profile Send private message
Darren
ADMINISTRATOR


Joined: 07 Dec 2007
Posts: 16
Location: Australia.

PostPosted: Fri Dec 21, 2007 12:33 pm    Post subject: DirectX 7 / 9 Reply with quote

Thanks and Merry Christmas to you too...

Hopefully next year will be fairly brilliant...

I am pretty comfortable that the TDx_Library v1.90 will be released early next year...

Following that, I will concentrate my efforts on Demos, Tutorials, Application Templates, and so on for Registered Users only.

As soon as I can, I will also continue developing the TDx9_Library v1.00.

Now, what i was going to say is that some people find 3d graphics more interesting than me.

Me, i like primarily, 2d graphics, with some 3d special effects.
For me, thats exactly what DirectX 7 does, whereas in DirectX 9, the emphasis is all on 3d graphics, a little for 2d graphics, almost exactly the same as is supplied in DirectX 7, and DirectX 9 has a lot of stuff todo things like explosions, gas attacks, etc.

I find this boring, all those DirectX 9 "enhancement" things that are just for killing things.

I personally prefer to develop things using Normal BCB Components, to run on any hardware, mixing and matching with DirectX 7 wherever I need advanced stuffs, like sounds, or graphics, or whatever.

I think what I have created is not necessarily for creating game, but more for dramatically enhancing existing commercial applications with better sounds, graphics, and so on.

Anyways, hope this helps.

- darren
Back to top
View user's profile Send private message Visit poster's website
Darren
ADMINISTRATOR


Joined: 07 Dec 2007
Posts: 16
Location: Australia.

PostPosted: Thu Dec 27, 2007 9:26 am    Post subject: Reply with quote

Don't get me wrong...

TDx is awesome for Demos, Games, 3D Databases, NASA Satellite Imagery, Google Desktop, whatever really...
Back to top
View user's profile Send private message Visit poster's website
Darren
ADMINISTRATOR


Joined: 07 Dec 2007
Posts: 16
Location: Australia.

PostPosted: Thu Dec 27, 2007 9:26 am    Post subject: Reply with quote

and don't forget that it's great for refitting retro games, and so on...

- darren
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Mini Bcb-Tools Forum Index -> Help Forum All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Community Chest


Download our forum toolbar

Powered by phpBB
Hosted by FreeForums.org