RE: d3dx: A few last questions...

2008-01-29 Thread tony . wasserka
 The function D3DXCheckVersion must not be forwarded from each d3dx9_xx file 
 to the 36 because D3DX_SDK_VERSION changes for each file. 

Thanks for your comment, though I don't know if this is needed:
Comment from the d3dx9core.h of the DX SDK:

 ///
 // D3DX_SDK_VERSION:
 // -
 // This identifier is passed to D3DXCheckVersion in order to ensure that an
 // application was built against the correct header files and lib files. 
 // This number is incremented whenever a header (or other) change would 
 // require applications to be rebuilt. If the version doesn't match, 
 // D3DXCheckVersion will return FALSE. (The number itself has no meaning.)
 ///

So this function is only needed to ensure that no header file changed between 
the last
build of an application. As this won't be the case in our wine implementation 
we can let
all dlls use the same function.
Also, the D3DX_SDK_VERSION is declared in d3dx9core.h, which means we can only 
have
one definition of it at a time which even prevents us from caring about this 
function.
By the way, I think this function is just a leftover from the times, when 
microsoft released
updates of their D3DX library without renaming the dlls, were using a more 
actual dll
could really lead to conflicts.





Unbegrenzter Speicher, Top-Spamschutz, 120 SMS und eigene E-MailDomain inkl.
http://office.freenet.de/dienste/emailoffice/produktuebersicht/power/mail/index.html





d3dx: A few last questions...

2008-01-27 Thread tony . wasserka
Hi,
So far I have pretty much completed the d3dx9_24 dll. However, while writing the
spec files I faced a few problems which I'd like to have solved befor submitting
the patch:
1. With the d3dx9_31 dll, microsoft removed three functions from the SDK. I'm 
curious
what to do with them. Should I stub them at the first or last dll they're 
used in? Also,
How should I handle the forwarding thing then? I'm importing d3dx9_36 in 
each dll,
but need to import the dll containing the three functions, too (I'm just 
asking to make
sure there won't be any collisions or conflicts or something).
By the way, the three functions are D3DXCpuOptimizations, 
GetTargetDescByName
and GetTargetDescByVersion.
2. Another problem is, that many functions changed in there argument list from 
one version
to the next one.
For example 
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/directx9_c_Summer_04/directx/graphics/d3dxapichanges.asp
Says, that D3DXCreateFont changed the type of the D3DXFONT_DESC member 
Height
from UINT to INT. I think (but don't know, so I ask) that this could lead 
to a misbehavior in
some programs, as a UINT has a significant difference in the bit structure 
to INT. Also,
the Angle parameter in D3DXSHRotateZ was changed from const FLOAT to FLOAT, 
which
COULD also lead to problems.
3. Also, the MSDN seems to lack the info about D3DXGetTargetDescByName and
D3DXGetTargetDescByVersion. I'd be really gradeful if someone who has an old
version of the DXSDK installed could take a look into the headers and tell 
me the
argument list.
4. And just to make sure, I attached the d3dx9_24 specfile. Everything but the 
argument
types should be okay I think, but please tell me if you find any other 
problems with it,
like typos in function names or something about the forwarding. Also, the 
two
D3DXGetTargetDescByName/Version functions don't have argument lists yet
as I couldn't find resources about them.

That's it at the moment, I'll reply later to this topic if there appear new 
problems.
Thanks for any answers, best regards

Tony




Unbegrenzter Speicher, Top-Spamschutz, 120 SMS und eigene E-MailDomain inkl.
http://office.freenet.de/dienste/emailoffice/produktuebersicht/power/mail/index.html



d3dx9_24.spec
Description: Binary data