hi @ all
ich möchte die present_parameters in einer .ini speichern und dann abfragen. die auflösung funktioniert auch soweit aber sobald er den windowed aus der .ini auslesen soll und der auch noch auf 0(false) sthet kommt ein fehler bei createdevice. wenn er aber auf 1(true) steht funktioniert es.
hier das problem:
|
C-/C++-Quelltext
|
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
27
28
29
30
31
32
33
34
35
36
37
38
|
bool CInitDirect3D::InitDirect3D(HWND hWnd)
{
m_lpD3D = Direct3DCreate9(D3D_SDK_VERSION);
int windowed = String_Convert.string_to_int(Width("2"));
if(NULL == m_lpD3D)
{
MessageBox(NULL, "Es konnte kein D3D-Objekt erstellt werden!", "Fehler!", MB_OK | MB_ICONERROR);
tbWriteToLog("es konnte kein D3D-Objekt erstellt werden(Direct3DCreate9)");
return false;
}
D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory(&d3dpp, sizeof(d3dpp));
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.hDeviceWindow = hWnd;
d3dpp.Windowed = 1;
d3dpp.BackBufferWidth = window_width();
d3dpp.BackBufferHeight = window_height();
d3dpp.BackBufferFormat = D3DFMT_A8R8G8B8;
if(FAILED(m_lpD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &d3dpp, &m_lpD3DDevice)))
{
MessageBox(NULL, "Direct3D konnte nicht initialisiert werden!", "Fehler", MB_OK | MB_ICONERROR);
tbWriteToLog("Direct3D konnte nicht initialisiert werden(CreateDevice)");
return false;
}
TB_INFO("DirectX wurde erfolgreich initialisiert!");
return true;
}
|
danke schonmal für antworten