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

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

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

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

Значение глубины вычисляется в оконных координатах и ограничивается диапазоном 10, 11. Оценка максимального углового коэффициента (т в уравнении смещения) выполняется по формуле т= п1ах —,— Полнгон с оленью наклона» О Рис. 6.5. Многоугольники н нк угловые коэффнцненты глубины Для многоугольников, параллельных ближней и дальней плоскостям отсечения, угловой коэффициент равен нулю.

Для многоугольников с наклоном, близким Отклонение многоугольников по глубине 237 к нулю, требуется небольшое константное значение смещения. Чтобы его полу'цпъ, вызовите функцию к1РО1у копОГ тает () со значениями уас(ог = 0 0 и ил(уз - 1 О. Для многоугольников, образуюших болъший угол с плоскостями отсечения, угвовой коэффициент значительно больше нуля и, соответственно, требуется большее смещение.

Небольшого, ненулевого, значения параметра 7астог, такого как 0,75 или 1,0, достаточно для получения значений глубины и устранения нежелаильных артефактов. В листинге 6.11 представлена часть кода, который с помошью списка отображекня (предположим, рисующего закрашенный объект) рисует объект с освещением, в режиме 6 С Е1 С С. Для смещения многоугольника параметры (астог и итуз заАаются равными 1.0 н 1.0. Эти значения гарантируют, что смещение будет цостаточным для всех многоугольников в сцене независимо от наклона. Затем, с целью выделения пветом границ первого объекта, объект рисуется как каркас с отключенным смещением.

Листинг 6.11. Отклонение многоугольника для устранения артефактов: ро(уоРЕ.С 1цпаша(61 116НТ>М6>; 11(паь>е(6С С16НТВ); 11Епаше(6( РОСУООМ ОЕЕ5ЕТ Е1СС); 11Ро(укопоугае((1.0, 1.0); 11(аис(а((11»1>; 110(пап(е(6С РОСТООМ ОЕЕ5ЕТ ЕХСС); 1пиааюе(61 С16НТ>М6>; 1Ш(ааые(61 116НТЕ>; 11(о>огЗГ(1 Е, 1.0, 1.0); 11Р»1укопиоее(61 ЕКОМТ АМО 8АСК, ОС С1МЕ); 1>С»11С1»1(11»1); 1!Р»1уаопионе(61 ЕМОМТ АмО 8АСК, 61 Е(сс); В некоторых случаях «легкие в расчете» значения параметров (асуог и итсу (1.0 к 1.0) — не выход. Например, если толщина линий, выделяющих границы, больше 1, может потребоваться увеличить значение(ас(ог.

Также, если значения глубнны неравномерно преобразованы в оконные координаты в процессе перспекгнвного проецирования (см, раздел «Измененная координата глубины» главы 3), меньшее смещение нужно для многоугольников, близких к ближней плоскости отсечения, а большее — для удаленных многоугольников. Опять же, эксперименты со значением параметра могут быть оправданы. Списки отображения Из этой главы вы узнаете: ° Что такое списки отображения и как использовать их в сочетании с командами непосредственного режима с целью наиболее эффективной организации и данных и улучшенной производительности ° Как извлечь максимальную эффективность из списков отображения, применяя их в нужное время и в надлежащих местах Для чего нужны списки отображения 239 Слисок отображения (Сйзр1ау 11зг) — иначе список команд или список вывода— зто группа команд ОрепОГ., сохраненных для последующего выполнения.

Когда список отображения вызывается на выполнение, команды обрабатываются в по(илке их появления в списке. Большинство команд ОрепС(. может сохраняться в списке или обрабатываться в режиме непосредственного выполнения, для краткости палее именуемом непоСредствеяяым (1птшео1ате) режимом, то есть незамедлительно. Вы можете свободно смешивать непосредственный режим и списки мобрзжения в рамках одной программы. В примерах, приводимых ранее, до сих пор использовался непосредственный режим. В атой главе обсуждается, что таксе списки отображения и каким образом их лучше использовать.

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

Говорит о возможностях (таких как присвоение им статуса нередактируемых), позволяющих добиться максимальной эффективности списков отображения. ° Создание и выполнение списка отображения. Содержит подробные описания команд для создания, обработки и удаления списков отображения. ° Выполнение составных списков отображения. Показывает, как обработать последовательность из нескольких списков, здесь используется небольшой набор символов в качестве примера. ° Управление параметрами состояния с помощью списков отображения. Иллюстрирует использование списков отображения для сохранения состояния и его восстановления с помощью команд Ореп61.. Для чего нужны списки отображения Списки отображения позволяют улучшить производительность за счет использомния запомненных для последующего выполнения команд Орепб)., Максимум отдачи дает кэширование команд в списке, если вы планируете перерисовывать один и тот же объект несколько раз или вы имеете набор изменяемых состояний, которые нужно воспроизводить многократно.

С помощью списков отображения вы можете определить геометрию и/или изменяемое состояние однажды и повторить их столько раз, сколько нужно. Случай, когда вы используете список отображения для единичного запоминания, проиллюстрируем примером рисования трехколесного велосипеда. Его два задних колеса имеют одинаковый размер, но требуют отдельной прорисовки, так как смещены друг относительно друга.

Переднее колесо больше по диаметру и также находится в индивидуальной позиции. Эффективный способ передать вращение колес заключается в запоминании геометрии одного колеса в спискс отображе- 240 Глава 7 ° Списки отображения ния и последующем трехкратном вызове этого списка. Вам нужно построить соответствуюшую модельно-видовую матрицу перед каждым вызовом списка для вычисления корректных размеров и положения каждого колеса.

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

Некоторые аппаратные графические средства способны сохранять списки отображения в специально выделенной области памяти или запоминать данные в форме, обеспечивающей максимум совместимости с программным обеспечением. (Более подробно вопросы оптимизации обсуждаются в разделе «Философия проектирования списков отображения».) Пример списка отображения Список отображения — это удобный и эффективный способ именования и организации набора команд Орепб(.. Например, лопустим, что вы хотите нарисовать тор и просмотреть его с различных углов зрения. Лучший способ сделать это— сохранить тор в списке отображения.

Тогда всякий раз при изменении представления вам нужно будет изменить модельно-видовую матрицу и выполнить список отображения, рисующий тор. Листинг 7.1 иллюстрирует сказанное. Листинг 7.1. Создание списка отображения: (огиз.с Г<(и1пс спеТогив; /' Рисование тора */ в(вС1с чо1О сотов(тпС пиес, !пС пиеС) ( 1пС1, ), Ооиь1е и, С, х, у, с, Снор1; сноп! (! = О; 1 < пиес; !++) ( В)аез1п(6( ()иА0 "»Та1Р); сог () = о; ) <= пиес; )++) ( Гог (К = 1; К = Е; К--) ( — (1 + К) % пиес + 0.5; с = 1 % пиес; х = (1+. 1'сов(в'(нор!/пиес))<сов(С'(норт/пиаС); у = (1». 1'сов(в'(норт/пиес))'втп((*сноп!/пиес); с = .1 5!П(5<(норт/пиес); Пример списка отображения 241 91Чег(ех3((х, у, з); 81Епб(); ) ) /' Создание списка отображения с тором и инициализация */ 5!атчс чотб !от((чо!ч!) ( (яетогцз = 916«п(!зсз(1); 31ИЕНС!Зт(СПЕТОГОЗ.

6( СОМР1СЕ); тогоз(В, 25): 31Епб3.!«С(); 813пабенобе1(6( РСАТ); 3161еагсо1ог(0.9, 6.0, 0.9, 8.0); ) ча!б б!зр1ду(чо!б) ( 3161еаг(61 СО(08 ВЧРРЕК В1Т); 31601огзт(1.6, 1.0. 1.9): 31Са11(!зт(слетогоз); 31Р1цзп(); ) ча(б ге»паре(!пт н, !пс Ь) ( 81Ч!енрогт(8, 9, (6сз!зе!) н, (6сз!зе!) Ь); 3)Масс!якобе(61 РПО)ЕСТХОИ); 31(оаб1бепт!Су(); 31ЬРегярест!«е(38, (6с(1оат) н/(61(1оас) и, 1.0, 100.9); В)Магг!хиобе(6( ИООЕСЧХЕИ); 31соаб1бепс!ту(); П)осоохяс(9, О.

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

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

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