Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2009, 23:45   #1
Pedro
Форумчанин
 
Аватар для Pedro
 
Регистрация: 25.03.2007
Сообщений: 166
По умолчанию Камера от третьего лица в DirectX

Здраствуйте! Пытаюсь сделать камеру от третьего лица, но ни как не плоучается вот что: нужно чтобы камера находилась как бы за спиной объекта(допустим куб), так вот не знаю как вычислить значения на которые потом приращивать координаты(x и z) позиции камеры. Чтобы камера постоянно смотрела на объект сделал, а вот правильно поменять позицию не могу.
Pedro вне форума Ответить с цитированием
Старый 06.04.2009, 09:08   #2
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

Примерно так:
Код:
var
  Eye: TD3DVector;
  At: TD3DVector;
  Up: TD3DVector;
  ViewMatrix: TD3DMatrix;
begin
  D3DXMatrixIdentity(ViewMatrix);
//положение
  Eye.x :=x+sin(a)*r; Eye.y := y; Eye.z :=z+cos(a)*r;
//куда смотреть
  At.x := x;  At.y := y;  At.z := z;
//обычно этот вектор выглядит так(0,1,0)
  Up.x := 0;  Up.y := 1;  Up.z := 0;
// строим левостороннюю матрицу вида
  D3DXMatrixLookAtLH(ViewMatrix, Eye, At, Up);
  pD3DDevice.SetTransform(D3DTS_VIEW, ViewMatrix);
end;
a - угол на который повернут объект
r - расстояние на котором должна находиться камера
x,y,z - положение объекта
Kostia вне форума Ответить с цитированием
Старый 06.04.2009, 16:58   #3
Pedro
Форумчанин
 
Аватар для Pedro
 
Регистрация: 25.03.2007
Сообщений: 166
По умолчанию

Спасибо большое Kostia, снова выручил.
Pedro вне форума Ответить с цитированием
Старый 07.04.2009, 23:43   #4
IvaniuS
Форумчанин
 
Аватар для IvaniuS
 
Регистрация: 16.04.2007
Сообщений: 225
По умолчанию

и что тема закрыта? я тоже хочу реализовать это но даже и приблизительно незнаю как знаю формулы общие вопросы но незнаю фунуций и свойств и компонентов, можете работающий на делфи исходник подкинуть просто 2 нижние клетки пол и крутящаяся камера или просто вид от 3-го лица без поворота
IvaniuS вне форума Ответить с цитированием
Старый 08.04.2009, 09:01   #5
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

http://programmersforum.ru/showthread.php?t=15961
Компонентов нет, все программы пишутся с нуля:
Код:
program _1;
begin
//и поехали
end;
Можно использовать VCL форму, это упростит многие расчеты, например нахождения клиентской части формы для определения размеров окна в оконном режиме, но я за чистый API.

Последний раз редактировалось Kostia; 08.04.2009 в 09:11.
Kostia вне форума Ответить с цитированием
Старый 08.04.2009, 15:51   #6
IvaniuS
Форумчанин
 
Аватар для IvaniuS
 
Регистрация: 16.04.2007
Сообщений: 225
По умолчанию

спасибо гляну теперь только поже выкинуть просто пример чтобы стоял ящик или точка или просто шак и вид от 3-го лица мне исходник нужен я так непойму и небольшой комент если можно
IvaniuS вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ и DirectX Элодар Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 22.02.2009 00:23
получение третьего TImage из 2-х romul_ Общие вопросы Delphi 4 16.02.2009 10:00
Про то как я с третьего, а то и... загружаю Windows nansy Помощь студентам 1 29.01.2009 15:29
Учебник по DirectX AngelOfDeath Gamedev - cоздание игр: Unity, OpenGL, DirectX 3 18.08.2008 08:06
DirectX Doom4eg Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 06.08.2008 13:08