Поиск по сайту
Результаты поиска по тегам '3д графика'.
Найдено 2 результата
-
2D Graphics Двумерная графика. Графика, *действие* в которой происходит в одной плоскости. Например, пользовательский интерфейс. 3D Graphics Трехмерная графика. Визуальное отображение трехмерной сцены или объекта. Для представления трехмерной графики на двумерном устройстве (дисплее) применяют рендеринг (см. Rendering ). 3D Pipeline 3D конвейер. Процесс построения 3D-изображения можно разделить на три последовательных этапа. На первом этапе объект преобразуется в мозаичную модель, т.е. происходит его разделение на множество многоугольников (полигонов). Следующий этап включает в себя геометрические преобразования и установки освещения. Наконец, заключительный этап, так называемый "рендеринг" ( rendering ), который является наиболее важным для качества 3D-изображения, создает двумерное изображение из полученных на предыдущих этапах многоугольников. Alpha Коэффициент прозрачности. В описание цвета (RGB) может входить специальный канал, называемый альфа-каналом, который отвечает за прозрачность данного цвета. Т.о. цвет описывается как ARGB. Alpha Blending (Alpha pixel blending) Реальный мир состоит из прозрачных, полупрозрачных и непрозрачных объектов. Alpha Blending - это способ передачи информации о прозрачности полупрозрачным объектам. Эффект прозрачности и просвечивания достигается путем смешивания значений цветов исходного и результирующего пикселей. Разделение изображения на многоугольники производится с использованием маски, плотность которой зависит от прозрачности объекта. В результате цвет точки является комбинацией цветов переднего и заднего плана. Обычно, Alpha имеет нормализованное значение от 0 до 1 для каждого цветного пиксела. Новый пиксел = (alpha)(цвет пиксела А) + (1 - alpha)(цвет пиксела В) Alpha Buffer Альфа буфер. Дополнительный буфер, в котором содержится информация о прозрачности, таким образом пиксел имеет четырехзначное представление (RGBA) и в 32-разрядном буфере содержится 24 бита информации о цвете, т.е. 8 бит на каждый из цветов (красный, зеленый и синий), и 8 бит на значение alpha. См. также Transparency Ambient Световой источник, который светит одинаково во всех направлениях. Все объекты освещаются с равной интенсивностью. Anti-aliasing Анти-алиасинг. Способ обработки (интерполяции) пикселов для получения более четких краев (границ) изображения (объекта). Наиболее часто эта техника используется для создания плавного перехода от цвета линии или края к цвету фона. В некоторых случаях результатом является смазывание (blurring) краев. Скриншоты (прикреплены к посту): Без Анти-алиасинга. С Анти-алиасингом. Atmospheric Effect Специальные эффекты, например, туман, позволяющие улучшить рендеринг изображений реального мира. Back buffer Вторичный буфер. Область памяти, в которой рассчитываются объекты трехмерной сцены. Вывод изображения на экран осуществляется через Front Buffer (первичный буфер). Обычно процесс копирования содержимого вторичного буфера синхронизируется с обратным ходом луча ЭЛТ монитора. Таким образом достигается плавная смена кадров. Bitmap Способ кодирования изображения пиксел за пикселом. Bilinear (bi-linear) Filtering Метод устранения искажений изображения (устранение "блочности" текстур при их увеличении). При медленном вращении или движении объекта (приближение/удаление) могут быть заметны перескакивания пикселов с одного места на другое, т.е. появляется блочность. Для снижения этого эффекта при билинейной фильтрации берется взвешенное среднее значение цвета четырех смежных текстурных пикселов (texels) и в результате определяется цвет текстуры. BitBLTs BitBLT = Bit Block Transfer. БитБлет. Наиболее важная функция для ускорения графики в средах, использующих оконный интерфейс GUI (Graphic User Interface). BitBLT - фактически означает просто перемещение блока данных из одного места в другое, которое производится с учетом требований графической памяти. Например, эта функция используется при каждом перемещении окна, таким образом BitBLT - просто передача блока пикселов. Более сложное использование этой функции связано с ситуациями, требующими некоторого преобразования исходных данных, например, когда каждый "одноцветный" бит исходных данных расширяется до "цветного" с использованием цветовых палитр переднего или заднего плана перед тем, как он будет выведен на экран. Blending Блендинг. Комбинирование двух или более объектов с использованием некоторого базиса пикселов. Buffer Буфер. Область временного хранения данных, часто используется для компенсации разницы в скорости работы различных компонентов системы. Часто в качестве буфера используется дополнительная память, зарезервированная для временного хранения данных, которые передаются между центральным процессором системы и периферией (такими, как винчестер, принтер или видеоадаптер). Особенно полезен буфер для компенсации разницы в уровнях интенсивности потоков данных, для обеспечения места размещения данных, когда процессы асинхронны (например, данные, переданные в контроллер видеоплаты, должны дождаться, когда графический процессор закончит выполнение текущей операции и считает новую порцию информации), и для сохранения данных в неизменном виде (как буфер для видеокадра). Некоторые буферы являются частью адресуемой памяти центрального процессора системы, другие буферы памяти являются частью периферийных устройств. Bump Texture Mapping В отличие от texture mapping, технология bump mapping подразумевает использование как минимум еще одной (обычно в оттенках серого) текстуры, которая служит в качестве карты для рельефа, который должен проявиться при визуализации. Эта технология разработана для придания дополнительной детализации и объемности объектам без изменения их геометрических размеров. В случае, если bump map будет не статичной, а анимированной, то можно достичь эффектов визуального изменения геометрии объекта во времени. Chroma Keying Chroma Keying или текстурная прозрачность - возможность определять основной цвет в карте текстур и делать его прозрачным в процессе текстурирования изображения. В связи с тем, что не все объекты легко моделируются с использованием многоугольников, сhroma keying используется при включении в сцену сложных объектов в виде карт текстур. Color Цвет. Это индивидуальные компоненты белого света, по разному воспринимаемые человеческим глазом. Цветные мониторы используют три основных компонента цвета, на которые реагирует человеческий глаз: красный, зеленый и голубой. Цвет, который в итоге отображается на экране, образуется в результате смешения этих трех основных цветов. Colored lighting Цветовое освещение. Освещение источниками разного цвета, при этом происходит смешение цвета. Совсем недавно цветовое освещение стало использоваться в новейших 3D играх (Quake2, Unreal, Prey, Half Life). Computer graphics Компьютерная графика. Общее направление, описывающее создание или манипуляцию графическими изображениями и изобразительными данными с помощью компьютера. Может использоваться в CAD, анимации, дизайне, архитектуре, деловой графике и т.д. Системы для компьтерной графики обычно являются интерактивными, т.е. отображают изображение на дисплее таким, каким оно создано, или в виде, в который преобразована исходная картинка. Depth Cueing Уменьшение интенсивности освещения текстур при удалении объекта от точки наблюдения. Directional Световой источник, который освещает одинаково все объекты сцены, как бы из бесконечности в определенном направлении. Обычно используется для создания удаленных световых источников (таких как Солнце). Dithering Способ получения изображения 24-битного качества с использованием 8- или 16-битных буферов. Два цвета используются для моделирования третьего и обеспечиваются плавные переходы между элементами изображения. Double Buffering Двойная буферизация. Представьте себе старый трюк аниматоров, нарисованный на уголках стопки бумаги персонаж мультика, со слегка изменяемым положением на каждом следующем листе, затем пролистав всю стопку, отгибая уголок, мы увидим плавное движение нашего героя. Практически такой же принцип работы имеет и Double Buffering в 3D анимации, т.е. следующее положение персонажа уже нарисовано до того, как текущая страница не пролистана. Без применения двойной буферизации движущееся изображение не будет иметь требуемой плавности, т.е. будет прерывистым. Для двойной буферизации требуется наличие двух областей, зарезервированных в буфере кадров трехмерной графической платы; обе области должны соответствовать размеру изображения, выводимого на экран. Метод использования двух буферов для получения изображения: один для отображения картинки, другой для рендеринга. В то время как отображается содержимое одного буфера, в другом происходит рендеринг. Когда очередной кадр обработан, буфера переключаются (меняются местами). Таким образом наблюдатель все время видит отличную картинку. (см. Back Buffer ) Environment Map-Bump Mapping Технология, являющаяся дальнейшим развитием Bump Mapping. В этом случае, помимо базовой текстуры объекта, применяется еще две текстуры: 1. Текстура, являющаяся отрендеренным вариантом трехмерной сцены вокруг объекта (environment map) 2. Текстура - карта рельефа (bump map). Самостоятельно и совместно с Procedural Texturing данная технология позволяет получить такие натуральные эффекты, как отражение, отражение в кривом зеркале, дрожжание поверхностей, искажение изображения, вызываемое водой и теплым воздухом, трансформация искажений по шумовым алгоритмам, имитация туч на небе и др. Flat Shading (Flat) Метод затенения, называемый также постоянным затенением. Поверхность объекта, построенного с использованием этого метода, получается наиболее низкого качества и изображение выглядит как бы поделенным на блоки. Flat Shading даёт более худший результат, чем, допустим, метод Gourad , но, в то же время, и работает значительно быстрее. Fog Вид blending для объекта с фиксированными цветом и пикселами, удаляющимися от точки наблюдения. Fogging Затуманивание. Образуется за счет комбинирования смешанных компьютерных цветовых пикселов с цветом тумана (fog) под управлением функции, определяющей глубину затуманивания. FPS, frames per second Частота смены кадров. Чтобы оценить быстродействие системы трехмерной визуализации, достаточно запустить приложение, динамически создающее трехмерные сцены, и подсчитать число кадров в секунду, которое система способна отобразить. Однако единого, достаточно авторитетного теста такого рода еще не создано. Большинство имеющихся тестов основаны на фрагментах трехмерных игр и проверяют поведение графической карты на весьма ограниченном наборе функций. Например, известная фирма Ziff Davis выпустила тестовый пакет 3D Winbench'98. Frame buffer Буфер кадра. Специально отведенная область памяти компьютера или отдельной платы для временного хранения данных о пикселах, требуемых для отображения одного кадра (полного изображения) на экране монитора. Емкость буфера кадра определяется количеством битов, задействованных для определения каждого пиксела, который должен отображать изменяемую область или количество цветов и их интенсивность на экране. Front buffer Первичный буфер. Область памяти из которой происходит вывод кадра на экран (расчет производится в back buffer). Gamma Характеристики дисплеев, использующих фосфор, нелинейны. Небольшое изменение напряжения, когда общий уровень напряжения низок, приводит к изменению уровня яркости, однако такое же небольшое изменение напряжения не приведет к такому же заметному изменению яркости в случае, если общее напряжение велико. Этот эффект или, точнее, разница между тем, что должно быть и тем, что реально измерено, называется гаммой. Gamma Correction Перед выводом на дисплей линейные данные RGB должны быть обработаны (скорректированы) для компенсации гаммы (нелинейной составляющей) дисплея. Gouraud Shading (Smooth shading) Затенение методом Гуро (или плавное затенение), один из наиболее популярных алгоритмов затенения, который обеспечивает прорисовку плавных теней вокруг изображаемого объекта, что позволяет изображать трехмерные объекты на плоском экране. Метод назван по имени его разработчика, француза Генри Гуро. Gouraud Shading или цветовая интерполяция - процесс, с помощью которого цветовая информация интерполируется по поверхности многоугольника для определения цветов в каждом пикселе. Информация о цвете связывается с каждым пикселом каждого многоугольника с использованием линейной интерполяции по всему множеству многоугольников. Или, затенение Гуро работает, считывая информацию о цвете каждого треугольника, на которые разбита поверхность объекта, и плавно интерполирует интенсивность красного, зеленого и голубого цветов по трем координатам. Этот метод уменьшает "блочность" изображения (смотри Flat Shading) и используется для отображения металлических и пластиковых поверхностей. В результате действия этого алгоритма должен создаваться эффект, заставляющий глаза зрителя экстраполировать информацию о глубине и кривизне поверхности изображаемого объекта. Hidden Surface Removal Удаление скрытых поверхностей. Метод определения видимых для наблюдателя поверхностей. Позволяет не отображать невидимые из данной точки поверхности объекта. Interpolation Интерполяция - математический способ восстановления отсутствующей информации. Например, необходимо увеличить размер изображения в 2 раза, со 100 пикселов до 200. Недостающие пикселы генерируются с помощью интерполяции пикселов, соседних с тем, который необходимо восстановить. После восстановления всех недостающих пикселов получается 200 пикселов вместо 100 существовавших, и таким образом изображение увеличилось вдвое. Interactive Интерактивность. Этим термином описывается поведение прикладной программы, с помощью которой пользователь может влиять на результат деятельности приложения, имея возможность немедленно добавить, изменить, или удалить получающийся результат. Lighting Существуют разные методы, использующие реалистичные графические эффекты для отображения 3D объектов на двумерном дисплее. Один из них - освещение. Используются разные уровни яркости (светло-темно) при отображении объекта для придания ему объема. Line Buffer Линейный буфер - буфер памяти, используемый для хранения одной линии видеоизображения. Если горизонтальное разрешение дисплея установлено равным 640 и для кодирования цвета используется схема RGB, то линейный буфер будет иметь размер 640х3 байт. Линейный буфер обычно используется в алгоритмах фильтров. MIP Mapping Multum in Parvum - с латыни переводится как "много в одном". Метод улучшения качества текстурных изображений при помощи использования текстур с разным разрешением для различных объектов одного и того же изображения, в зависимости от их размера и глубины. Таким образом в памяти хранятся несколько копий текстурированного изображения в различных разрешениях. В результате этого изображение остается качественным при приближении к объекту и при удалении от него. При использовании этого метода Вы увидите изображение в высоком разрешении, находясь близко от объекта, и изображение в низком разрешении, при удалении от объекта. MIP Mapping снижает мерцание и "зашумленность" изображения, возникающие при texture mapping. Mip mapping использует некоторые умные методы для упаковки данных о текстурах изображения в памяти. Чтобы использовать Mip mapping необходимо, взяв все размеры текстур и умножив это число на два, построить одну карту наибольшего размера. Все карты меньшего размера обычно фильтруются и становятся усредненными и уменьшенными версиями самой большой карты. Occlusion Эффект перекрытия в трехмерном пространстве одного объекта другим. Palletized Texture Формат хранения текстур в сжатом виде (1-, 2-, 4- и 8-битный формат вместо 24-битного). Обеспечивает возможность хранения большего числа текстур в меньшем объеме памяти. Parallel point Световой источник, который освещает равномерно все объекты параллельным пучком света. Perspective Correction Один из способов создания реалистичных объектов. Рассматриваются величины Z (глубина) при разделении объекта на многоугольники. При создании современных игр разработчики обычно используют довольно большого размера треугольники для описания поверхности объекта и используют текстурные карты для более точного и детального изображения. Без этого качество картинки было бы гораздо хуже. Если 3D объект движется от наблюдателя, то уменьшаются его линейные размеры (высота и ширина). Без использования функции perspective correction объект будет дергаться и двигаться нереалистично. С каждым уровнем скорректированной перспективы происходят изменения на пиксел, в зависимости от глубины. Так как при этом происходит деление на пикселы, то требуются очень интенсивные вычисления. Pipeline Конвейер. В случае с графикой - серия шагов по созданию и отображению трехмерного изображения. Первый шаг – трансформация – создается трехмерный объект и отображается на плоскость. Второй шаг – добавление освещенности объекту. Третий шаг – рендеринг цветов и теней многоугольников для соответствующих текстур. Pixel Пиксель. Комбинированный термин, обозначающий элемент изображения, являющийся наименьшим элементом экрана монитора. Другое название - pel. Изображение на экране состоят из сотен тысяч пикселей, объединенных для формирования изображения. Пиксель является минимальным сегментом растровой строки, которая дискретно управляется системой, образующей изображение. С другой стороны, это координата, используемая для определения горизонтальной пространственной позиции пикселя в пределах изображения. Пиксели на мониторе - это светящиеся точки яркого фосфора, являющиеся минимальным элементом цифрового изображения. Размер пикселя не может быть меньше точки, которую монитор может образовать. На цветном мониторе точки состоят из групп триад. Триады формируются тремя различными фосфорами: красным, зеленым и синим. Фосфоры располагаются вдоль сторон друг друга. Пиксели могут отличаться размерами и формой в зависимости от монитора и графического режима. Количество точек на экране определяется физическим соотношением ширины к высоте трубки. Pixel blending Метод смешивания цветов текущего пикселя и пикселя, находящегося уже в буфере кадра, для получения выходного пикселя. Если ввести следующие обозначения: R1, G1, B1, A1, где каждый из символов соответственно представляет красную, зеленую, синюю и альфа компоненты текущего пикселя. Тогда R2, G2, B2, A2 – аналогично для пикселя, уже находящегося в буфере. Source Alpha Pixel Blending - добавление прозрачности, т.е. – (R1*A1+R2*(1-A1), G1*A1+G2*(1-A1), B1*A1+B2*(1-A1)) Add Pixel Blending - суммирование цветов, т.е. (R1+R2, G1+G2, B1+B2) Modulate Pixel Blending - модуляция цветов, т.е. (R1*R2, G1*G2, B1*B2) Phong Shading Наиболее эффективный из всех известных методов затенения, позволяющий получить реалистичное освещение. Прекрасная реалистичность достигается за счет вычисления объема освещения для каждой точки, вместо множества многоугольников. Каждый пиксел получает свой собственный цвет на основе модели освещения, направленного на этот пиксел. Этот метод требует более интенсивных вычислений, чем метод Гуро. Point Световой источник, который светит одинаково во всех направлениях из одной точки (например, лампочка в комнате). Procedural Texturing techniques (программное текстурирование) Procedural Texturing techniques (или программное текстурирование) - это метод наложения реалистичных текстур на "лету", т.е. путем математических аппроксимаций структуры таких материалов как дерево, мрамор, камень и др. (Сравните с простым текстурированием). До последнего времени Procedural Texturing редко использовалось как в программных, так и акселерированных игровых и других движках реального времени. В первом случае - ввиду того, что подобные вычисления требуют колоссальных мощностей математического сопроцессора для приемлемой скорости рендеринга, а во втором случае - потому, что "шумовые" алгоритмы Перлина, которые используются для генерации таких текстур, не стандартны и имеют много вариаций. Более того, процесс генерации текстур, различных по типу, требует различных схемных подходов, в то время как традиционное наложение текстур требует одинакового схемного решения для загрузки любого изображения. После появления на свет технологии MMX от Intel ситуация сменилась, и уже сущестуют разработки программной реализации "шума" Перлина на основе этой технологии, которые позволяют накладывать текстуры на лету, со скоростью, сравнимой с простым текстурированием. Характерные особенности: Доступны любые качество и разрешение текстур, возможна их моментальная смена на "лету" (+) Трехмерность (+) Высокие требования к производительности CPU (-) Минимальные требования к количеству памяти компьютера (+) Процесс сложноуправляем (-) Ограниченность применения. Неприменим для имитации людей, картин, торговых марок и этикеток, рисунков и т.д. (-) Projection Процесс преобразования трех размерностей в две. Т.е. преобразование видимой части 3D объекта для отображения на двумерном дисплее. Rasterization Разделение объекта на пикселы. Ray Tracing "Трассировка лучей" - один из самых сложных и качественных методов построения реалистических изображений. Наиболее распространен вариант "обратной трассировки лучей": от глаза наблюдателя, через пиксел строящегося изображения, проводят луч и, учитывая все его отражения от объектов, вычисляют цвет этого пиксела. RGB Система цветообразования, в которой конечный цвет получается за счет смешения, с различной интенсивностью, трех основных цветов: красного (Red), зеленого (Green) и синего (Blue). Самое известное устройство, которое использует систему RGB, это цветной монитор. Real-time Режим реального времени, при этом иммитируемые события происходят так же, как и в реальной жизни. Для достижения этого используется синхронизация со встроенным таймером компьютера. Rendering Процесс создания реалистичных изображений на экране, использующий математические модели и формулы для добавления цвета, тени и т.д. Rendering Engine Дословно - устройство рендеринга. Часть графической системы, которая рисует 3D- примитивы, такие как треугольники или другие простые многоугольники. Практически во всех реализациях системы rendering engine отвечает за интерполяцию краев (границ) объектов и заполнение пикселами многоугольников. Resolution Разрешение. Количество пикселей представленное битами в видеопамяти, или адресуемое разрешение. Видеопамять может организовываться соотношением пикселов (битов) по оси x (пикселы на строке) к числу пикселов по оси y (столбцы) и к размеру отводимой памяти на представление глубины цвета. Стандартная видеопамять VGA 640 пикселов на 480 пикселов и, обычно, с глубиной представления цвета 8 бит. Чем выше разрешение, тем более детально изображение, тем больше нужно хранить о нем информации. Но не вся хранимая информация может быть отображена на дисплее. Scissors Clip (Scissoring) Устанавливается положение контрольного пиксела относительно вырезаемых многоугольников, и многоугольник отбрасывается, если он находится вне отображаемой зоны. Т.е. сокращаются размеры буфера кадра, за счет вырезания "ненужных" многоугольников. Set-up Engine Set-up engine позволяет драйверам передавать многоугольники в rendering engine в виде информации об адресах их вершин, в то время, как, обычно, информация предварительно обрабатывается центральным процессором и передается в терминах изменения (дельт) границ, цвета и текстуры. Таким образом, set-up engine переносит обработку соответствующих данных с центрального процессора на графический чипсет, сокращая таким образом требования к скорости шины на 30% для обработки маленьких, случайно расположенных треугольников, и на пропорционально большее значение для больших многоугольников. Span В растровой графике примитивы формируются с помощью преобразования линий развертки, каждая из которых пересекает примитив в двух точках (Р-левая и Р-правая). Последовательность пикселов на линии, расположенная между этими двумя точками, называется span. Каждый пиксел внутри span содержит значения величин z, R, G, B. Specular highlights Световая характеристика, которая определяет то, как свет будет отражаться от объектов. Spot Световой источник, похожий на точечный. Он светит не во всех направлениях, а в пределах некоего конуса. Освещаются только объекты, попадающие в этот конус. Stippling Создание контурных изображений, т.е. "рисование пунктиром". Tessellation Процесс деления изображения на более мелкие формы. Для описания характера поверхности объекта она делится на всевозможные многоугольники. Наиболее часто при отображении графических объектов используется деление на треугольники и четырехугольники, так как они легче всего обсчитываются и ими легко манипулировать. Texel Элемент текстуры – определенный пиксель в текстуре. Texture Двумерное изображение, хранящееся в памяти компьютера или графического акселератора в одном из пиксельных форматов. В случае хранения в сжатом виде на дисках компьютера текстура может представлят собой обычный бит-мап, который мы привыкли видеть в форматах bmp, jpg, gif и т.д. Перед использованием текстура разворачивается в памяти и может занимать объем в десятки раз больше первоначального размера. Существует порядка двух десятков более или менее стандартизированных пиксельных форматов текстур. Texture Anti-aliasing Удаление нежелательных искажений растровых изображений с помощью интерполяции текстурных изображений. Texture Mapping (Наложение текстур ) Традиционно термином texture mapping в трехмерном моделировании называют процесс наложения двухмерной текстуры на трехмерный объект (текстура как бы натягивается на объект) для придания ему соответствующего внешнего вида. Таким образом, например, производится "раскрашивание" моделей монстров и игроков в трехмерных играх типа Quake и др. Характерные особенности простого наложения текстур: Обработка не требует значительных вычислительных мощностей (+) Высокие требования к количеству оперативной памяти компьютера (-) Загрузка текстуры производится исключительно из ОЗУ (-) Как правило, смена разрешения, требует смены текстуры (-) Можно использовать и отображать практически любые изображения, будь то фотографии или рисунки. (+) Простота реализации (+) Transformation Изменение координат. Последовательность математических операций над выходными графическими примитивами и геометрическими атрибутами для преобразования их из рассчетных координат в системные координаты. Transparency Прозрачность. В компьютерной графике цвет часто описывается в терминах RGB величин, или величинами красного, зеленого и синиго цвета. Существует еще коэффициент Alpha (альфа), являющийся дополнительным компонентом цвета, который используется для смешения. Коэффициент Alpha может также использоваться в качестве величины, отвечающей за степень прозрачности, т.е. величины, определяющей, можно ли видеть сквозь цвет или нет. Наиболее важное значение коэффициент Alpha, или прозрачность, имеет в 3D графике, благодаря его использованию для создания нерегулярных объектов, применяя для этого лишь несколько многоугольников. triangle strip and fans При наличии смежных треугольников, описывающих поверхность фигуры, не требуется передавать информацию о всех трех вершинах каждого из них, а просто передается сразу последовательность треугольников, для каждого из которых определяется лишь одна вершина. В результате снижаются требования к ширине полосы пропускания. Tri-linear Filtering (Tri-linear MIP Mapping) Метод уменьшения искажений в картах текстур, использующий билинейную фильтрацию для четырех текстурных пикселов из двух ближайших MIP-карт и их дальнейшую интерполяцию. Для получения изображения берется взвешенное среднее значение результатов двух уровней билинейной фильтрации. Полученное изображение более четкое и менее мерцающее. Текстуры, с помощью которых формируется поверхность объекта, изменяют свой вид в зависимости от изменения расстояния от объекта до положения глаз зрителя. При движущемся изображении, например, по мере того, как объект удаляется от зрителя, карты текстур должны уменьшаться в размерах вместе с уменьшением размера отображаемого объекта. Для того, чтобы выполнить это преобразование, графический процессор фильтрует карты текстур, вплоть до соответствующего размера, для покрытия поверхности объекта, при этом изображение остается естественным, т.е. объект не деформируется непредвиденным образом. Для того, чтобы избежать таких непредвиденных изменений, большинство графических программ создают серии пред-фильтрованных карт текстур с уменьшенным разрешением, этот процесс называется mip mapping. Затем графическая программа автоматически определяет, какую карту текстур использовать, основываясь на деталях карты текстур изображения, которое уже выведено на экран. Соответственно, если объект уменьшается в размерах, размер карты текстур тоже уменьшается. True color Цвет с глубиной представления 24 или 32 бит. Vertex Точка в трехмерном пространстве, где соединяются несколько линий. Z-buffer Часть графической памяти, в которой хранятся расстояния от точки наблюдения до каждого пиксела (значения Z). Z-buffer определяет, какая из многих перекрывающихся точек наиболее близка к плоскости наблюдения. Также, как большее число битов на пиксель для цвета в буфере кадра соответствует большему количеству цветов, доступных в системе изображения, так и количество бит на пиксель в z-буфере соответствует большему числу элементов. Обычно z-буфер имеет не менее 16 бит на пиксел для представления глубины цвета. Аппаратные акселераторы 3D графики могут иметь собственный z-буфер на графической карте, чтобы избежать удвоенной нагрузки на системную шину при передаче данных. Некоторые рализации Z-buffer используют для хранения не целочисленное значение глубины, а значение с плавающей запятой от 0 до 1. Z-buffering Процесс удаления скрытых поверхностей, использующий значения глубины, хранящиеся в Z-буфере. Перед отображением нового кадра буфер очищается и значения величин Z устанавливаются равными бесконечности. При рендеринге объекта устанавливаются значения Z для каждого пиксела: чем ближе расположен пиксел, тем меньше значение величины Z. Для каждого нового пиксела значение глубины сравнивается со значением, хранящимся в буфере, и пиксел записывается в кадр, только если величина глубины меньше сохраненного значения. Z-sorting Процесс удаления невидимых поверхностей с помощью сортировки многоугольников в порядке низ-верх, предшествующий рендерингу. Таким образом при рендеринге верхние поверхности обрабатываются последними. Результаты рендеринга получаются верными только, если объекты не близки и не пересекаются. Преимуществом этого метода является отсутствие необходимости хранения значений глубины. Недостатком является высокая загрузка процессора и ограничение на пересекающиеся объекты.
-
- 3д графика
- 3d графика
-
(и ещё 2)
Теги:
-
Когда на экраны стали выходить первые трехмерные анимационные картины и новые игры с 3D-окружением, пользователи проявляли огромный интерес к этой области компьютерной графики. «Шрек», «История игрушек», «Корпорация монстров» и прочие 3D-фильмы казались поначалу чем-то очень необычным. После просмотра таких блестящих работ у многих возникало желание разобраться с тем, как все это создается. Но со временем ажиотаж вокруг трехмерной графики поостыл, и выход очередной серии «Шрека» сегодня не вызывает былого интереса. Компьютерная «трехмерка» стала более качественной, а дизайнеры перестали использовать 3D там, где это не нужно. Наглядным примером такого неуместного использования 3D можно назвать игру Worms, которая потеряла свою привлекательность, как только из нее попытались создать трехмерную аркаду. И все же сегодня мы снова наблюдаем растущий интерес к 3D, только его причина уже совсем иная — она больше не кроется в банальном вопросе «Как это сделано?». Теперь, когда Интернет достиг определенного уровня развития, у пользователей появилась возможность использовать трехмерные технологии прямо в окне браузера. И перспективы этого направления очевидны — от интерактивных игр до совершенно новых необычных веб-приложений и сервисов. Оценить потенциал «трехмерного» Интернета могут как те, кто непосредственно создает 3D-графику, так и те, кто только открывает для себя этот интереснейший мир. Веб-сервисы для работы с 3D задействуют технологию WebGL. Она позволяет создавать любое 3D-содержимое, используя веб-обозреватель как платформу. Иными словами, для работы с 3D-графикой в браузере не требуется установка никакого дополнительного программного обеспечения. WebGL поддерживает аппаратное ускорение, поэтому для визуализации трехмерной анимации могут задействоваться не только ресурсы центрального процессора, но и возможности видеокарты. При помощи WebGL можно создавать игры в браузере, но наличие множества сервисов для работы с 3D подтверждает, что технология уже активно используется не только для развлечений, но и для вполне серьезных задач. Стоит, однако, иметь в виду, что сервисы, работающие на WebGL, требуют наличия браузеров Google Chrome или Firefox (в Opera поддержку технологии так и не доработали — она осталась тестовой функцией). Если судить по нашему опыту, лучше все же отдать предпочтение Chrome — во многих случаях 3D в Firefox не отображается, хотя его поддержка официально заявлена. ⇡#Просмотр 3D-моделей в браузереОдно из применений технологии WebGL — демонстрация трехмерных моделей. Предположим, созданную модель нужно показать клиенту, который в 3D ничего не смыслит и у которого никаких приложений для работы с 3D-графикой на компьютере не установлено. Можно сделать скриншот или несколько визуализаций, но ведь любая модель смотрится гораздо эффектнее, если ее рассматривать именно в 3D. Сервисы для просмотра моделей в браузере дают возможность продемонстрировать свои работы на любом компьютере, где есть современный браузер. Некоторые из таких сервисов можно даже использовать как онлайн-портфолио. Чтобы показать свои умения, раньше 3D-моделлеру приходилось тратить время на визуализацию моделей с разных сторон и с разными вариантами представления (сетка, сглажено и пр.), создавать на их основе шоурил в видеоредакторе, загружать его в Интернет и т.д. С сервисами для просмотра 3D-моделей в браузере все гораздо проще. P3d.in Сервис P3d.in дает возможность загружать модели в формате OBJ на сайт и делиться ими. После загрузки генерируется ссылка вида http://p3d.in/BIcqM. Если перейти по ней, можно рассмотреть модель со всех сторон, повращать ее, приблизить. Очень удобно, что для просмотра могут использоваться разные представления: сетка, сплошной цвет, сетка на сглаженной поверхности и так далее. Владелец учетной записи может работать со своими моделями в веб-галерее, сортировать их, используя метки, добавлять описания, управлять начальным видом камеры. Возможна и базовая настройка материалов: можно управлять цветом и наличием текстуры для параметров Diffuse и Specularity, а также размещением текстуры на объекте. При переключении на платный аккаунт добавляются возможности по управлению материалами: появляются дополнительные типы карт (Bump, Ambient Occlusion), увеличивается максимально допустимое разрешение текстур, появляется возможность загружать картинки в PNG. Пока что Pro-акаунты только тестируются, поэтому воспользоваться всеми их преимуществами можно совершенно бесплатно. Sketchfab Sketchfab можно рассматривать как более продвинутый вариант P3d.in. Если предыдущий сайт хорошо подходит для тех, кому нужно время от времени демонстрировать отдельные 3D-модели заказчикам, Sketchfab — это место, где можно создать настоящее онлайн-портфолио. За 7 долларов в месяц Sketchfab предлагает хостинг полноценного сайта-портфолио вида myname.sketchfab.me, на котором можно разместить информацию о себе и на который можно закачать все свои модели (просто модели, а не изображения, на рендеринг которых нередко уходят долгие часы). Потенциальный работодатель сможет увидеть все модели в 3D и рассмотреть их со всех сторон. Впрочем, сайтом можно пользоваться и бесплатно. В этом случае создается страница вида sketchfab.com/3dnews, которая похожа на профиль тематической социальной сети. На ней можно увидеть все модели, загруженные пользователем, и число их просмотров. Другие пользователи Sketchfab могут оставить комментарий к модели, сделать пометку «нравится», а также подписаться на обновления. Стоит иметь в виду, что в рамках бесплатной учетной записи невозможно делать модели открытыми только для личного доступа, поэтому нужно помнить: содержимое, которое загружается на сервис, становится видимым для всех. Впрочем, разработчики Sketchfab позаботились о том, чтобы пользователи могли представить свои модели в наилучшем виде. Можно выбирать отображение с использованием шейдеров и сетки или без них, управлять многими параметрами материала, добавлять один из четырех вариантов однотонного фона или размещать модель на фоне изображения (звездного неба, зимнего леса и так далее — всего более 10 вариантов). Для более качественного показа модели можно также использовать Screen Space Ambient Occlusion (SSAO). В режиме редактирования доступна полезная информация о модели: число треугольников и вершин. Sketchfab поддерживает множество форматов, среди которых OBJ, 3ds, blend, DAE. ⇡#Verold StudioVerold Studio — самый молодой участник нашего обзора. Проект, запущенный лишь летом прошлого года, создавался уже тогда, когда на рынке существовали Sketchfab и P3d.in, поэтому его разработчики попытались предложить то, чего нет у конкурентов. Первое — это более широкие возможности работы с материалами. В Verold Studio встроен миниатюрный редактор материалов, поэтому возможностей сделать модель красивой тут гораздо больше. Можно добавлять отражения, блики и так далее. Также доступны разнообразные параметры освещения, причем отдельно можно управлять задним светом, светом заливки, подсветкой. Как и в Sketchfab, на этом сайте можно использовать фоновые изображения и гибко настраивать фон. А вот вариантов представления модели гораздо больше. Можно, например, включить режим визуализации нормалей или UV. Еще одна приятная особенность Verold Studio — загрузка моделей простым перетаскиванием из файлового менеджера. В Verold Studio также уделено внимание совместной работе над проектами. Сервис предлагает много социальных функций, в частности многопользовательское обсуждение проектов в реальном времени. Как и на Sketchfab, тут есть возможность подписываться на новые модели пользователя. Правда, по части пользовательских страниц Verold Studio явно отстает — страница профиля с адресом вида studio.verold.com/users/519dd09d6e7eb82000000a2 явно проигрывает простому адресу, который получают пользователи Sketchfab. Да и редактор моделей Sketchfab нам показался нагляднее, так что молодому проекту Verold Studio еще есть над чем работать. ⇡#3D-графика в браузере — для 3D-печати3D-печать дала новый импульс к изучению трехмерной графики. Многим пока это направление в новинку, но уже сейчас становится понятно, что трехмерные принтеры со временем постепенно станут вполне «домашней» периферией. Развитие технологий трехмерной печати сделало невозможное возможным. Отныне с помощью трехмерного принтера можно за считаные минуты создавать вещи, на производство которых раньше уходили бы недели. Единственное, что требуется для создания предмета, кроме оборудования, — 3D-модель. Делать их, конечно, можно и в традиционных программах для работы с трехмерной графикой, но изучение всевозможных 3D-студий на профессиональном уровне занимает немало времени. Процесс создания завершенного проекта в трехмерном редакторе подразумевает несколько этапов, каждый из которых требует навыков в определенной области — в текстурировании, настройке параметров визуализации, подготовке анимации и так далее. Однако для трехмерной печати наиболее важен лишь один этап разработки — 3D-моделирование. И с ним вполне можно справиться, используя веб-приложения для работы с трехмерной графикой. ⇡#3DTin3DTin — это онлайновый трехмерный редактор, созданный небольшой группой энтузиастов из Мумбаи (Индия) в 2010 году. За относительно короткий срок сервис набрал большое количество пользователей. В мае этого года число зарегистрированных пользователей превысило 100 тысяч человек. Такая популярность закономерна — еще несколько лет назад трехмерный редактор в браузере казался невозможным. 3DTin имеет лишь базовый набор функций для трехмерного моделирования (примитивные трехмерные формы, инструменты трансформации, объемный текст), но даже этого минимального набора инструментов вполне достаточно для построения 3D-сцен. В веб-приложении имеется даже возможность создания анимации! Если вы никогда ранее не работали в 3D, освоить функции 3DTin будет очень просто. Во-первых, в настройках интерфейса можно выбрать русский язык, а во-вторых, изучать онлайновый редактор можно с помощью видеоуроков, интегрированных в справочную систему веб-приложения. Созданные в веб-приложении модели могут быть отправлены на популярные сервисы для 3D-печати или же экспортированы в STL, OBJ, DAE. Все данные хранятся в «облаке», поэтому можно не волноваться о сохранности работы. Завершив моделирование на одном компьютере, вы можете спустя некоторое время продолжить работу на другом. ⇡#TinkercadTinkercad был первым 3D CAD-редактором, работающим в браузере. Его основное назначение — создание моделей для 3D-печати. Интерфейс редактора очень напоминает внешний вид программы SketchUP — тут так же просто добавлять трехмерные объекты и манипулировать ими. Изменение размера, перемещение и поворот выполняются перемещением маркеров, которыми окружен объект. При изменении размера можно сразу же увидеть величину модели в миллиметрах или в дюймах — по выбору пользователя. Также присутствуют инструменты для выравнивания и зеркального отображения. В Tinkercad есть множество уже готовых моделей. Это не только геометрические объекты, но и все буквы английского алфавита, цифры, знаки препинания, другие популярные символы (сердце, звездочка). Также можно быстро создать куриные лапы, яйцо и уши зайца. Готовые проекты могут быть сохранены в форматах STL, OBJ, VRML, X3D и SVG. При желании пользователь может не забивать себе голову форматами, а просто сразу же отправить проект на один из четырех поддерживаемых сервисов для 3D-печати. Файл будет загружен на сервис, а тот уже автоматически определит стоимость печати. В марте этого года Tinkercad чуть было не закрыли. Его создатели решили сосредоточиться на новом проекте Airstone, закрыли регистрацию бесплатных учетных записей и сообщили о полном прекращении работы сервиса в середине лета 2014 года. К счастью, интересным проектом заинтересовалась компания Autodesk, которая в последнее время активно разрабатывает не только программное обеспечение для работы с 3D и CAD, но и тематические веб-сервисы и мобильные приложения. Неделю назад канадская компания купила Tinkercad, благодаря чему регистрация снова была открыта и пользователи бесплатных учетных записей получили дополнительные возможности. Для freeware-аккаунтов ныне работают все возможности импорта и экспорта проектов, сняты ограничения на число создаваемых дизайнов. Также в рамках обычной учетной записи можно использовать Shape Scripts, создавая собственные 3D-объекты средствами скриптового языка.