| ПРИМЕР |
Рассмотрим следующую задачу - построить изображение кубика, движущегося по некоторой траектории в пространстве и отбрасывающего тень на заданную плоскость. На примере этой задачи, несмотря на кажущуюся простоту, можно отследить основные моменты, возникающие в задачах построения динамического изображения.
Первое, что нам понадобится - это библиотека для работы с векторами и матрицами в трехмерном пространстве. Ее можно довольно легко построить, используя перегрузку операторов в языке С++. Все исходные файлы, приведенные в этом разделе, можно скачать.
Другим важным объектом является сам кубик. Его можно представить как набор вершин, их соединяющих ребер и граней. Наиболее трудоемкой операцией при работе с кубиком является правильная инициализация всех его структур.
Мы начнем с простейшей реализации кубика. По мере работы мы будем добавлять этому объекту новые методы. За шесть шагов мы перейдем от неподвижной проволочной модели кубика к динамическому изображению с удалением невидимых граней, расчетом освещения и отбрасыванием тени на горизонтальную поверхность.
|
Hosted by Graphics & Media Lab.
http://graphics.cs.msu.su |
|
mailto:Laboratory Last modified: 24-Aug-2001 |