Главная » Просмотр файлов » М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006)

М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006) (1124363), страница 9

Файл №1124363 М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006) (М. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006)) 9 страницаМ. Ву, Т. Девис, Дж. Нейдер, Д. Шрайнер - OpenGL. Руководство по программированию (Библиотека программиста) (2006) (1124363) страница 92019-05-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 9)

(.3. Это также пример применения СП)Т для управления устройством ввода и включения и выключения функций задержки. Здесь кнопки мыши включают и выклгочают вращение. Кадр 0 Кадр 1О Кадр 20 Кадр ЗО Кадр 40 рнс. 1.3. Вращение квадрата с использованием двойной буферизации Листинг 1.3. Программа с использованием двойной буферизации: боиЬ(е.с ага(1с Сьг)оа( зр(п = 0.0; чо)б )п)1(чо1б) ( К1С1еагСо1ог(О.В, О.О, 0.0, 0.0); В15пабеМабе1(ЬС РСАТ); чо)б б1зр1ау(чо)б) ( В)С(еаг(ОС СО(ОЯ ВОРРВК В)т); 51Ризпна1г!х(); В(ватаге((зр)п, О.о. О.О, 1.0); Х)Со(ог)(О.О. 1.О, 1.0); 51аес11(-25.0, -25.0, 25.0, 25.0); 51РоРМагг1х(); 51и(5нарви11егз(); чо1б зр)пв!зр1ау(чо~б) [ ар~о = зр~п + 2.0; продолжение р 42 Глава 1 ч Введение в Орели 1.

Листинг 1.3 (лродолжвние) (зр1п > 3 68.8) з р1 и = з р1 и — 3 б О, О; 81иСРОЗСМЕбтвр1ау(); чотб гезоаре(1пт н, 1пС П) ( 8]итеирогС(8, О, (61з(се() н, (61з(се!) П); 81натг!хМобе(61 РМОЗЕСТ!ОМ); 811оаб]бент!ту(); 810гтпо(-58.8, 58.0, -58.0, 50.0, -1.8, 1.8); 81Масг!хнобе (6С МООЕСН1ЕИ); 81Соаб1бепт!Су(); ) чотб моизе(тпс ьиссоп, зпс зсасе, 1пс х, тпс у) ( зн(СсП (Ьиттоп) сазе 6СЬТ СЕЕТ ВОТТОМ: 1! (!тате == ОСОТ ООИМ) 81иС1б1еуипс(зрзпОтзр1ау); Ьгеай; сазе ОСОТ М10ОСЕ ВОТТОМ; 1! (зСаСе == 6001 ООИМ) 81ис1б1ееипс(ЙОЕЕ); ьгеай; бе!аи11: Ьгеах; ] /т Необходим режим двойной буферизации Регистрация функции обратной связи на ввод от мыши к / 1пс шатп(1пт агвс, спаг*" агйч) 81ис1п11(вагйс, агйч); а]ит]птСОтзр]аунобе(600т ОООВСЕ ] 6!От 86В); 81иС1п(СИ(пбон51се(258, 250); 81ис1п1си!пбонРозтс!оп(100, 180); 81иССгеаСеИ(пбон(агйч[8]); 1п1С(); 81иСО!зр1аугипс(бтзр1ау)1 81итйезпареЕипс(гезпаре); 81иСМоизерипс(моизе): 81иСМа1ПСоор(); ге!игл 0; Управление состоянием и рисование геометрических объемов Прочитав эту главу, вы сможете: ° Очистить окно и закрасить его произвольным цветом ° Принудительно ускорить завершение любого незаконченного рисования ° Рисовать с использованием любых графических примитивов— точек, линий и многоугольников в двух- или трехмерном пространстве ° Переключать состояния и запрашивать значения параметров состояния ° Управлять отображением графических примитивов— например, рисовать пунктирные линии или очерченные многоугольники ° Определять векторы нормалей в соответствующих точках поверхностей закрашенных объектов ° Хранить геометрические данные в массивах вершин для уменьшения числа вызовов функций ° Сохранять и восстанавливать несколько параметров состояния одновременно 44 Глава 2 ° Управление состоянием и рисование геометрических объектов Даже самые сложные и интересные изображения, нарисованные в ОрепСЕ, состоят из небольшого числа простых графических элементов.

Это не является неожиданностью — посмотрите, какие совершенные картины создал Леонардо да Винчи только с помощью карандашей и кисти. На самом высоком уровне абстракции существует только три основных операции рисования: очистка окна, рисование геометрических объектов и рисование растровых объектов. Растровые объекты: двухмерные изображения, битовые образы и символы шрифтов — рассматриваются в главе 8. В этой главе вы узнаете, как очистить экран и нарисовать геометрические объекты: точки, прямые линии и плоские многоугольники. Вы могли подумать: «Подождите минуту. Я видел много компьютерной графики в фильмах и по телевизору, и всегда это были великолепно оттененные кривые линии и поверхности.

Как такое получается, если ОрепС1 способен рисовать только прямые линии и плоские многоугольники?» На цветном рисунке 6 есть круглый стол, а объекты на столе состоят из кривых поверхностей. Все кривые линии и поверхности, которые вы видите, получены с помощью большого числа небольших плоских многоугольников и прямых линий, почти так же, как поверхность глобуса можно представить совокупностью огромного числа прямоугольных блоков. Она не кажется гладкой тогда, когда блоки относительно велики в сравнении с глобусом, но с увеличением числа блоков ее качество улучшается. Позже в этой главе мы покажем, как образовывать кривые линии и поверхности из большого набора маленьких графических примитивов.

Эта глава состоит из следующих основных разделов: ° Основы рисования. Показывает, как очистить окно и принудительно ускорить рисование. Также дает основную информацию об управлении цветами геометрических объектов и описание системы координат. ° Описание точек, линий и многоугольников. Рассматривает задание графических примитивов и методы их рисования. ° Управление основными состояниями. Показывает, как включать и выключать некоторые состояния (режимы) и опрашивать параметры состояний.

«Отображение точек, линий и многоугольников. Рассматривает методы управления примитивами, например определение размера точки, типа линии, закраски многоугольника. ° Векторы нормали. Обсуждает методику задания векторов нормалей для геометрических объектов и кратко описывает, для чего нормали нужны. ° Массивы вершин. Показывает, как размещать большой набор геометрических данных всего лишь в нескольких массивах и как с помощью всего лишь нескольких вызовов функций формировать изображение описываемого объекта.

Сокращение числа вызовов функций может увеличить производительность отрисовки. ° Группы атрибутов. Показывает, как запрашивать текущие значения параметров состояний и как сохранять и восстанавливать одновременно несколько связанных параметров состояний. Основы рисования 45 ° Несколько советов по построению полигональиых моделей поверхностей.

Раскрывает технические тонкости, связанные с кусочно-линейной аппроксимацией поверхностей. Читая эту главу дальше, вы должны всегда помнить, что в Орепо), если не указан иной порядок действий, при вызове команды рисования рисунок изменяется всегда. Это может показатъся очевидныль однако в некоторых системах сначала оформляется список объектов и действий для рисования. Когда данный список подготовлен, аппаратуре дастся команда на рисование элементов списка. Первый вариант называется непосредсэгеенныи графическим реясииом (грифическим режимом с прямым доступом) и принят по умолчанию в ОрепСЕ.

Кроме режима с прямым доступом, вы можете сохранить некоторые команды в список (называемый списком отображения) для последующего рисования. Режим прямого доступа обычно легче для разработки программ, но списки отображения в большинстве более эффективны. Возможно, вам захочется их использовать. тогда читайте внимательно главу 7, В ОрепСЕ версии 1.1 были введены массивы вершин. В ОрепС1 версии 1.2 было добавлено масштабирование нормалей к поверхностям (Ее ке5САее моямАе), кроме того, для функции а\огэикапаее1епепгэО была добавлена поддержка массивов вершин. В ОрепСЕ версии 1.3 в ядре появилась базовая поддержка координат текстур для набора текстур. До этого мультитекстурирование было дополнительным рашпирением ОрепС1..

В ОрепСЕ версии 1.4 стало возможным хранение координат тумана и дополнительных цветов в массиве вершин, а также рисование примитивов по массиву вершин функциями к1ии1110ганАггауэ О и к1ни1110гане1евептэ О. Основы рисования В этом разделе рассматриваются методы очистки окна при подготовке к рисованию, установки цвета обьектов, которые необходимо нарисовать, и принудительного ускорения рисования. Напрямую ни один из этих методов пе изменяет геометрические объекты, но любая программа рисования геометрических объектов связана с ними. Очистка окна Рисование на экране компьютера отличается от рисования на бумаге тем, что бумага изначально белая и мы можем сразу ее использовать для дела.

На компьютере память, хранящая изображение, обычно заполнена последним нарисованным изображениель поэтому, как правило, нужно перед началом рисования очистить ее фоновым цветом. Фоновый цвет определяется программно. Для текстового процессора это, скорее всего, будет белый цвет (цвет бумаги), на котором уже будет отображен текст. Если рисуется вид из космического корабля, перед 46 Глава 2 ° Управление состоянием и рисование геометрических обьектов рисованием звезд, планет и чужих кораблей экран нужно очистить черным цветом.

Иногда очистка совсем не нужна, например, если ато изображение внутренней части комнаты и все графическое окно занима(от стены. Если рассматривать вопрос только с этой точки зрения, вы можете спросить, почему мы говорим об очистке экрана вместо того, чтобь( просто не нарисовать прямоугольник требуемого цвета размером с окно? Во-первых, специальная команда очистки окна может быть более эффективна, чем обычная команда рисования. Кроме того, как вы увиди~е из главы 3, Орепб).

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6358
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее