Комментарий к Статье Direct3D: Первая программа под DirectX9
Почему программа работает так медленно? максимум 60 фпс выдает?
А как узнать програмно - поддерживается ли видеокарточкой акселерация для обработки вершин?
mover
Если d3d девайс при создании (в HAL ) не возвратил ошибку, то значит поддерживается.
Или проверяй капсами
dev
По поводу проверки на ошибку понял.
По поводу капсов. Нашол вот такое:
...
D3DCAPS9 caps;
ptrD3D9 -> GetDeviceCaps(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, &caps);
if ( caps.DevCaps & D3DDEVCAPS_HWTRANSFORMANDLIGHT )
VertexProcType = D3DCREATE_HARDWARE_VERTEXPROCESSING;
else
VertexProcType = D3DCREATE_SOFTWARE_VERTEXPROCESSING;
...
Почему используется проверка на поддержку видеокартой трансформаций и освещения (D3DDEVCAPS_HWTRANSFORMANDLIGHT) ?
Что делать если проблема с блоктровкой Буфера Индексов:
First-chance exception at 0x00414651 in DX.exe: 0xC0000005: Access violation reading location 0x00000000
А почему матрицы задаются вручную? это сделано для простоты или имеет смысл применять такой подход?
При компиляции у меня Visual выдает такую ошибку:
1>first.obj : error LNK2019: unresolved external symbol _Direct3DCreate9@4 referenced in function "bool __cdecl InitD3D(struct HWND__ *)" (?InitD3D@@YA_NPAUHWND__@@@Z)
Кто может помочь разобратся .. может я что-то забыл в ключить в свой проек?
>Кто может помочь разобратся .. может я что-то забыл в ключить в свой проек?
Да, библиотеки директ иксовые .lib
незнаю... я только подключил одну либу...
#pragma comment(lib,"d3d9.lib")
или ещё нужно что-то включить? просто я в этом деле новичёк ... увидел статью думал что получится... а тут такая лажа(
fliengster
Может быть, путь к библиотекам DX не указан?
fliengster
Solution Explorer -> правый клик по названию проекта -> Properties -> Linker -> Additional Library Directories -> нажимаем на кнопку с тремя точками -> указываем путь к папке с либами ДХ СДК, например, E:\DirectX SDK (March 2008)\Lib\x86
Properties -> С/С++ -> Additional Include Directories -> нажимаем на кнопку с тремя точками -> указываем путь к папке с инклудниками ДХ СДК, например, E:\Microsoft DirectX SDK (March 2008)\Include
Shockwave
(( все таже байда (( может мне надо конвертировать эти либы... пишу на Visual studio 2005.
fliengster
Эм, специально скачал пример для статьи. Я надеюсь, ты создаешь проект и пихаешь туда все файлы из архива?
Тема в архиве.