Вопрос по Direct3D в Delphi
http://www.mirgames.ru/articles/directx/dxtutorial.html по началу работы с DirectX, при инициализации Direct'a я столкнулся со следующей проблемой - не создается объект типа IDirect3DDevice9. Переменные:
var
g_Device : IDirect3DDevice9;
g_D3DObject : IDirect3D9;
l_D3DPresentParameters: TD3DPresentParameters;
Объект IDirect3D9 создается без проблем:
g_D3DObject := Direct3DCreate9(D3D_SDK_VERSION);
Далее заполняется структура l_D3DPresentParameters и предпринимается попытка создать g_Device, но отлавливается ошибка:
Result := g_D3DObject.CreateDevice(
D3DADAPTER_DEFAULT,
D3DDEVTYPE_HAL,
Handle,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
@l_D3DPresentParameters,
g_Device
);
if FAILED(Result) then
begin
g_D3DObject := nil;
Exit;
end;
В Result записывается значение -2005530516. Какой-либо информации о возможных причинах ошибки я не нашел, истолкования кодов ошибок - тоже. В чем может быть дело?
Всем доброго времени суток! Читая замечательную статью
var
g_Device : IDirect3DDevice9;
g_D3DObject : IDirect3D9;
l_D3DPresentParameters: TD3DPresentParameters;
Объект IDirect3D9 создается без проблем:
g_D3DObject := Direct3DCreate9(D3D_SDK_VERSION);
Далее заполняется структура l_D3DPresentParameters и предпринимается попытка создать g_Device, но отлавливается ошибка:
Result := g_D3DObject.CreateDevice(
D3DADAPTER_DEFAULT,
D3DDEVTYPE_HAL,
Handle,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
@l_D3DPresentParameters,
g_Device
);
if FAILED(Result) then
begin
g_D3DObject := nil;
Exit;
end;
В Result записывается значение -2005530516. Какой-либо информации о возможных причинах ошибки я не нашел, истолкования кодов ошибок - тоже. В чем может быть дело?
2005530516 = D3DERR_INVALIDCALL . Какието параметры неправельные передаешь. Или directX не установлен.