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

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

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

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

11'тп", зоовйас(ог); ьгеах; сазе 'Х': хооврас1ог -= 0.5; ! 1 (хоовйастог <= 0.5) хоовуасСог = 0.5; рг1птт("текущее значение масштабного коэффициента %4. 1('тп", хоовуасгог); Ьгеах; сазе 27: ех1С(0); Ьгеах; бе!ам(С: Ьгеах; ) ) Чтение и рисование прямоугольных областей Этот раздел подробно описывает процесс чтения и отображения прямоугольных областей пикселов. Преобразование при чтении из буфера кадров в память похо. же на преобразование в обратном направлении — рисование, но не идентично ему. Материал этого раздела не обязателен при первом чтении, особенно если вн не планируете сразу начать выполнять подобные преобразования.

Процесс вывода пиксельного прямоугольника Следующий список и рпс. 8.12 описывают операции отображения пикселов в буфер кадров. 1. Если пикселы представлены не индексами (то есть их формат отличен от 61 СОСОК 1ИОЕХ или 6с 5ТЕИС1С 1ИОЕХ), на первом шаге компоненты преобразуются в числа с плавающей запятой. (Подробности преобразования представлены в табл. 4.1.) 2, Если задан формат 6С СОМ!МАИСЕ нли 6с 'сОМ1ИАИСЕ АЕРНА, элемент яркости преобразуется в компоненты К, О и Б с назначением равной доли каждому Чтение и рисование прямоугольных областей 289 компоненту.

Если формат — 6С СОН1МАМСЕ АСРНА, величина альфа-компонента равна значению А, которое, если указан параметр 6С СОН1НАИСЕ, устанавливается в 1.0. Рис. 8.12. Рисование пиксепов с помощью фогааР!хек() 3. Каждый компонент (К, С, В, А или глубина) умножается на соответствующий размерный козффициент, с добавлением смешения (Ь(аз).

Например, компонент К умножается на величину 6С РЕО 5САСЕ и после к нему добавляется значение 6 С Р Е Р В 1 А 5. Е Если параметр 6с НАР сосок установлен в таце, каждый из К-, О-, В- и А- компонентов, ограниченный диапазоном [0.0, 1.0), умножается на целое число, меньшее на единицу размера таблицы, обрезается и ищется в таблице подставовки.

(См. раздел «Советы по увеличению быстродействия вывода пикселов».) 5. Затем К-, С-, В- и А-компоненты ограничиваются диапазоном [0.0, 1.0[, если зто еще не сделано, и преобразуются в число с десятичной точкой с таким количеством битов левее точки, сколько нужно для помещения в буфер кадров. 5. Если вы работаете с индексами (цвета или трафарета), сначала значения пре- образуются в числа с десятичной точкой (если они исходно представлены 290 Глава 8 ° Вывод пикселов, битовых образов, шрифтов и изображений в формате с плавающей запятой), с некоторым количеством неопределенных битов справа от точки.

Для индексов, изначально представленных десятичными числами, любые биты справа от десятичной точки сбрасываются в нуль. Результирующее значение индекса сдвигается вправо пли влево в соответствии с абсолютным значением параметра 6С 1МОЕХ 5Н1ГТ; значение сдвигается влево, когда 6С 1МОЕХ 5Н1РТ > О, и вправо — в противном случае.

В заключение к индексу добавляется смешение 6ь 1мрех ОРР5ет. 7. Слелующий шаг зависит от используемой модели цвета — КСВА или инлексной. В первом случае индекс цвета преобразуется в КСВА с использованием параметров 6С Р1ХЕС МАР 1 ТО Р, 61 РХХЕС МАР 1 ТО 6, 6С РХХЕС МАР ! ТО В и 6С РХХЕС МАР 1 ТО А(см.

раздел «Табличные преобразования пикселов»). Во втором варианте, если 6С МАР СОСОР определен как 6С ТРОЕ, индекс цвета замещается по таблице подстановки 6С РХХЕС МАР 1 ТО 1. (Если 6С МАР СОСОР— 6С РАС5Е, индекс не изменяется.) Когда изображение представлено индексами трафарета и если 6С МАР 5ТЕМС1 С определен как 6С ТРОЕ, используется таблица подстановки 6С РХХЕС МАР 5 ТО 5. Если 6С МАР 5ТЕМСХС вЂ” РАС5Е, индекс трафарета ие изменяется. 8. Наконец, если индексы еще не конвертированы в КСВА, они маскируются к количеству битов, нужному для буфера индекса цвета нли трафарета. Процесс считывания пиксельного прямоугольника Многие из преобразований, имеюших место во время отображения пиксельного прямоугольника, применяются и в процессе чтения данных из буфера кадров.

Порядок чтения пикселов представлен следующим списком и на рис. 8.13. 1. Если читаемые пикселы не индексированы (то есть их формат отличен от 6Х СОСОР 1МОЕХ или 6С 5ТЕМСХС 1МОЕХ), они попалают в диапазон 10.0, 1.0~ — то есть имеет место противоположная процессу рисования ситуация. 2. Затем каждый компонент масштабируется со смегцением. Если параметр 6О МАР СОСОР равен 6С ТРОЕ, зги компоненты таблично преобразуются и снова сводятся к диапазону ХО.О; 1,0], При преобразовании от КСВ к яркости компоненты К, С и В суммируются (1 = К + С + В). 3. Если пикселы представлены индексами (цвета или трафарета), они сдвигают. ся (зП11теп), смещаются (оЪет) и, если параметр 6С МАР СОСОР установлен в 6С ТРОЕ, таблично преобразуются.

4. Если формат хРанения пикселов — 6С СОСОР 1МОЕХ или 6ь 5ТЕМСХС 1МОЕХ, индексы маскируются к количеству битов, поддерживаемому устройствои хранения (1, 8, 16 или 32), и упаковываются в память, как описано ранее. 5. Если формат хранения — один из компонентных типов (такой как яркость нлз КСВ), пикселы всегда таблично преобразуются по карте «индекс-в-КСВА». Тогда они интерпретируются так же, как если бы были пикселами КСВА и ранее (включая возможное преобразование к яркости).

6. Наконец, результаты предыдущих шагов упаковываются в память согласие режимам 6С РАСК', устанавливаемым РХР1хе15тоге» (). Чтение и рисование прямоугольных областей 291 о Рис. 8.13. чтение пикселов с помощью 9(аеак)Р!хе!з() Х, )и чи 'о- ее ОРИМЕЧАНИЕ Не исключено, что при выполнении чтения и отображения яркость будет вычислена некорректно. Так, вклад в яркость компонентов и, 6 и В в общем случае неодинаковый, что видно из рис.

8.12 и 8.13. При необходимости вычислить значение яркости согласно числам стандарта ЗО (а), 59 (6) и 11 (В) в процентах вы можете, установив параметр 6с аЕО 5САЕЕ в 0,3, 6с КЕО 81А5 — в 0 и т. д. Тогда величина с будет получена по формуле 0,30й + 0,596 + 0,118. но Значения для масштаба (зса)е), отклонения (Ъ|аз), сдвига (зЪЖ) и смещения (о((зе()— и же, что и для отображения пикселов. Поэтому если вы попеременно читаете а отображаете пикселы, не забывайте настраивать их под чтение и рисование. Ьалогично, предварительно должны быть инициализированы различные карты.

292 Глава 8 ° Вывод пикселов, битовых образов, шрифтов и иэображений Советы по увеличению быстродействия вывода пикселов Как вы могли увидеть, в ОрепСЕ имеется богатый набор возможностей для чтения, рисования пикселов и других манипуляций с ними. Хотя эти возможности часто очень полезны, они могут также отрицательно повлиять на производительность. Поэтому мы хотим дать несколько рекомендаций с целью предупредить такие явления илн просто для улучшения эффективности: ° Чтобы добиться максимальной скорости, установите все параметры передачи пикселов в значения по умолчанию, а масштабные коэффициенты — в (1.0, 1.0). ° При записи пикселов в буфер кадров к ним применяются операции над фрагментами.

(См. раздел «Тесты и операции над фрагментами» главы 10.) Для оптимальной производительности следует отключить эти операции. ° Отключите другие ресурсоемкие действия, такие как текстурирование и освешенне. ° Если вы воспользуетесь совместимым с буфером кадров форматом изображения, вы снимете с ОрепСЕ дополнительную нагрузку. Например, если вы записываете изображения в КСВ-буфер с 8-битовыми компонентами, установите при вызове я10ганР1хе1з О аргумент уогглаГ в значение КСВ и аргумент Гпре — в ОМ516МЕО ВУТЕ. ° В некоторых реализациях ОрепСЕ беззнаковые форматы изображений быстрее знаковых форматов.

я Обычно быстрее рисуется один большой прямоугольник, чем несколько маленьких, поскольку издержки на передачу пикселов сглаживаются на фоне их количества. ° По возможности уменьшайте обьем данных для копирования за счет менее емких типов (например, используйте 6Е ОМ516МЕО ВАХТЕ) и меньшего числа компонентов (например, используйте формат 66 ЕОН1МАМСЕ АЕРНА). ° Операции при передаче пикселов, будь то табличное преобразование, масштабирование, отклонение (Ь(аз), смещение (огТзег) илн сдвиг, со значениями ве по умолчанию, могут снизить производительность. Расширение 1тац1пц ЯиЬве1 Расширение!ша81п8 ВпЬзес (буквально — подмножество обработки изображений) — это совокупность программ, обеспечивающих дополнительные возможности процесса обработки изображений. С его помощью вы можете: ° использовать таблицы подстановки цветов для замешения значений пикселов; ° использовать свертки для фильтрации изображения; ° использовать матрицу преобразований цвета для преобразования цветового пространства и других линейных преобразований; Расширение 1гпарпд 50Ьзег 293 ° собирать статистику для гистограмм и получать информацию о минимальном в максимальном значениях компонента пвета.

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

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

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