Что изучает компьютерная графика
Компьютерная графика
Компью́терная гра́фика (также маши́нная графика) — область деятельности, в которой компьютеры используются как инструмент для синтеза (создания) изображений, так и для обработки визуальной информации, полученной из реального мира. Также компьютерной графикой называют результат такой деятельности.
Содержание
История
Первые вычислительные машины не имели отдельных средств для работы с графикой, однако уже использовались для получения и обработки изображений. Программируя память первых электронных машин, построенную на основе матрицы ламп, можно было получать узоры. [источник не указан 321 день]
В 1961 году программист С. Рассел возглавил проект по созданию первой компьютерной игры с графикой. Создание игры («Spacewar!») заняло около 200 человеко-часов. Игра была создана на машине PDP-1.
В 1963 году американский учёный Айвен Сазерленд создал программно-аппаратный комплекс Sketchpad, который позволял рисовать точки, линии и окружности на трубке цифровым пером. Поддерживались базовые действия с примитивами: перемещение, копирование и др. По сути, это был первый векторный редактор, реализованный на компьютере. Также программу можно назвать первым графическим интерфейсом, причём она являлась таковой ещё до появления самого термина.
В середине 1960-х гг. появились разработки в промышленных приложениях компьютерной графики. Так, под руководством Т. Мофетта и Н. Тейлора фирма Itek разработала цифровую электронную чертёжную машину. В 1964 году General Motors представила систему автоматизированного проектирования DAC-1, разработанную совместно с IBM.
Существенный прогресс компьютерная графика испытала с появлением возможности запоминать изображения и выводить их на компьютерном дисплее, электронно-лучевой трубке.
Текущее состояние
Основные области применения
Разработки в области компьютерной графики сначала двигались лишь академическим интересом и шли в научных учреждениях. Постепенно компьютерная графика прочно вошла в повседневную жизнь, стало возможным вести коммерчески успешные проекты в этой области. К основным сферам применения технологий компьютерной графики относятся:
Научная работа
Компьютерная графика является также одной из областей научной деятельности. В области компьютерной графики защищаются диссертации, а также проводятся различные конференции:
Техническая сторона
По способам задания изображений графику можно разделить на категории:
Двухмерная графика
Двухмерная (2D — от англ. two dimensions — «два измерения») компьютерная графика классифицируется по типу представления графической информации, и следующими из него алгоритмами обработки изображений. Обычно компьютерную графику разделяют на векторную и растровую, хотя обособляют ещё и фрактальный тип представления изображений.
Векторная графика
Векторная графика представляет изображение как набор геометрических примитивов. Обычно в качестве них выбираются точки, прямые, окружности, прямоугольники, а также как общий случай, кривые некоторого порядка. Объектам присваиваются некоторые атрибуты, например, толщина линий, цвет заполнения. Рисунок хранится как набор координат, векторов и других чисел, характеризующих набор примитивов. При воспроизведении перекрывающихся объектов имеет значение их порядок.
Изображение в векторном формате даёт простор для редактирования. Изображение может без потерь масштабироваться, поворачиваться, деформироваться, также имитация трёхмерности в векторной графике проще, чем в растровой. Дело в том, что каждое такое преобразование фактически выполняется так: старое изображение (или фрагмент) стирается, и вместо него строится новое. Математическое описание векторного рисунка остаётся прежним, изменяются только значения некоторых переменных, например, коэффициентов. При преобразовании растровой картинки исходными данными является только описание набора пикселей, поэтому возникает проблема замены меньшего числа пикселей на большее (при увеличении), или большего на меньшее (при уменьшении). Простейшим способом является замена одного пикселя несколькими того же цвета (метод копирования ближайшего пикселя: Nearest Neighbour). Более совершенные методы используют алгоритмы интерполяции, при которых новые пиксели получают некоторый цвет, код которого вычисляется на основе кодов цветов соседних пикселей. Подобным образом выполняется масштабирование в программе Adobe Photoshop (билинейная и бикубическая интерполяция).
Вместе с тем, не всякое изображение можно представить как набор из примитивов. Такой способ представления хорош для схем, используется для масштабируемых шрифтов, деловой графики, очень широко используется для создания мультфильмов и просто роликов разного содержания.
Растровая графика
Растровая графика всегда оперирует двумерным массивом (матрицей) пикселей. Каждому пикселю сопоставляется значение — яркости, цвета, прозрачности — или комбинация этих значений. Растровый образ имеет некоторое число строк и столбцов.
Без особых потерь растровые изображения можно только лишь уменьшать, хотя некоторые детали изображения тогда исчезнут навсегда, что иначе в векторном представлении. Увеличение же растровых изображений оборачивается «красивым» видом на увеличенные квадраты того или иного цвета, которые раньше были пикселями.
В растровом виде представимо любое изображение, однако этот способ хранения имеет свои недостатки: больший объём памяти, необходимый для работы с изображениями, потери при редактировании.
Фрактальная графика
Фрактал — объект, отдельные элементы которого наследуют свойства родительских структур. Поскольку более детальное описание элементов меньшего масштаба происходит по простому алгоритму, описать такой объект можно всего лишь несколькими математическими уравнениями.
Фракталы позволяют описывать целые классы изображений, для детального описания которых требуется относительно мало памяти. С другой стороны, фракталы слабо применимы к изображениям вне этих классов.
Трёхмерная графика
Трёхмерная графика (3D — от англ. three dimensions — «три измерения») оперирует с объектами в трёхмерном пространстве. Обычно результаты представляют собой плоскую картинку, проекцию. Трёхмерная компьютерная графика широко используется в кино, компьютерных играх.
В трёхмерной компьютерной графике все объекты обычно представляются как набор поверхностей или частиц. Минимальную поверхность называют полигоном. В качестве полигона обычно выбирают треугольники.
Всеми визуальными преобразованиями в 3D-графике управляют матрицы (см. также: аффинное преобразование в линейной алгебре). В компьютерной графике используется три вида матриц:
Любой полигон можно представить в виде набора из координат его вершин. Так, у треугольника будет 3 вершины. Координаты каждой вершины представляют собой вектор (x, y, z). Умножив вектор на соответствующую матрицу, мы получим новый вектор. Сделав такое преобразование со всеми вершинами полигона, получим новый полигон, а преобразовав все полигоны, получим новый объект, повёрнутый/сдвинутый/масштабированный относительно исходного.
Ежегодно проходят конкурсы трехмерной графики, такие как Magick next-gen или Dominance War.
CGI графика
Представление цветов в компьютере
Для передачи и хранения цвета в компьютерной графике используются различные формы его представления. В общем случае цвет представляет собой набор чисел, координат в некоторой цветовой системе.
Стандартные способы хранения и обработки цвета в компьютере обусловлены свойствами человеческого зрения. Наиболее распространены системы RGB для дисплеев и CMYK для работы в типографском деле.
Иногда используется система с большим, чем три, числом компонент. Кодируется спектр отражения или испускания источника, что позволяет более точно описать физические свойства цвета. Такие схемы используются в фотореалистичном трёхмерном рендеринге.
Реальная сторона графики
Любое изображение на мониторе, в силу его плоскости, становится растровым, так как монитор это матрица, он состоит из столбцов и строк. Трёхмерная графика существует лишь в нашем воображении, так как то, что мы видим на мониторе — это проекция трёхмерной фигуры, а уже создаём пространство мы сами. Таким образом, визуализация графики бывает только растровая и векторная, а способ визуализации это только растр (набор пикселей), а от количества этих пикселей зависит способ задания изображения.
Компьютерная графика — огромный набор возможностей для современного художника
Компьютерная графика — совокупность методов создания и редактирования изображений с помощью компьютеров и специального программного обеспечения. В наши дни компьютерная графика многими специалистами признается отдельным видом визуального и интерактивного искусства эпохи Постмодернизма.
Компьютерная графика — это результат внедрения в искусство новейших технологий обработки данных, позволяющих художнику без использования традиционных инструментов и материалов решать важные творческие задачи:
Виды компьютерной графики
Компьютерную графику по способам создания изображений разделяют на 2 основные разновидности: двухмерную (2D) и трехмерную (3D). В двухмерной графике изображения создаются на плоскости, а в трехмерной — в пространстве.
В двухмерной векторной графике каждое изображение представляет собой набор простых геометрических объектов (точек, прямых, окружностей, многоугольников) с основными параметрами (цветом и толщиной линий). В растровой графике образ состоит из мельчайших точек — пикселей с заданными показателями цвета, прозрачности и яркости.
При работе с 2D графикой художник часто использует специальное устройство — планшет. С его помощью он на плоской поверхности электронным пером — стилусом, как пером или кистью рисует изображение на рабочей поверхности.
Принцип работы с трехмерной графикой кардинально отличается от предыдущего. Здесь действия художника очень схожи с творчеством скульптора. Каждый объект сначала моделируется в специальном трехмерном редакторе, а готовое изображение представляет собой плоскую проекцию совокупности всех исходных объектов.
Применение компьютерной графики
Сфера применения компьютерной графики сегодня не ограничивается научной и промышленной деятельностью. Ее широко используют в своей работе конструкторы, дизайнеры, архитекторы и аналитики для создания всевозможной документации и презентации своих проектов, а также фотохудожники при творческой обработке изображений.
Дополнительно, компьютерная графика применяется при создании:
Кроме того, в наши дни большой популярностью пользуется цифровая живопись, которую современные художники используют для написания картин разных стилей и жанров.
Цифровая живопись имеет ряд значительных преимуществ перед традиционной. Например, художник может в течение нескольких секунд подбирать нужный цвет и тип инструмента с помощью специальной программы, а также легко исправлять допущенные ошибки и сохранять начатую работу, чтобы вернуться к ней позже.
История компьютерной графики
История компьютерной графики берет свое начало с конца 40-х годов прошлого века, когда в компьютерах начали использовать электронно-лучевые трубки в качестве оперативной памяти. Уже тогда у специалистов появилась возможность создавать на экране осциллографов элементарные изображения, используя простейший код.
В 1952 году английский программист Александр Дуглас (Alexander Douglas) разработал первую в мире компьютерную игру «OXO» — виртуальный аналог знакомых всем крестиков-ноликов. Но в ней графика еще не использовалась. Только через 10 лет Стив Рассел (Steve Russell) создал полноценную игру с графикой «Spacewar!», в которой два игрока управляли космическими кораблями, а интерактивные фигурки челноков перемещались на экране монитора.
В 1955 году был изобретено световое перо — аналог современного стилуса, но сфера его применения была ограничена научной отраслью. В середине 1960-х вышли в свет первые мультфильмы, созданные с использованием компьютерной графики, которые вызвали огромный интерес у зрителей.
Но только в 70-х годах ХХ века с появлением цветных мониторов цифровая графика начала стремительно развиваться. Тогда же появились первые персональные компьютеры, что позволило приобщиться к технологиям создания цифровых изображений огромному количеству людей.
С этого момента значительно расширилась сфера применения цифровой графики, началась активная разработка компьютерных игр, вскоре появились первые графические редакторы и стандарты, а в середине 1990-х — красочные работы пионеров цифровой живописи.
С началом нового тысячелетия для компьютерной графики наступила эра новых возможностей. Благодаря развитию уникальных цифровых технологий, доступности компьютеров и программного обеспечения, перед современными художниками открыты грандиозные перспективы для творческой самореализации.
Основы компьютерной графики
Что если я скажу, что мир не настоящий, а хорошо проработанная компьютерная графика, помещенная в виртуальную реальность? Тогда создатель этого мира по праву может считать себя богом. Звучит как сюжет фантастического фильма? Дайте CG десяток лет, и фантазии превратятся в пугающую реальность.
Однако, уже сейчас освоив компьютерную графику вы сможете использовать ее для веб-дизайна, 3D-игр, 3D-печати, анимации, виртуальной реальности, архитектурной визуализации, эффектов для кино и многого другого. В этой статье мы разберем основы компьютерной графики и ответим на два важных вопроса: “С чего начать?” и “Какой софт использовать?”. Сосредоточьтесь, мы начинаем.
Компьютерная графика или по другому CG — Computer Graphics разделяется на двумерную и трехмерную. Хоть статья в основном о 3D графике, скажу пару слов о 2D.
Двумерную графику обычно разделяют на векторную и растровую, хотя отдельно называют еще и фрактальный тип обособления изображений, говорить о котором мы не будем. Это тема отдельной статьи.
Векторная графика — представляет из себя набор геометрических примитивов, например: точки, прямые, окружности, прямоугольники. На страницах web-сайтов вектор можно увидеть в качестве шрифтов, иконок, логотипов. Вектор может без потерь масштабироваться, поворачиваться, деформироваться, также имитировать трехмерную графику, чем не может похвастаться растровая графика, которая берет за основу пиксели.
Растровая графика — всегда оперирует матрицей пикселей. Каждому пикселю сопоставляется значение яркости, цвета, прозрачности или комбинация этих значений. В растровом виде представимо любое изображение, однако этот способ хранения имеет свои недостатки: больший объём памяти, необходимый для работы с изображениями, потери при редактировании. Как пример растра — любые картинки, изображения, фотографии.
Это все очень интересно, теперь у вас есть базовое понимание о двумерной графике, которое пригодится веб-дизайнерам, 2D аниматорам, художникам. А теперь перейдем к графике будущего.
Независимо от того, в какой области вы хотите развиваться, базовое понимание 3D необходимо во всех, и то, что вы узнаете в одной области, часто можно применить в другой. Скажем, вы смоделировали персонажа. Можно нацепить на него скелет и анимировать, чтобы создать короткометражный мультик или же экспортировать его в игровой движок как персонажа. Его можно напечатать на 3D принтере, внедрить в виртуальную реальность, или просто сделать красивой отрендеренной картинкой. Так что начало работы с любой из этих областей требует базового понимания 3D. И что же это за основы? Ну, их можно сформулировать так:
1. Моделирование — самая популярная технология создания объектов в трехмерной графике — создание полигональной сетки. Это значит, что объект описывается вершинами, соединяющими их ребрами и гранями. То есть любой персонаж игры или кино — геометрическая фигура, состоящая из множества граней. По простому вы создаете сетку и деформируете, пока она не примет форму вашего объекта.2. Текстурирование — создание текстур и материалов, чтобы поверхность выглядела реалистично при рендере. К этому же пункту относится Шейдинг — указание какие участки модели должны обладать оптическими эффектами: матовость или глянцевость.
2. Текстурирование — создание текстур и материалов, чтобы поверхность выглядела реалистично при рендере. К этому же пункту относится Шейдинг — указание какие участки модели должны обладать оптическими эффектами: матовость или глянцевость.3. Свет — настройка освещения для создания приятного финального изображения при рендере. Ничто не будет выглядеть естественно, если оно освещено примитивными источниками света. В играх используются точечные источники света, параллельные — для имитации условно бесконечно удаленных источников вроде Солнца и эмбиент — то есть просто подсветка без конкретно расположенного источника и, соответственно, теней. И глобальное освещение со множественными отскоками виртуальных фотонов — позволяющее критически добавить сцене реалистичности ценой десятка кликов и значительного увеличения времени рендера.
3. Свет — настройка освещения для создания приятного финального изображения при рендере. Ничто не будет выглядеть естественно, если оно освещено примитивными источниками света. В играх используются точечные источники света, параллельные — для имитации условно бесконечно удаленных источников вроде Солнца и эмбиент — то есть просто подсветка без конкретно расположенного источника и, соответственно, теней. И глобальное освещение со множественными отскоками виртуальных фотонов — позволяющее критически добавить сцене реалистичности ценой десятка кликов и значительного увеличения времени рендера.
4. Анимация — создание скелета и анимирование.
Вот и все основные пункты. Думаю, для начала этого будет достаточно. К нашему списку еще можно добавить еще два пункта, которые ближе к работе с видео и кино.
5. Композ — многослойный монтаж, который используется для объединения всего съемочного материала в кадре.
6. Симуляция частиц — система точек в виртуальном пространстве. Сами по себе они не имеют визуальной составляющей, но таковую можно навесить поверх.
Частички полезны в системах, когда они как-то взаимодействуют с другими частичками рядом. В зависимости от правил этого взаимодействия, система частиц может вести себя похожим на воду, огонь, песок, желе, снег и еще много каким образом, подчиняясь заданным в симуляции силам и взаимодействуя с объектами в сцене. Например, эффекты магии в фентезийных фильмах созданы как раз на основе симуляции частиц.
Представим, что нам нужно создать магический меч для MMO игры. Моделируем путем деформации сетки, накладываем текстуру и добавляем свет. Теперь мы можем распечатать его на принтере или отрендерить в картинку. Меч двигается? Ну, это MMO, там всякое бывает. Допустим, создали скелет, анимаровали. Нужен магический эффект? Используем симуляцию. Упаковать это все в красивый трейлер — композ. Анимированный меч
Так что вот, с чего начать — с изучения основ. Теперь следующий вопрос. Он довольно непростой. Какое программное обеспечение мне использовать? Некоторые говорят, что нужно использовать то, что использую крупные студии, но в индустрии нет какого-либо определенного стандарта.Вопрос становится еще более пугающим из за обилия вариантов. Компания Blizzard использует 3ds max, Maya, Zbrush, Mudbox. Disney — Maya и Zbrush. Некоторые студии вроде Pixar используют созданный внутри студии софт, который недоступен общественности. Для первых этапов в компьютерный графике нужен софт, который прост в освоении и не сильно дорогой. Думаю, в этом случае лучше всего подойдет программа Blender. Она распространяется по бесплатной лицензии, а скачать ее можно даже в steam.
Вопрос становится еще более пугающим из за обилия вариантов. Компания Blizzard использует 3ds max, Maya, Zbrush, Mudbox. Disney — Maya и Zbrush. Некоторые студии вроде Pixar используют созданный внутри студии софт, который недоступен общественности. Для первых этапов в компьютерный графике нужен софт, который прост в освоении и не сильно дорогой. Думаю, в этом случае лучше всего подойдет программа Blender. Она распространяется по бесплатной лицензии, а скачать ее можно даже в steam.
…мы ищем обширные художественные и технические навыки, а не способность запускать программы.
— Pixar, Careers Page
Чтобы стать хорошим специалистом в CG потребуется освоить много сложной, но не менее интересной информации. Вот небольшая подборка интернет ресурсов, которые могут вам помочь:
render.ru — один из первых ресурсов рунета, целиком посвященный компьютерной графике и анимации.
artstation.com — сайт с работами в области компьютерной графики, часто использует как портфолио. На artstation можно найти множество известных художников и аниматоров со всего мира.
cgsociety.org — еще один сайт с работами CG.
Компьютерная графика уже очень очень востребованная сфера, а в будущем станет еще более востребованной. Читайте книги по моделированию, смотрите видео (благо таких предостаточно). И когда-нибудь в будущем сможете создать свой мир с блэкджеком и анимированными мечами.
Компьютерная графика уже очень очень востребованная сфера, а в будущем станет еще более востребованной. Читайте книги по моделированию, смотрите видео (благо таких предостаточно). И когда-нибудь в будущем сможете создать свой мир с блэкджеком и анимированными мечами.