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

  • 1. Общее представление о трехмерной графике.

  • История 3Д графики

  • Айвен Эдвард Сазерленд Джим Блинн

  • 2. Основные понятия 3Д графики

  • Коррекция перспективы

  • Мипмэппинг (MIP-mapping)

  • Билинейная фильтрация

  • Трилинейная фильтрация (tri-linear filtering)

  • Антиалиасинг (Anti-Aliasing)

  • Затуманивание (Fogging)

  • Альфа -смешение (Alpha Blending)

  • Наложение рельефа (bump-mapping)

  • Геометрический процессор

  • Сравнение OpenGL и Direct 3D

  • 3D моделирование. Тема 14


    Скачать 3.99 Mb.
    НазваниеТема 14
    Дата23.01.2023
    Размер3.99 Mb.
    Формат файлаpdf
    Имя файла3D моделирование.pdf
    ТипДокументы
    #900017
    страница1 из 14
      1   2   3   4   5   6   7   8   9   ...   14

    6
    17. Тема 14.
    Визуализация
    готовой сцены
    1.
    Настройки визуализации в 3ds Max
    2.
    Просчет сцены.
    3.
    Визуализация эффектов
    4.
    Использование дополнительных визуализаторов
    5.
    Фильтры постобработки
    2
    ИТОГО
    :
    30
    Тема
    1. Основные понятия трехмерной графики.

    7 6.
    Общее представление о трехмерной графике.
    7.
    Основные понятия 3Д графики.
    8.
    Переход от двумерной графики к трехмерной.
    9.
    Области использования трехмерной графики.
    10.
    Программные средства обработки трехмерной графики.
    1. Общее представление о трехмерной графике.
    Что такое трехмерная графика? Определений этого понятия существует достаточно много. Трёхмерная графика — раздел компьютерной графики, охватывающий алгоритмы и программное обеспечение для оперирования объектами в трёхмерном пространстве, а также результат работы таких программ. Слишком формально? Хорошо, предложим другое определение: «3D графика предназначена для имитации фотографирования или видеосъемки трехмерных образов объектов, предварительно подготовленных в памяти компьютера». Сейчас мы проведём небольшой экскурс в историю 3D графики и расскажем о наиболее выдающихся личностях и технологических решениях, заложивших фундамент современной 3D индустрии. {появляется сначала плоскость, которая потом вытягивается в кубик, всё вращается и светится счастьем, все довольны, громкие и продолжительные аплодисменты, вокруг кубика летают буквы 3D}
    История
    3Д графики
    Одним из отцов компьютерной графики специалисты называют Айвен
    Эдвард Сазерленд, который, будучи аспирантом, в 1962 году написал программу Sketchpad, позволявшую создавать простые трехмерные объекты.
    После защиты диссертации на тему «Наука компьютерной графики» Сазерленд и доктор Дэвид Эванс (David Evans) открывают в университете города Юты первую кафедру компьютерной графики.
    Айвен Эдвард Сазерленд Джим Блинн
    Среди студентов кафедры оказался и Эд Катмулл (Еd Catmull), ныне технический директор корпорации Pixar. Именно Эд Катмул впервые смоделировал объект. В качестве предмета для моделирования выступила кисть его собственной руки. Между прочим, Джим Блинн (Jim Blinn), создатель bump mapping (техника симуляции неровностей) и environment mapping, первых компьютерных анимаций для NASA и, конечно же, знаменитого материала

    8 blinn, являлся студентом Айвена Сазерленда. Сумасшедшая концентрация интеллектуальной энергии в районе университета Юты, по-видимому, никому не давала спать спокойно и просто-таки заставляла людей безудержно мыслить и творить. Например, техника Phong shading была разработана вьетнамским тридэшником Би Тюн Фонгом (Bui Tuong Phong), который также являлся студентом кафедры компьютерной графики в Юте. А принцип Gouraud shading родился в голове французского ученого Анри Гюра (Henri Gouraud), работавшего там преподавателем. {фрагменты пиксаровских мультиков: Toy
    Story, про птичег, The Cars}
    Поговорим теперь о системах моделирования – то, с чего начиналась разработка нынешних 3Д-пакетов. Во-первых, стоит отметить систему моделирования, разработанную компанией MAGI. Она являлась процедурной – модели создавались путем комбинирования 25 геометрических фигур, имевшихся в библиотеке программы. Из простейших фигур, вроде пирамиды, сферы и цилиндра создавались более сложные, которые впоследствии становились основой для конечной 3D-модели. Программа Synthavision разрабатывалась в течение пяти лет и была использована при создании знаменитого киношедевра «Трон» (1982).
    Во-вторых, следует рассказать о компании Triple–I, которая также внесла огромный вклад в развитие 3D технологий. Компания была открыта в 1962 году и изначально специализировалась на производстве оборудования для сканирования видеоматериала. В 1975 году руководство компании открывает отделение компьютерной графики и анимации. В отличие от компании MAGI, использовавшей геометрические фигуры, Triple-I задействовала в качестве простейших единиц треугольники и квадраты. Такой метод моделирования получил название «полигонального». Компания Triple-I также принимала участие в работе над фильмом «Трон».
    Очень интересным и мощным коммерческим программным решением следует признать PowerAnimator от Alias. Именно PowerAnimator является одним из предков Maya, программы, с которой знаком, хотя бы по названию, любой современный тридэшник. PowerAnimator представлял собою дорогостоящий программный комплекс, работавший на графических станциях
    SGI под операционной системой Irix (Unix-оподобной ОС для графической обработки). PowerAnimator впервые был масштабно использован в фильме
    «Бездна» Джеймса Кэмерона, который получил оскар за визуальные эффекты в
    1990 году, а также множество других наград. Явление народу программы Maya версии 1.0 произошло в феврале 1998 года. Maya 1.0 соединила в себе достоинства трех следующих программных пакетов: The Advanced Visualizer
    (визуализация), Thomson Digital Image (моделирование) и Power Animator
    (анимация).
    Программа 3D Studio компании Autodesk в версии для операционной системы DOS начала разрабатываться в 1993 году. А время всеми известного
    3Ds MAX наступит лишь через три с лишним года. Приставка MAX в названии означала максимальное расшириние возможностей пакета, освобождение от досовских ограничений, а самое главное наличие полноценного 32-разрядного

    9 интерфейса.
    Кроме Maya и 3Ds MAX устойчивыми лидерами в области являются
    Lightwave, XSI и Houdini. Тем не менее, уверенно набирают популярность и открытые продукты, распространяемые бесплатно, например, полнофункциональный пакет Blender3D и Wings3D или прекрасный визуализатор POV-Ray, который вырос из небольшой программы, написанной для компьютера Amiga в 1986 году на языке С.

    10
    2. Основные понятия 3Д графики
    В большинстве приложений использующих трехмерную графику 3D- объекты состоят из множества многоугольников размещенных таким образом, что создается реалистичный образ. Сотни или тысячи многоугольников необходимых для единственного 3D- объекта, образуют огромный массив данных, которые надо создать и которыми необходимо управлять.
    Компания
    AMD предложила новую технологию
    3DNow!(TM), используемую в процессоре AMD-K6-2(R). Преимущества новой технологии заключаются в более быстрой смене кадров в графике с высоким разрешением, значительно улучшенным моделированием физических сред, четкое и более детальное формирование трехмерных изображений, лишенным характерных скачков воспроизведением видео и звуком театрального качества. Среди наиболее важных из вышеназванных свойств - значительное улучшение в работе с трехмерной графикой.
    API (Application Programming Interface)
    Комплект программ, которые прикладная программа использует для обращения к задачам исполняемым на уровне операционной системы. Т.е. программы связи аппаратных средств (таких, как, например, видеопроцессор) с приложениями, например, играми. Разработчики игры пишут ее код согласуясь с API, что позволяет ей работать с любыми аппаратными средствами, на любых компьютерах. 3D API позволяет программисту создавать трехмерное программное обеспечение использующее все возможности 3D-ускорителей. 3D
    API делятся на стандартные
    (уни-версальные) и собственные
    (специализированные). Без стандартных API, поддерживающих широкий спектр 3D-ускорителей, разработчиками, пришлось бы портировать игры под множество плат. Наиболее известные стандартные 3D API - OpenGL и Direct3D.
    Собственный (native) 3D API предназначен для одного конкретного семейства
    3D-уcкopитeлeй и ограждает программиста от низкоуровневого программирования. Примеры специализированных 3D API - Glide (от 3Dfx),
    RRedline (от Rendition), PowerSGL (от Videologic). Ис-пользование 3D API предполагает применение драйверов для этого API. На сегодняшний день наличие драйверов Direct3D и OpenGL для Windows 95/ 98 является обязательным требованием ко всем 3D-уcкopитeлям.
    DirectX
    API для Microsoft(R) Windows(R) сфокусированный на разработке мультимедийных приложений. По словам Microsoft, DirectX обеспечивает разработчиков программного обеспечения гибкостью необходимой для работы в Internet и открывает путь к использованию мощнейших возможностей современных персональных компьютеров в работе с мультимедийными приложениями. DirectX 6.0 был оптимизирован для работы с технологией
    3DNow! и стал доступен пользователям в июле 1998 года.

    11
    Direct3D
    Часть DirectX ориентированная на исполнение трехмерной графики. Direct3D предлагается компанией Microsoft как важное дополнение к API для игр и других 3D-приложений. Direct3D, как часть DirectX 6.0, оптимизирован для технологии 3DNow! Direct3D существует только в Windows 95, в скором будущем появится и в Windows NT 5.0. Direct3D име-ет два режима: RM
    (retained mode), или абстрактный и IM (immediate mode), или непосредственный. IМ состоит из тонкого уровня, который общается с аппаратурой и обеспечивает самое высокое быстродействие. Абстрактный режим - высокоуровневый интерфейс, покрывающий множество операций для программиста, включая инициализацию и трансформацию. У обоих режимов есть достоинства и недостатки, большинство Direct3D-игр используют IM.
    OpenGL
    OpenGL - открытый 3D API, созданный компанией SGI и контролируемый ассоциацией OpenGL Architecture Review Board (ARB), в которую входят DEC,
    E&S, IBM, Intel, Intergraph, Microsoft и SGI. OpenGL реализует широкий диапазон функций от вывода точки, линии или полигона до рендеринга кривых поверхностей NURBS, покрытых текстурой. OpenGL долгое время использовался для работы с трехмерной графикой на компьютерах профессионального уровня. Сейчас многие разработчики игр используют этот
    API. OpenGL также оптимизируется для совместной работы с технологией
    3DNow! OpenGL-драйвер может быть реализован в трех вариантах: ICD, MCD и мини-порт. ICD (Installable Client Driver) полностью включает все стадии конвейера OpenGL, что дает максимальное быстродействие, но разработка ICD- драйвера занимает большое количество времени. MCD (Mini Client Driver) разработан для внесения абстракции в конвейер OpenGL, и поэтому написание драйвера менее трудоемко. MCD уступает ICD в быстродействии, плюс к этому
    MCD работает только в Windows NT. Мини-порт - драйвер, предназначенный для одной конкретной игры (или движка), обычно для GLQuake и Quake 2.
    Мини-порт может работать по принципу ICD (Rage Pro), через собственный
    API (Voodoo 2) или через Direct3D (lntel740). В последнем случае он называется враппером.
    VRML
    VRML - язык описания трехмерных миров. Лидером среди разработчиков программного обеспечения для работы с VRML считается Cosmo Software
    (одно из подразделений SGI). Эта компания также активно разрабатывает новые стандарты VRML. Ее программа CosmoPlayer предназначена для просмотра сцен, созданных на VRML. CosmoPlayer поддерживает OpenGL, что при наличии OpenGL-ускорителя дает прирост скорости и повышает качество
    3D.
    AGP (Advanced Graphics Port)

    12
    Новая технология призванная повысить качество воспроизведения мультимедийных программ, скорость их воспроизведения и интерактивные возможности сохранив, однако, невысокую стоимость. Главное свойство AGP - возможность быстрого обращения к оперативной памяти компьютера. Это означает, что фрейм-буфер (более важна функция кэширования фрейм-буфера) может сохраняться в основной памяти, а не в памяти видеокарты, что, кстати, значительно уменьшает стоимость последней. Таким образом, описания трехмерного изображения, подобно картам текстур, могут быть большими, и находится в основной памяти, а не загружать фрейм-буфер. Это обстоятельство способствует уменьшению фрейм-буфера, что тоже немаловажно.
    DiME
    DiME (Direct Memory Execution) - главное преимущество AGP. AGP-платы без
    DiME недалеко ушли от РСI. DiME (или, как его еще называют, AGP- текстурирование) дает возможность 3D-ускорителю брать текстуры напрямую из системной памяти, а не из локальной видеопамяти. DiME - ключ к использованию большого количества больших текстур. DiME превращает системную память в своего рода расширение видеопамяти. 3D-ускоритель с поддержкой DiME уже сейчас без проблем справляются с 16 Мбайт текстур на один кадр.
    16- 24- и 32-битные цвета
    Каждый пиксел окрашен определенным цветом. В 16-битном режиме можно воспроизвести 65,536 цветов, в то время как в 24-битном - 16.7 миллионов цветов. 32-битный режим располагает тем же количеством цветов, что и 24-битовый режим, хотя манипулировать 32-битными изображениями значительно быстрее, чем 24-битными. Однако, 32-битная графика требует почти на 25% больше памяти. Поскольку человеческие глаза не могут увидеть более чем 10 миллионов различных цветов, то считается, что 24- и 32-битовая графика примерно равны по качеству.
    Текстура (Texture) - побитовое отображение поверхностей, отсканированное или нарисованное, что придает поверхности реалистичный вид. Использование текстур гораздо удобнее моделирования поверхности объекта с помощью окрашенных многоугольников.
    Пиксел
    PI(X)cture ELement - минимальный графический элемент, генерируемый видео адаптером, обычно размером с точку. Пикселы могут быть почти любого цвета, в зависимости от способностей адаптера.
    Тексел
    TE(X)ture ELement - минимальный элемент текстуры, обычно относится к треугольнику.

    13
    Текстурирование
    Текстурирование - основной метод моделирования поверхностей наложением на них изображений, называемых текстурой.
    Скорость текстурирования (Fill rate)
    Количественная оценка, показывающая, какое число пикселов графическая плата может обработать за секунду - прорисовать или назначить текстуру.
    Throughput
    Throughput - другая характеристика 3D-чипсета, показы-вающая скорость обработки треугольников 3D-ускоритель. Throughput 1 млн. треугольников/с означает, что 3D- ускоритель может обработать 1 млн. тре-угольников в секунду. Throughput 3D-чипа менее важен, чем fillrate, так как современные микропроцессоры не могут обеспечить такой темп.
    Блиттинг (Blitting)
    Копирование массива данных из основной памяти компьютера в память видеокарты. Скорость этого процесса (Blit Rate) - важная характеристика для оценки видеокарт.
    Сетка (Mesh)
    Термин, применяемый для описания структуры 3D-объекта или изображения. Назван так потому, что имеет сходство со скульптурой сделанной из проволочной сетки.
    Призрак (Sprite)
    Объект (часто буква или курсор) движущийся поверх фоновой картинки.
    Ядро (Engine)
    Часть программного обеспечения предназначенная для управления и обновления трехмерной графики в реальном масштабе времени.
    Многоугольник (Polygon)
    Плоская фигура, ограниченная со всех сторон ломаной линией.
    Треугольники, то есть простые трехсторонние многоугольники формируют основу, каркас объектов в трехмерной среде.
    Дисплейные Режимы
    1. Проволочная скульптура (Wireframe) - Первичный объект, для образования которого применяются линии краев многоугольников, придающие объекту сходство со скульптурой, сделанной из проволочной сетки.
    2. Окрашивание плоскостей (Flat Shaded) - Поверхность многоугольников
    (треугольников) окрашена определенным цветом, однако поверхность объекта все еще выглядит дробной.

    14 3. Плавное окрашивание (Smooth Shaded) - Поверхности образующих объект многоугольников окрашены, а границы между ними сглажены. В настоящее время этот метод стал весьма распространен, так как современные аппаратные средства позволяют им пользоваться, хотя метод требует высокой интенсивности вычислений.
    4. Текстурирование поверхностей (Smooth Textured) - Объект начинает выглядеть волне реалистично. Характер поверхностей отражен максимально точно.
    Метод требует массы усилий процессора и памяти.
    Примечание: рассматривая тот или иной режим необходимо помнить, что более долгий из них тот, что приводит к перерисовке всей сцены или объекта.
    Освещение
    Объемность, реалистичность трехмерных объектов часто достигается за счет игры света и тени, а, следовательно, и от источников света, огней, которые освещают объект. При создании трехмерных образом используются четыре типа источников света:
    Omni lights - общее освещение, подобно лампочке, освещающее предметы со всех направлений.
    Spot lights - точечные источники света, выделяющие только часть объекта.
    Ambient light - отдаленные источники света. Используются для того, чтоб сымитировать далекие источники света, которые подобно луне, заставляют предметы отбрасывать параллельные тени.
    Световое пятно (Specular Highlight) - яркое отражение света от глянцевой поверхности.
    Рендеринг (иначе, растеризация)
    Процесс интерпретации всего объекта и данные о его освещении для создания, затем, завершенной картины в том виде, в каком она должна выглядеть на перспективе с выбранной точки зрения. Однако рендерить можно по-разному - можно хорошо, можно плохо, можно правильно и неправильно.
    Качеству рендеринга, то есть тому, насколько правильным, красивым и без изъянов получается изображение, придается особенно важное значение.
    Типы рендеринга
    1. Плоскостной рендеринг (Flat Render) - Создание четко разграниченных многоугольников, поверхность каждого из которых окрашена одним однотонным цветом. Самый быстрый способ представления поверхностей.
    2. Мягкое закрашивание (Gouraud Shading) - Смешение объектов образующих поверхность. Более реалистично, чем плоскостное представление. Используется во многих новых играх, где трехмерные поверхности преобразуются в реальном масштабе времени, например, в авиационных симуляторах.
    3. Phong Shading - Более реалистичная и сложная форма закрашивания, чем предыдущий вариант. Предъявляет большие требования к аппаратным

    15 ресурсам компьютера вообще и к производительности в частности.
    4. Трассировка луча (Ray Tracing) - Наиболее качественный уровень представления трехмерных поверхностей, доступный для настольных компьютеров. Состоит в том, что "нарисованный" луч света, попадая на такую же искусственную поверхность, ведет себя точно так же, как и настоящий - отражается и меняет свое направление. Результат очень реалистичен, с чрезвычайно точными тенями, отражениями и даже преломлением.
    Превращения (Transforms)
    Операции изменения позиции, размера, или ориентации объекта в пространстве. В общем случае - перемещение, масштабирование и вращение.
    Деформации (Deforms)
    Операции подобные превращениям, однако, более сложные, так как их исполнение приводят к перемене внешнего вида объекта. К деформациям можно отнести искривление, поворот, рассогласование и т. п.
    Отсечение (Clipping)
    Отсечение тех многоугольников, которые не попадают в поле зрения пользователя.
    Распределение (Mapping)
    Распределение, (иначе - распределение текстур, Texture Mapping) - процесс назначения объекту атрибутов придающих ему реалистичность. До того, как объекту будет назначена определенная текстура, его составляющие окрашены либо в несколько простейших цветов, либо в серый цвет. Распределение придает объекту или поверхности специфический цвет или назначает текстуру.
    Важнейшая характеристика для оценки трехмерных сцен - реалистичность, однако, простое моделирование трехмерных объектов не всегда позволяет добиться реалистичности. В этом случае, на помощь приходит распределение текстур. Представьте себе скалу - стена из нескольких прямоугольников разной величины с плоскими серыми поверхностями, выглядит весьма неубедительно, будто это стена сложенная из стандартных бетонных плит. Но стоит только добавить к ним текстуру, имитирующую поверхность скалы, как прежние блоки действительно выглядят похожими на скалу.
    Дизеринг (dithering) механизм получения изображения в HiColor-режимах.
    Мультитекстурирование
    Мультитекстурирование (multitexturing) - метод рендеринга с использованием нескольких текстур за минимальное число проходов. Мультитекстурирование позволяет конвейеризировать наложение текстур с использованием нескольких
    (обычно двух) блоков текстурирования.

    16
    Конвейер рендеринга
    Рендеринг выполняется по многоступенчатому механизму, называемому конвейером рендеринга. Конвейер рендеринга может быть разделен на три стадии: тесселяция, геометрическая обработка и растеризация. Если взять произвольный 3D-ускоритель, то он не будет ускорять все стадии конвейера, и даже более того, стадии могут лишь частично ускоряться им. Тесселяция - процесс разбиения поверхности объектов на треугольники. Эта стадия проводится полностью программно вне зависимости от технического уровня и цены 3D-аппаратуры. Геометрическая обработка делится на несколько фаз и может частично ускоряться 3D-ускорителем. Трансформация - преобразование координат (вращение, перенос и масштабирование всех объектов). Расчет освещенности - определение цвета каждой вершины с учетом всех световых источников. Проецирование - преобразование координат в систему координат экрана. Triangle setup - предварительная обработка потока вершин перед растеризацией. Растеризация наиболее интенсивная операция, обычно реализуемая на аппаратном уровне. Растеризатор выполняет непосредственно рендеринг и является нaиболее сложной ступенью конвейера. Если стадия геометрической обработки работает с вершинами, то растеризация включает операции над пиксела-ми. Растеризация включает в себя затенение и дизеринг.
    Z-буферизция (Z-Buffering)
    Сравнительно новое свойство, применяемое для облегчения управлением положения трехмерных объектов в пространстве. Часто используется для затуманивания. Состоит в том, что кроме двумерных координат (x, y) пиксела, хранится еще и значение его глубины. Область видеопамяти, в которой хранятся значения глубины для каждого пиксела, называется z-буфер.
    Фреймбуфер
    Фреймбуфер - понятие путанное, так как может означать несколько вещей в зависимости от контекста. Обычно фреймбуфер - это область памяти, где хранятся пикселы. Фреймбуфер в этом случае делится (обычно пополам) на передний и обратный буфер. Передний буфер - это то, что видит пользователь в конкретный момент. При рендеринге передний буфер остается неизменным до полного формирования нового кадра. При этом вся работа ведется с невидимым обратным буфером, который как бы хранит будущий кадр, который пользователь увидит через долю секунды. Когда новый кадр отрисован, то обратный буфер становится передним, и 3D-ускоритель приступает к новому кадру. Такая работа называ-ется двойной буферизацией. Иногда фреймбуфером называют всю видеопамять (когда говорят "эта плата имеет фреймбуфер 8
    Мбайт"), иногда - видеопамять для z-буфера, переднего буфера и обратного буфера (фреймбуфер Voodoo 2).
    2D-разрешение
    2D-разрешение - это то разрешение, которое стоит, к примеру, на экране

    17
    (desktop) Windows 95. Для расчета того, сколько видеопамяти требуется для какого-либо 2D-разрешения, нужно умножить ширину экрана в точках на его высоту и на размер одного пиксела в байтах. 3D-разрешение - это то разрешение, на котором 3D-ускоритель может выполнять рендеринг трехмерной сцены. Расчеты в 3D более сложны, так как, кроме переднего буфера, здесь есть еще обратный буфер, z-буфер и в некоторых случаях другие буферы. Рендеринг может выполняться по-разному, в одном случае z-буфера не будет, в другом случае будет два обратных буфера. Но, традиционно говоря о
    3D-разрешении, имеется в виду ситуация "по умолчанию": передний буфер, обратный буфер и z-буфeр.
    Коррекция
    перспективы
    Способность корректировать текстуры таким образом, чтобы у наблюдателя создавалось впечатление перспективы.
    Сегодня, при создании игр используют сравнительно большие треугольники, а для придания реалистичности изображения применяют карты текстур, что более эффективно, нежели использование огромной массы мелких треугольников. Хотя такой подход требует от компьютера весьма интенсивной работы, он все же выгоднее альтернативных методов, которые так и не избавились от видимых искажений и "плавающих" текстур.
    Мипмэппинг
    (MIP-mapping)
    Текстура, нарисованная с несколькими уровнями детализации. Чем дальше от наблюдателя накладывается текстура, тем меньший уровень детализации используется. Это дает, во-первых, уменьшение времени обработки - обрабатывать текстуру с низкой детализацией гораздо легче. Во-вторых, текстура, нарисованная художником, всегда будет выглядеть лучше, чем сильно сжатая или силь-но растянутая.
    Билинейная
    фильтрация
    Билинейная фильтрация (bi-linear filtering) - метод текстурирования, при котором выполняется интерполя-ция текстуры. Смысл билинейной фильтрации состоит в том, что каждый тексел данной структуры окрашивается в цвет, полученный, как средне взвешенное от значений цветов четырех соседних текселей.
    Трилинейная
    фильтрация (tri-linear filtering)
    Более сложный метод текстурирования, при котором помимо интерполяции текстуры выполняется интерполяция между уровнями детализации текстуры.
    Трилинейная фильтрация дает более качественное изоб-ражение, чем обычная билинейная с мипмэппингом.
    Антиалиасинг
    (Anti-Aliasing)
    Поскольку цифровые изображения, в основном, представляют собой матрицу из точек, строки этой матрицы, будучи проведенными не строго по

    18 горизонтали или вертикали прорисовывают объект неровными, зубчатыми линиями (этот эффект еще называют stairstepping). Наиболее распространенный метод борьбы с этим эффектом состоит в том, что пикселы в зубчиках заполняются цветом представляющим собой смесь цвета самой линии и цвета фона. Края линии, таким образом, смягчаются, и она выглядит более чистой, лишенной зубчиков.
    Затуманивание
    (Fogging)
    Один из наиболее распространенных эффектов. Отдаленные объекты или их детали, как бы скрываются в тумане и проясняются по мере приближения зрителя к ним. Эффект используется не только для моделирования атмосферного явления - уменьшая число деталей разработчики делают сцену менее сложной, тем самым снижая нагрузку на процессор и графический акселератор.
    Альфа
    -смешение (Alpha Blending)
    Техника создания эффекта полупрозрачности путем объединения исходного пиксела с пикселом, уже находящимся во фреймбуфере. Применяется для создания многочисленных визуальных эффектов, так или иначе обыгрывающих полупрозрачность каких-либо объектов, например воды, стекла или ударной волны от взрыва, тени, тумана, бликов, всполохов света, огня. Это очень общий термин, многие другие функции, где нужно объединять пикселы, такие как прозрачные текстуры, мультитекстурирование, антиалиасинг, также используют альфа-смешение.
    Наложение
    рельефа (bump-mapping)
    Продвинутая методика моделирования рельефных поверхностей. Для того чтобы подчеркнуть бугорки и впадины рельефа с помощью светотени, то надо затемнить либо осветлить стенки этих бугорков и впадин. Другой метод состоит в симуляции рельефности глянцевой или зеркальной поверхности отражением окружающей среды. Это и делает техника наложения рельефа.
    Геометрический
    процессор
    Геометрическим процессором называется ускоритель, который ускоряет всю стадию геометрической обработки, в том числе трансформацию и освещение. Реализация геометрического процессора довольно дорога, и, как уже было сказано, он является объектом реклам-ных спекуляций. Определить, реализован ли геометрический процессор, довольно легко - надо выяснить, поддерживает ли 3D-ускоритель операции с матрицами. Без такой поддержки не может идти речи об ускорении фазы трансформации. Геометрическими процессорами являются, например, FGX-1.
    Сравнение
    OpenGL и Direct 3D
    Главное концептуальное отличие OpenGL от Direct 3D это то, что OpenGL - открытый стандарт, для которого любой производитель может писать свои расширения. Direct 3D - жестко регламентированный стандарт, не

    19 допускающий никаких нововведений до появления новой версии. OpenGL - в оригинальном виде это набор функций, которые производитель должен реализовать в драйверах для типа и платы и которые разработчик может использовать в своих программах. Но ради переносимости многие функциональные возможности не введены прямо в стандарт, а выделены в расширение, и любой производитель сам может решить поддержать то или иное расширение. И даже если он не будет поддерживать ни одно расширение, кроме оригинального OpenGL, все равно будет считаться, что он полностью соответствует этому стандарту. Любой член OpenGL написал свои расширения.
    Есть расширения от Intel, Microsoft и тому подобное. Direct 3D имеет архитектуру, оснащенную на проверке функциональных возможностей, так называемой CAPS TEST. Direct 3D регламентирует все возможности, доступные производителям, которые могут использовать в своих 3D - ускорителях и разработкам ПО, которые используют эти возможности.
    Программа (игра) запрашивает у драйвера, какие возможности предоставляет 3D - ускоритель и в зависимости от ответа включаются те или иные эффекты. При этом ни какого расширения не допускается. Microsoft лицензирует программные технологии, например, технологию наложения рельефа у компании TriTech, технологию компрессии текстур у компании S3 и другие. Direct 3D - закрытый стандарт (после публикации он не расширяется).
    3.
    Переход
    от двумерной графики к трехмерной.
    Работа с трехмерной графикой без знания основных принципов и соответствующей теории моделирования может иметь печальный результат.
    Само собой, нет ничего более интересного, чем исследование функциональных возможностей программного обеспечения, однако понимание основ сохранит новичку время и нервы, а также оградит от неприятностей в будущем.
    Для начала следует разобраться в общих концепциях двух- и трехмерной графики. При наличии некоторого опыта работы с Adobe Illustrator или какими- либо другими программами для работы с графикой, можно успешно применять уже полученные знания о моделировании к двухмерным формам. Основное различие между двухмерными и трехмерными объектами — это глубина.
    Двухмерные изображения характеризуются только высотой и шириной, а вот глубина отсутствует. Хотя двухмерные объекты можно создать и так, чтобы они казались трехмерными. В таком случае, если понадобится изменить перспективу или угол просмотра, объект придется перерисовать заново
    (рис.1.1).

    20
    Рис. 1.1. а) Для создания изображения, выглядящего трехмерным, можно использовать программы двухмерного моделирования (и хорошие карандаши), б) К сожалению, для поворота объекта под любым углом пользователю придется рисовать его заново.
    Поскольку трехмерные объекты имеют глубину (по крайней мере, на экране компьютера), их достаточно "нарисовать" всего один раз, после чего объект можно рассматривать под любым углом и с любых сторон, не создавая их заново. В программах трехмерного моделирования автоматически определяется информация о соответствующей подсветке и тени, падающей на сцену.
    Подобная информация напрямую зависит от способа установки объекта и источников освещения (рис. 1.2).
    Рис. 1.2. После создания объекту придается цвет и освещение, накладываются текстуры, а затем он визуализируется под любым углом
    В программах трехмерного моделирования созданный объект не только перерисовывается под любым углом: его изображение создается с учетом цвета, текстуры и освещения, выбранного пользователем при формировании модели. Благодаря всем этим преимуществам неудивительно, что художники редко возвращаются к традиционному искусству после знакомства с трехмерным пространством.
    Хотя двух- и трехмерное моделирование кардинально отличаются друг от друга, многие из уже знакомых пользователю двухмерных инструментов для рисования также реализованы и в программах по работе с трехмерной графикой. В них доступны такие инструментальные средства, как ручной карандаш, перо Безье, окружности, дуги, ломаные линии, многоугольники, лассо и другие инструменты, работающие аналогично их двухмерным "коллегам". Инструментарий программ трехмерного моделирования отличается тем, что он применяется не для создания завершенной формы в двухмерной

    21 среде, а используется в качестве исходной точки для формирования трехмерного объекта. Наиболее часто используемые трехмерные формы, полученные из двухмерных объектов, — это объекты, созданные с помощью таких операций, как лофтинг, развертка, вращение и выдавливание, однако на данный момент важно запомнить, что такие объекты существенно зависят от двухмерных методов рисования.
    Еще одно сходство между программным обеспечением двухмерного и трехмерного моделирования — это концепция слоев. Трехмерные слои (layers) представляют собой подобие чистого ацетатного листа, на который можно наносить рисунки. Также существует возможность добавления элементов вверху или внизу первоначального слоя, для чего применяются дополнительные слои (или ацетатные листы) с двухмерными изображениями
    (рис. 1.3).
    Поскольку все слои располагаются отдельно друг от друга, внесенные в один уровень изменения никак не повлияют на остальные. На слой заднего плана можно размещать эталонные изображения и копировать их на передний слой подобно тому, как эскизы копируются на бумагу с помощью стекла и направленного освещения. Одно из основных преимуществ работы со слоями заключается в возможности их "включения" и "выключения" для уменьшения количества элементов на экране. Слой также можно "осветлить" (сделать полупрозрачным) для того, чтобы оставить его видимым, но менее бросающимся в глаза.
    Хотя слои в программах трехмерного моделирования несколько отличаются от своих двухмерных собратьев, с их помощью можно скрывать или блокировать некоторые объекты для упрощения дальнейшего выделения и редактирования конкретного объекта.
    Рис. 1.3. Программы двухмерного рисования позволяют создавать рисунки на слоях, подобных ацетатным листам. Затем пользователь может редактировать отдельные элементы, не путаясь в мешанине ненужных слоев
    Как и в двухмерном пространстве, в программах трехмерного моделирования для определения совокупности объектов, которые можно обрабатывать как единое целое, используются группы (groups). Благодаря группированию пользователь получает возможность выбрать взаимосвязанную совокупность объектов, а затем временно объединить их в отдельный модуль.

    22
    Таким образом упрощается выполнение операций перемещения, масштабирования и прочие способы взаимодействия на все элементы, поскольку не требуется выделять отдельно каждый объект перед выполнением какой-либо операции над группой. В зависимости от ситуации пользователь всегда может добавлять, удалять и переназначать объекты той или иной группы.
    4.
    Области
    использования трехмерной графики.
    Трехмерная графика настолько прочно вошла в нашу жизнь, что мы сталкиваемся с ней, порой даже не замечая ее. Разглядывая интерьер комнаты на огромном рекламном щите, янтарный блеск льющегося пива в рекламном ролике, наблюдая, как взрывается самолет в остросюжетном боевике, многие не догадываются, что перед ними не реальные съемки, а результат работы мастера трехмерной графики. Область применения трехмерной графики необычайно широка: от рекламы и киноиндустрии до дизайна интерьера и производства компьютерных игр.
    При создании рекламы трехмерная графика помогает представить продвигаемый товар в наиболее выгодном свете, например, с ее помощью можно создать иллюзию идеально белых рубашек, кристально чистой минеральной воды, аппетитно разломленного шоколадного батончика, хорошо пенящегося моющего средства и т. д. В реальной жизни рекламируемый объект может иметь какие-нибудь недостатки, которые легко скрыть, используя в рекламе трехмерных «двойников». Вы наверняка замечали, что после применения моющего средства посуда блестит гораздо более тускло, чем в рекламе, а волосы после использования шампуня не выглядят так красиво, как на экране телевизора. Причина этого проста: слишком чистая посуда — всего лишь просчитанное компьютером изображение, такие тарелки в реальности не существуют.
    Использование компьютерных технологий при проектировании и разработке дизайна интерьера помогает увидеть конечный вариант задолго до того, как обстановка будет воссоздана.
    Трехмерная графика позволяет создавать трехмерные макеты различных объектов (кресел, диванов, стульев и т. д.), повторяя их геометрическую форму и имитируя материал, из которого они созданы. Чтобы получить полное представление об определенном объекте, необходимо осмотреть его со всех сторон, с разных точек, при различном освещении.
    Трехмерная графика позволяет создать демонстрационный ролик, в котором будет запечатлена виртуальная прогулка по этажам будущего коттеджа, только начинающего строиться.
    Что же касается киноиндустрии, то в этой отрасли компьютерная графика сегодня незаменима. Трудно поверить в то, что для одного из первых фильмов серии «Звездные войны» сцену падающего водопада создавали при помощи обыкновенной соли. Специально ехать, чтобы снимать настоящий водопад, было слишком дорого, трехмерной графики тогда еще не было, поэтому создатели картины решили «обмануть» зрителя и изобразить водопад

    23 самостоятельно. Вместо воды они сыпали соль на черном фоне, а затем при помощи видеомонтажа совмещали отснятое видео реальных гор с «водопадом» из падающей соли. Сегодня для создания подобных сцен необязательно заказывать килограммы соли. При помощи редактора трехмерной графики можно без труда смоделировать любой водопад, который зритель не отличит от настоящего.
    5.
    Программные
    средства обработки трехмерной графики.
    На рынке программных средств по обработке трехмерной графики для ПК лидирующие позиции заняли три пакета. Лучше и качественнее они работают на самых мощных компьютерах созданных на базе операционной системы
    Windows .
    Первая программа по созданию и обработке трехмерной графики для ПК 3D
    Studio Max с самого начала была создана для платформы Windows. Она является "полупрофессиональным приложением". Но его функций вполне достаточно для получения более хороших трехмерных изображений.
    Главной особенностью пакета считается поддержка большого количества ускорителей для трехмерной графики, сильные световые эффекты, большое количество дополнений, созданных "третьими" фирмами. Программы не требовательна к ресурсам системы, что позволяет ей работать на компьютерах даже слабой мощности. Но она уступает конкурентам по функциям моделирования и анимации.
    Вторая программа Softimage 3D в начале издавалась для базы, основанной на станции SGI и только затем была подстроена под операционную систему
    Windows.
    Программа отличается богатыми возможностями моделирования, наличием большого количества регулируемых специализированных параметров. Для программы создано множество дополнений, выпущенных другими фирмами, что привело к увеличению функций пакета. Но эта программа по сравнению с другими требует больше ресурсов и выглядит слишком тяжеловато.
    Третья программа считается наиболее новейшая с точки зрения интерфейсов и возможностей - это программа называется Мауа, разработанная слиянием известных компаний. Пакет выпущен сразу в нескольких вариациях для самых различных операционных систем, в их состав вошла и Windows.
    Инструменты в Мауа сведены в четыре группы: анимация, моделирование, физическое моделирование, визуализация изображений и объектов. Удобный легко настраиваемый интерфейс создан в соответствии со всеми стандартами и требованиями. Сегодня Мауа является самым распространенной программой среди других по созданию и обработке трехмерной графики для ПК.
    Данная программа не требует больших ресурсов и она наиболее удобна в работе.
      1   2   3   4   5   6   7   8   9   ...   14


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