This morning I downloaded the source files and took a look at the GDK code. I found that the problem was in CcameraC.cpp
In it there are two overloaded dbSetCameraToImage functions that link to SetCameraToImageEx. One acceptes ID, Image ID, Width, and Height. The other accepts those four parameters plus the GenAlpha value.
This second version calls SetCameraToImageEx function but only passes a value of zero for the D3DFormat.
The SetCameraToImageEx function has two overloaded versions, one of which can handle the D3DFormat instruction -
DARKSDK void SetCameraToImageEx ( int iID, int iImage, int iWidth, int iHeight, int iGenerateCameraAlpha, DWORD dwOwnD3DFMTValue ).
So, someone seemed to have forgotten to add the overloaded dbSetCameraToImage function that acceptes the DWORD parameter for D3DFORMAT and passes that to SetCameraToImageEx.
I have now modified and recompiled the Dark GDK libraries and all seemed to work perfectly. I am now going to go away and test it all.
For anyone who is interested, I simply added this function:
void dbSetCameraToImage ( int iID, int iImage, int iWidth, int iHeight, int iGenAlpha, DWORD dwD3DFORMAT )
{
SetCameraToImageEx ( iID, iImage, iWidth, iHeight, iGenAlpha, dwD3DFORMAT );
}
Hope that is of use to anyone else with this problem.
Amazing Simulation
www.amazing-forum.com