Главная страница
Навигация по странице:

  • Задание 3. Текстурирование объектов

  • Номер варианта Тема текстуры для фона Текстура для объектов

  • СПИСОК ЛИТЕРАТУРЫ

  • Геом моделирование 2D объектов бис бис (1). У геометрическое моделирование и отображение двухмерных объектов средствами открытой графической библиотеки


    Скачать 0.74 Mb.
    НазваниеУ геометрическое моделирование и отображение двухмерных объектов средствами открытой графической библиотеки
    Дата25.06.2020
    Размер0.74 Mb.
    Формат файлаdocx
    Имя файлаГеом моделирование 2D объектов бис бис (1).docx
    ТипУчебное пособие
    #132663
    страница4 из 4
    1   2   3   4


    Программа выполнения задания

    1. Число объектов в сцене – не менее трех. В качестве объектов сцены использовать геометрические фигуры из задания 1, которые для получения требуемого числа объектов рисуются несколько раз. Применить дисплейные списки. Спроектировать сцену, выбрав необходимые команды и их параметры. Разработать последовательность геометрических преобразований, необходимых для поворота на заданный угол а) всей сцены, б) каждого объекта сцены в отдельности. Пояснить различие. Выбрать цвета фона и фигур.

    2. В программу-заготовку ввести команды сдвига и поворота системы координат. Чтобы упростить размещение объектов в сцене, использовать стек модельно-видовых матриц. Размеры фигур, при необходимости, изменить командой масштабирования. Получить изображение сцены. Надлежащим выбором параметров команд сдвига добиться размещения объектов сцены в соответствии с заданием.

    3. Задать такие параметры команд glTranslate, glRotate, чтобы графические объекты сцены частично перекрывались. Проанализировать вид сцены с включенным и выключенным буфером глубины.


    Задание 3. Текстурирование объектов

    Цель выполнения задания: повышение реалистичности отображения объектов за счет наложения на их поверхность характерного узора – текстуры; изучение средств текстурирования.

    Изучаемые команды

    Команды подготовки текстур: glEnable(GL_TEXTURE_2D), glBindTexture, glTexImage2D, auxDIBImageLoad.

    Команды наложения текстуры: glTexParameter, glTexCoord.

    Задания на текстурирование предусматривают применение в сцене двух текстур: для фоновой заставки и для геометрических объектов. Текстура заставки накладывается на отдельный четырехугольный примитив и имеет тему – лесную, морскую и т.д. Фон, элементы и детальность текстуры определяются студентами самостоятельно, но исходя из темы. Фоновая текстура выполняется инструментами графического редактора и дополняется фамилиями исполнителей. Текстура для объектов сцены имеет геометрический рисунок, выполняемый инструментами растрового графического редактора. Цветовые решения текстур определяются студентами.

    Варианты задания на текстурирование приведены в таблице Б2.3.

    Таблица Б2.3

    Номер варианта

    Тема текстуры для фона

    Текстура для объектов

    1

    Осенняя

    Поле с треугольниками

    2

    Космическая

    Поле с ломаной линией

    3

    Зимняя

    Поле с разноцветными эллипсами

    4

    «Техническая»

    Концентрические пятиугольники

    5

    Праздничная

    «Пляшущие человечки»

    6

    Медицинская

    Поле с разноцветными трапециями

    7

    «Вулканическая»

    Знаки зодиака

    8

    Транспортная

    Разноцветные синусоиды

    9

    Компьютерная

    Параллельные полосы разной ширины и цвета

    10

    Музыкальная

    Разноцветные треугольные флажки

    11

    Библиотечная

    Треугольник, вписанный в окружность

    12

    Военная

    Векторы, выходящие из одной точки («пауки»)


    Программа выполнения задания

    1. Спроектировать сцену, используя объекты задания 2 и добавив общую заставку. Изготовить текстуры средствами растрового графического редактора. Размеры текстур выбрать кратными степени числа 2. Текстуры сохранить в формате bmp.

    2. В программу-заготовку ввести команды подготовки и наложения текстур на объекты сцены. В программах на C-подобных языках использовать команды расширения GLAUX, в программах на Delphi (ObjectPascal) – свободно распространяемый модуль ВМР.pas.

    Для использования модуля ВМР его необходимо присоединить к программе в разделе uses. Загрузка текстуры осуществляется с помощью вызова процедуры

    LoadTexture (‘<имя>.bmp’, TexName); ,

    где <имя> – имя bmp-файла текстуры, а TexName (типа GLuint) – имя текстурного объекта. Нужно обратить внимание на то, что имя и расширение текстурного файла заключаются в апострофы. После загрузки наложение текстуры на графический объект выполняется обычным образом (glTexCoord).

    3. Для лучшего восприятия текстурированных объектов их цвет перед наложением текстур нужно сделать белым (задать единичные значения R-G-B-компонентам в команде glColor).

    4. Получить изображение сцены с текстурированными объектами.

    5. Изменить расположение текстуры на примитиве, повернув ее на заданный угол.

    СПИСОК ЛИТЕРАТУРЫ


    1. Эйнджел Э. Интерактивная компьютерная графика. Вводный курс на базе OpenGL, 2-е издание: Пер. с англ. – М.: Издательский дом «Вильямс», 2001. – 590 с.

    2. Краснов М.В.Open GL в проектах Delphi. – СПб.: BHV-Санкт-Петербург, 2002. – 352 с.

    3. Херн Д., Бейкер М.П. Компьютерная графика и стандарт OpenGL, 3-е издание: Пер. с англ. – М.: Издательский дом «Вильямс», 2005. – 1168 с.

    4. Ву М., Девис Т., Нейдер Дж., Шрайнер Д. OpenGL. Руководство по программированию. Библиотека программиста. 4-е издание. – СПб.: Питер, 2006. – 624 с.

    5. Баяковский Ю.М., Игнатенко А.В. Начальный курс OpenGL. – М.: «Планета знаний», 2007. – 221 с.

    6. Сайт «OpenGL. Программирование с использованием OpenGL». – Доступно из URL: http://www.opengl.org.ru/
    1   2   3   4


    написать администратору сайта