Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Третье измерение

Листинг 5.5. Программа быстрого рисования точки. | Листинг 5.6. Рисование горизонтальной линии. | Листинг 5.7. Рисование вертикальной линии. | Листинг 5.8. Создание и отображение цветовой палитры (PALDEMO.C). | Листинг 5.9. Структура заголовка PCX-файла. | Листинг 5.10. Программа чтения файла формата PCX. | Листинг 5.12. Функция извлечения спрайта из загруженного PCXфайла. | Листинг 5.13. Функция рисования спрайта. | Листинг 5.14. Сохранение фона под спрайтом. | Листинг 5.15. Отображение символа. |


Читайте также:
  1. I. ТРЕТЬЕ ПОКОЛЕНИЕ
  2. VI. Третье приближение к Закону Аналогии. О связях между тернерами
  3. А.З Измерение профиля горни
  4. База третьего флота, Корускант
  5. В ИНОЕ ИЗМЕРЕНИЕ
  6. В иное измерение
  7. В ПОИСКАХ ТРЕТЬЕЙ АЛЬТЕРНАТИВЫ

Последние достижения в области электроники и программирования приблизили наши фантазии о трехмерных видеоиграх к осязаемой реальности. Разработчики игр сегодня могут создать трехмерные игры для недорогого ПК, позволяющие игрокам получить ощущения, всего несколько лет назад казавшиеся недоступными,

Говоря по правде, и в прошлом были трехмерные имитаторы полетов и несколько пространственных игр. Но все они были очень медленными и нуждались в мощных компьютерах. Естественно, это резко сужало круг потенциальных игроков. Все эти ограничения заставляли программистов искать пути создания нетрадиционных методов рен-деринга. Эти новые способы были очень просты и имели производительность, еще пару лет назад считавшуюся невозможной.

В данной главе мы сначала обсудим традиционные методы рендеринга для ПК. а затем погрузимся в технику, называемую «отсечение лучей». Этот метод осуществляет рендеринг со скоростью, близкой к световой...

Из этой главы вы узнаете:

 

§ Что такое трехмерное пространство

§ Как изображаются точки, многоугольники и объекты в трехмерном пространстве;

§ Масштабирование, трансляция и повороты в трехмерном пространстве;

§ Проекции;

§ Геометрическое моделирование;

§ Алгоритм удаления невидимой поверхности;

§ Алгоритм художника;

§ Алгоритм, использующий Z-буфер;

§ Что такое текстуры;

§ Метод трассировки лучей;

§ Алгоритм отсечения лучей;

§ Реализация алгоритма отсечения лучей;

§ Усовершенствование алгоритма отсечения лучей;

§ Освещение, затемнение и цветовая палитра.

§

Мы начнем наш урок с основных концепций трехмерного пространства, чтобы кое-что вспомнить и понять. Затем мы бросимся вперед, чтобы узнать как создаются игры типа Wolfenstein, DOOM и Terminator Rampage!

Что такое трехмерное пространство

Трехмерное пространство... Звучит как строка из фантастического рассказа... Ну очень похоже. Трехмерное пространство - это просто расширение двухмерной плоскости. Надо сразу отметить, что рендеринг трехмерной графики весьма сложен. Вообще же, сложность рендеринга экспоненциально возрастает с добавлением новых измерений и происходит это оттого, что и сами образы при этом усложняются. Наша задача заключается в том, чтобы понять, как работать с новым измерением. Мы должны все это изучить.

Говоря языком математики, любая точка в трехмерном пространстве описывается с помощью уникального набора трех координат: х, у и z. Как мы уже обсуждали ранее, обычно экран представляется плоскостью Х и Y, а координата z перпендикулярна экрану.

В отличие от плоскости, где х-координата горизонтальна, а у-координата вертикальна, трехмерные системы координат бывают двух типов:

§ Левосторонняя система координат;

§ Правосторонняя система координат.

На рисунке 6.1 показано представление обоих способов отображения трехмерных систем.

В дальнейшем для всех наших рассуждений, примеров и программ мы будем использовать только правостороннюю' систему координат. На то есть две причины:

§ Правосторонняя система удобней в работе, поскольку в ней проще выполняется визуализация;

§ Правосторонняя система распространена как стандарт.

Конечно, вы можете сказать, что экран компьютера — это плоскость, и мы не можем преобразовывать трехмерные образы в двух измерениях. Верно. Вы абсолютно правы. Но у нас есть возможность отобразить их на плоскость. Мы даже можем видеть «тени» объектов. И сделать это позволит проекция. При этом модель выглядит на двухмерном экране так, что у зрителей возникает полное ощущение объемности. Такие игры как DOOM и Wolfenstein трехмерны только в нашем восприятии. Можно сказать, что в них смоделирован особый случай трехмерного пространства, образы которого можно обрабатывать гораздо проще и быстрее.

В любом случае, мы еще к этому вернемся, а теперь давайте поговорим об основных понятиях трехмерного пространства.

Точки, линии, многоугольники и объекты в трехмерном пространстве

Как мы уже видели, точка в трехмерном пространстве имеет три координаты (x,y,z). Этой информации достаточно, чтобы ее однозначно определить в пространстве.Будет логично, если следующим объектом, который мы определим, станет линия. Линией называют отрезок, соединяющий две точки в трехмерном пространстве. Мы можем даже написать структуры данных, определяющие точку и линию.


Дата добавления: 2015-07-12; просмотров: 191 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Листинг 5.16. Tombstone (TOMB.С).| Листинг 6.1. Определение точки и линии в трехмерном пространстве.

mybiblioteka.su - 2015-2024 год. (0.008 сек.)