Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проекция на плоскость эксрана точки в пространстве.


3d_Vorpos ©   (2004-06-23 19:17:00) 

Точка в пространстве с координатами (x,y,z) должна быть спроецирована на плоскость экрана игрока с координатами (x1,y1,z1) попавшие в угол зрения игрока заданый тремя векторами A(x,y,z),B(x,y,z),C(x,y,z).

Помогите разрешить проблематичную задачу... нужен подробный алгоритм...


марсианин   (2004-06-25 00:05:00) [1]

никак не возьму в толк, как ты задаешь угол зрения 3-мя векторами?)

вообще же алгоритм, такой:
1. переходим в систему координат игрока. ось z пусть будет направлена вдоль (или против, как в ОпенГЛ) направления его взгляда. Это преобразование удобно делать умножением координат на матрицу 4х4.

2. проецируем точку на экран. Если ортогональная проекция, то просто выводим точку в координатах х,у экрана, игнорируя z.
если перспективная - то пропорционально z сдвигаем к центру.
типа того..

ты бы поподробнее рассказал бы как ты делаешь, в ОпенГЛ или ДиректХ, или сам ручками??


Наверх

Титульная страница Поиск, карта сайта Написать письмо