На кого рассчитана эта книга В первую очередь я адресую эту книгу студентам старших курсов и аспирантам первого года обучения, специализирующимся в области информатики и вычислительной техники, а также студентам других специальностей, имеющим достаточный опыт программирования. Книга будет полезна и многим профессионалам. Я провел около сотни краткосрочных курсов по компьютерной графике для профессионалов, и опыт преподавания для такой аудитории оказал немалое влияние на отбор материала для этой книги.
Необходимым условием для успешного усвоения материала книги является достаточно глубокие знания языка программирования С, знакомство с основными идеями объектно-ориентированного программирования и хотя бы начальные познания в области линейной алгебры и тригонометрии. Я полагаю, что математическая подготовка студентов и аспирантов, специализирующихся в области информатики и вычислительной техники, играет очень важную роль в изучении большинства дисциплин. Поэтому я постарался включить в материал книги те разделы линейной алгебры и геометрии, которые необходимы для понимания основ компьютерной графики. Этот материал я выделил в два отдельных приложения.
Структура книги Предлагаемая вашему вниманию книга состоит из 12 глав. В главе 1 представлен обзор методов формирования изображений оптическими приборами, где читатель сразу же познакомится с основными концепциями создания изображений трехмерных объектов. В главе 2 читатель знакомится с методикой программирования с использованием OpenGL. Хотя первая программа, рассматриваемая в этой главе (а в каждой главе рассматривается одна или несколько законченных программ), имеет дело с двухмерными объектами, они "встраиваются" в трехмерную среду. В главе 3 обсуждаются современные тенденции создания интерактивных графических систем типа "клиент/сервер" и методика разработки графических программ, управляемых событиями. В главах 4 и 5 основное внимание уделено концепциям формироваПредисловие ния изображений трехмерных объектов и сцен; в главе 4 речь идет о математическом аппарате описания трехмерных объектов, а в главе 5 рассматриваются методы их отображения. В главе 6 представлен вводный материал о взаимодействии освещения и материалов и о методах закрашивания освещенных поверхностей. Материал первых шести глав следует изучать в той последовательности, в которой он изложен в данной книге. Это должно занять примерно 10 недель при 15-недельном семестре.