Форум программистов, компьютерный форум CyberForum.ru

DirectX направленное движение - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ На qt creator возможно написать программу Эмулятор браузера? http://www.cyberforum.ru/cpp-beginners/thread689013.html
На qt creator возможно написать программу Эмулятор браузера? os: ubuntu
C++ Вычисление числа Пи методом Монте-Карло Всем доброго время суток. Написать программу для вычисления значения \pi с помощью метода Монте-Карло. Для этого рассмотреть квадрат с центром в начале координат и длиной ребра 2, в которой вписана окружность радиуса 1 с центром в начале координат. Вероятность того, что выбранная наугад точка внутри квадрата попадет внутрь окружности равна отношению площадей окружности и квадрата, то есть... http://www.cyberforum.ru/cpp-beginners/thread688997.html
C++ компиляция
моя программа компилирует код которого уже нет! что делать?
C++ В каком квадранте находится точка (x, y) ?
помогите написать программу в С++ в каком квадранте находится точка (x, y) и вывести номер квадранта.
C++ Класс фигура c++ http://www.cyberforum.ru/cpp-beginners/thread688983.html
Класс "фигура": координаты на шахматной доске, цвет. Метод - "ход" на одну позицию в одном из 4 направлений. Производные: "конь", "пешка" (порядковый номер, или своя половина поля), "ферзь" - со своими методами "ход" и "удар".
C++ Программа с матрицами: с квадратную (n x n) работает нормально, а с m x n с выдаёт ошибку Задание: Дана целочисленная прямоугольная матрица. Определить количество строк, содержащих хотя бы один нулевой элемент, и номер столбца, в котором находится самая длинная серия одинаковых элементов. Проблема: Если вводишь матрицу n*n т.е. квадратную,то все работает, а если m*n то вылезает ошибка. Помогите исправить. // 23.cpp: определяет точку входа для консольного приложения. // ... подробнее

Показать сообщение отдельно
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,165
Завершенные тесты: 2
05.11.2012, 14:52  [ТС]     DirectX направленное движение
Занимаюсь по книжке "Введение в программирование трёхмерных игр с DirectX9" ))

вот что накропал

создаю кубик
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
D3DXMATRIX mat;//матрица мира конечная
D3DXMATRIX matRot;//матрица поворота
ID3DXMesh* Object = 0;
D3DXVECTOR3 pos(0.0f, 0.0f, 0.0f);
D3DXVECTOR3 look(0, 0,  20.0f);
 
D3DXCreateBox(
        Device,
        4.0f, 
        4.0f,
        4.0f,
        &Object,
        0
        );
значит ввод пользователя
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
26
27
28
29
30
31
32
33
34
35
36
37
if( ::GetAsyncKeyState(VK_UP) & 0x8000f )
        {
            pos += D3DXVECTOR3(look.x, 0, look.z) * timeDelta;
            D3DXMatrixTranslation(&mat, pos.x, pos.y, pos.z);
        }
            
 
        if( ::GetAsyncKeyState(VK_DOWN) & 0x8000f )
        {
            pos += D3DXVECTOR3(look.x, 0, look.z) * -timeDelta;
            D3DXMatrixTranslation(&mat, pos.x, pos.y, pos.z);
        }
            
 
        if( ::GetAsyncKeyState(VK_LEFT) & 0x8000f )
        {
            D3DXMatrixRotationY(&matRot, timeDelta);
            D3DXMatrixMultiply(&mat, &matRot, &mat );
            D3DXVec3TransformCoord(&look,&look, &matRot);
        }
            
            
        if( ::GetAsyncKeyState(VK_RIGHT) & 0x8000f )
        {
            D3DXMatrixRotationY(&matRot, -timeDelta);
            D3DXMatrixMultiply(&mat, &matRot, &mat );
            D3DXVec3TransformCoord(&look,&look, &matRot);
        }
//рисую куб
Device->Clear(0, 0, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, 0x00000000, 1.0f, 0);
        Device->BeginScene();
        
        Device->SetTransform(D3DTS_WORLD, &mat);
        Object->DrawSubset(0);
 
        Device->EndScene();
        Device->Present(0, 0, 0, 0);
но получается как то по дурацки - клавишами влево - вправо он поворачивается,
но при нажатии вперёд назад он разворачивается как был и движется в сторону куда он повернулся после клавиш влево - вправо...
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru