![]() |
|
Модераторы: Rickert, Alexeis, BorisVorontsov |
![]()
|
|
| Nikitozz |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2007 Где: Москва Репутация: нет Всего: 0 |
Такая проблема. Установил DirectX 9 учусь рисовать. рисовал просто треугольник все работает
потключал <d3d9.h> нормально работает решил нарисовать трехмерную мадель с использованием матриц подключаю <d3dx9.h> - пишет нет такого файла, хотя все там есть смотрел библеотеки подключил d3d9.lib и d3dx9.lib не могу понять в чем проблема, может поможете? |
|||
|
||||
| Graf_h |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 482 Регистрация: 18.10.2007 Где: г. Ровно, Украина Репутация: -1 Всего: 5 |
Можно посмотреть ошибки?
-------------------- Иногда переменная - это просто переменная |
|||
|
||||
| Nikitozz |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2007 Где: Москва Репутация: нет Всего: 0 |
Вот весь код:
Compiling... MatrixKvadrat.cpp c:\visual studio 2008\projects\urok6\urok6\matrixkvadrat.cpp(3) : fatal error C1083: Cannot open include file: 'd3dx9.h': No such file or directory Build log was saved at "file://c:\Visual Studio 2008\Projects\Urok6\Urok6\Debug\BuildLog.htm" Urok6 - 1 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== Это сообщение отредактировал(а) Nikitozz - 12.6.2008, 11:23 |
|||
|
||||
| konekt |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 1.5.2008 Репутация: нет Всего: нет |
А ты в настройках VC++2008 указывал директории подключаемых файлов?
Путь к d3dx9.h. |
|||
|
||||
| Nikitozz |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2007 Где: Москва Репутация: нет Всего: 0 |
||||
|
||||
| konekt |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 1.5.2008 Репутация: нет Всего: нет |
Tools|Options|Projects and Solution|VC++ Directories далее В окне Show Directories for выбираешь Include files затем на кнопку New Line и указываешь путь к директории DirectX-Include (где у тебя должен быть зарыт D3DX9.H)
Затем в Show Directories for выбираешь Lib files затем New Line и указываешь путь к DirectX-Lib файлам. Вообщем, указываешь VC++ Куда ты поставил DirectX SDK. Кстати, я запустил твой фаил, правда, пришлось исправить пару ошибок (забыл поставить } и не правильно указал имя функции Direct API. Но кроме пустого черного окна ничего не увидел. Если разберешься в чем тут дело - напиши. |
|||
|
||||
| Graf_h |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 482 Регистрация: 18.10.2007 Где: г. Ровно, Украина Репутация: -1 Всего: 5 |
Можеш просто указать в include:
Где вместо path пишеш тот путь, где лежать твои хедеры -------------------- Иногда переменная - это просто переменная |
|||
|
||||
| konekt |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 1.5.2008 Репутация: нет Всего: нет |
Так конечно тоже можно. Но всеже, почему кроме пустого черного окна ничего нет. Вроде должен быть цветной примитивчик. |
|||
|
||||
| Nikitozz |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2007 Где: Москва Репутация: нет Всего: 0 |
Попробовал через Options подключить, выдает кучу ошибок, указал путь - работает. Исправил другие ошибки... Компилит нормально, теперь при линковке ошибка:
------ Build started: Project: Urok6, Configuration: Debug Win32 ------ Linking... MatrixKvadrat.obj : error LNK2019: unresolved external symbol __imp__timeGetTime@0 referenced in function "void __cdecl Matrix(void)" (?Matrix@@YAXXZ) C:\Visual Studio 2008\Projects\Urok6\Debug\Urok6.exe : fatal error LNK1120: 1 unresolved externals Build log was saved at "file://c:\Visual Studio 2008\Projects\Urok6\Urok6\Debug\BuildLog.htm" Urok6 - 2 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== Должен получится квадрат с разноцветными вершинами, вращающийся по оси Y Это сообщение отредактировал(а) Nikitozz - 12.6.2008, 16:51 |
|||
|
||||
| konekt |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 1.5.2008 Репутация: нет Всего: нет |
Попробуй подключить winmm.lib У меня все линкуется, только, опять повтоюсь, ничего не выводится на экран. Я даже из тутора по директу запускаю пример - должен быть цветной треугольник, а у меня белый. Бьюсь над этой проблемой уже 4 часа. Ты писал, что запускал прогу с треугольником. У тебя он цветной получился?
|
|||
|
||||
| Nikitozz |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2007 Где: Москва Репутация: нет Всего: 0 |
без матрици когда делал, просто прорисовал все получалось, желтый фон и цветной квадрат был. сейчас у меня просто черное окно появляется. буду искать ошибку
Спасибо за подсказку насчет либа Добавлено через 13 минут и 49 секунд Нашел первую ошибку в функции InitialDirect3D() return S_OK; надо в самый конец поставить, получится вот так
Добавлено через 14 минут и 59 секунд только теперь этот квадрат растянут на все окно... буду искать дальше Это сообщение отредактировал(а) Nikitozz - 12.6.2008, 22:46 |
|||
|
||||
| konekt |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 1.5.2008 Репутация: нет Всего: нет |
Спасибо за найденную ошибку. Вижу цветастое окно. Возможно проблема в инициализации матрицы вида либо word. Есть другой пример в котором куб вращается очень хорошо (из тутора по Direct) есть еще один из учебника, но там кубик ооооочень маленький и если не знаешь что это куб и что он должен вращаться, то не догадаешься. Правда отрисовка происходит в сообщении WM_PAINT. Так вод там, если химичить с камерами, то можно чтото рассмотреть.
А так в Direct я застрял именно на этом и не могу дальше сдвинуться. |
|||
|
||||
| konekt |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 1.5.2008 Репутация: нет Всего: нет |
Все работает!!! Ошибку нашел. В функции VOID RenderingDirect3D() не указан вызов функции Matrix().
|
|||
|
||||
| Nikitozz |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2007 Где: Москва Репутация: нет Всего: 0 |
Точно блин!!!
теперь буду куб пробовать сделать Это сообщение отредактировал(а) Nikitozz - 13.6.2008, 16:28 |
|||
|
||||
![]()
|
| Вы можете найти полезным что... | |
|
|
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |