Bonjour a tous,

Alors voila, j'ai voulu me lancer a directX alors j'ai decide de faire un petit d'echec 2D. Bref mon jeu d'echec est, presque operationel et marche parfaitement sur mon ordi. Le probleme est que quand je lenvoi a des amis, rien de marche.

Mon "CreateDevice" semble poser probleme chez les autres, retournant comme HRESULT D3DERR_INVALIDCALL .

Voila le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
LPDIRECT3D9		p_dx_Object;
LPDIRECT3DDEVICE9	p_dx_Device;
 
p_dx_Object = Direct3DCreate9(D3D_SDK_VERSION);
if (p_dx_Object == NULL)
{
    Alert("DirectX Runtime library not installed!","Error !");
}
 
D3DPRESENT_PARAMETERS dx_PresParams;
 
ZeroMemory( &dx_PresParams, sizeof(dx_PresParams) );
dx_PresParams.Windowed = TRUE;
dx_PresParams.SwapEffect = D3DSWAPEFFECT_DISCARD;
dx_PresParams.BackBufferFormat = D3DFMT_UNKNOWN;
 
HRESULT try1 = p_dx_Object->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, WndHwnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &dx_PresParams, &p_dx_Device) ;
if (FAILED(try1))
{		
	HRESULT try2 = p_dx_Object->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_REF, WndHwnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &dx_PresParams, &p_dx_Device);
	 if (FAILED(try2))
	 {
		Alert("Failed to create even the reference device!","Error !");		
	 }
 }