Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
188 / 120 / 4
Регистрация: 23.01.2010
Сообщений: 1,320

Как инициализировать DirectX ?

18.03.2012, 20:25. Показов 1191. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообщем хочу рисовать в 3D как инициализировать директор на vsс++ я не знаю дельфи с задачий не справляеться. Подскажите книжку плизз прямуюю ссылку ПОЖАЛУЙСТА!!!!
Я понимаю что мог бы сам найти но не знаю что именно не селен в с++ поэтому нужна помощь. надо инициализировать под игру 3d
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.03.2012, 20:25
Ответы с готовыми решениями:

инициализировать DirectX
Здравствуйте!!! Помогите мне как легко инициализировать DirectX 9.0? дайте пожалуйста пример? Я уже пробовал несколько раз, но че-то не...

Реализовать DirectX. Или разобраться в том, как программисту наладить работу DirectX у клиента под Windows
Здравствуйте Программисты. Заплачу за решение моего вопроса! 25-50 тыс. рублей. 50 тыс. рублей заплачу, если полностью решите мой...

Если у меня видяха поддерживает DirectX 10, то пойдут ли те игры, которые поддерживают DirectX 9?
Если у меня видяха поддерживает DirectX 10, то пойдут ли те игры, которые поддерживают DirectX 9?

1
2356 / 1463 / 125
Регистрация: 20.12.2011
Сообщений: 2,223
19.03.2012, 17:07
Лучший ответ Сообщение было отмечено n971030 как решение

Решение

Вначале объявите глобальные переменные:
C++
1
2
3
4
5
6
7
8
//  1. указатель на интерфейс Direct3D
    //  2. указатель на устройство визуализации
    //  3. для хранения необходимых примеру данных трехмерной геометрии
    //  4. массив текстур 
               LPDIRECT3D9             p_d3d           = NULL;
               LPDIRECT3DDEVICE9       p_d3d_Device     = NULL;
               LPDIRECT3DVERTEXBUFFER9 p_pBufferVerhi   = NULL;
               LPDIRECT3DTEXTURE9      p_pTexture[32];
и инициализируйте. Привожу свой пример:
C++
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
BOOL Init_Direct (HINSTANCE hInstance,  int nCmdShow)
{
    
    D3DPRESENT_PARAMETERS Direct3DParametr; 
 
    ZeroMemory(&Direct3DParametr, sizeof(Direct3DParametr));
    Direct3DParametr.Windowed=TRUE;
    Direct3DParametr.SwapEffect=D3DSWAPEFFECT_DISCARD;
    Direct3DParametr.BackBufferFormat = D3DFMT_UNKNOWN;
//  Direct3DParametr.BackBufferFormat = stDisplay.Format;
 
            p_d3d = Direct3DCreate9 (D3D_SDK_VERSION);
          if(!p_d3d)
          return false; 
          
            D3DDISPLAYMODE stDisplay;
    if(FAILED(p_d3d->GetAdapterDisplayMode(D3DADAPTER_DEFAULT, 
                           &stDisplay)))
        return false;
 
if(FAILED(p_d3d->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, 
    hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING,
    &Direct3DParametr, &p_d3d_Device)))
        return E_FAIL;
        return S_OK;        }
и далее рисуйте:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    void RenderScene(void)
{
    if(p_d3d_Device == NULL)
        return;
 
    p_d3d_Device->Clear(0, NULL, D3DCLEAR_TARGET,
            D3DCOLOR_XRGB(110, 120, 110), 1.0f, 0);
 
    p_d3d_Device->BeginScene();
 
// ............. рисовать что либо ..................
// ............. DrawObject() ................
 
    p_d3d_Device -> SetStreamSource (0, p_pBufferVerhi,
        0, sizeof(CUSTOMVERTEX));
    p_d3d_Device -> SetFVF (D3DFVF_CUSTOMVERTEX);
    p_d3d_Device -> DrawPrimitive (D3DPT_TRIANGLELIST, 0, 1);
    
    p_d3d_Device->EndScene();
    p_d3d_Device->Present(NULL, NULL, NULL, NULL);
                    }
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.03.2012, 17:07
Помогаю со студенческими работами здесь

XNA является дополнением DirectX или это полноценная альтернатива DirectX не зависящая от него
Предлагаю в этой теме задавать общие вопросы по XNA. Может вопросы покажутся глупыми, но все же: 1. Работать с XNA можно только в...

Откат DirectX на более раннюю версию. Управление DirectX
Доброго времени суток. Как откатить DirectX11 до DirectX10 на Win 7 x64? А может существуют утилиты, заставляющие игру воспринимать...

Как инициализировать новую форму, с такими же свойствами как и родительская?
Здравствуйте, подскажите пожалуйста, как создать новую форму, с такими же кнопками и с таким же кодом как и в форме создающей эту форму? ...

Как объявить указатель на массив через typedef и как инициализировать такой тип
Как заставить заработать этот фрагмент кода? INT_L -- указатель на массив из 100 элементов типа char; Не получается в переменную C...

Как инициализировать obj[0][0]?
object obj = new object; obj = new object;


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru