что такое спрайты в играх

Спрайт (компьютерная графика)

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Эта статья нуждается в дополнительных источниках для улучшения проверяемости.
Вы можете помочь улучшить эту статью, добавив ссылки на авторитетные источники.
Не подтверждённая источниками информация может быть поставлена под сомнение и удалена.

Чаще всего — растровое изображение, свободно перемещающееся по экрану. [1] Наблюдение спрайта под несоответствующим углом приводит к разрушению иллюзии. То есть легче всего воспринимать спрайт как перемещающуюся в пространстве проекцию какого-то объёмного тела так, что разница незаметна.

Содержание

Происхождение термина

Слово «спрайт» придумал в 1970-е годы кто-то из Texas Instruments: их новая микросхема TMS9918 могла аппаратно отображать небольшие картинки поверх неподвижного фона. [2]

Спрайты в двухмерной графике

Изначально под спрайтами понимали небольшие рисунки, которые выводились на экран с применением аппаратного ускорения. На некоторых машинах (MSX 1, NES) программная прорисовка приводила к определённым ограничениям, а аппаратные спрайты этого ограничения не имели. Впоследствии с увеличением мощности центрального процессора, от аппаратных спрайтов отказались, и понятие «спрайт» распространилось на всех двумерных персонажей. В частности, в видеоиграх Super Mario и Heroes of Might and Magic вся графика спрайтовая.

CSS-спрайты

Применяются в вебе. Несколько изображений располагаются в одном графическом файле. Для того, чтобы вырезать из файла нужный кусок, применяется CSS — отсюда название технологии.

CSS-спрайты экономят трафик и ускоряют загрузку — браузеру потребуется запрашивать меньше файлов.

Спрайты в трёхмерной графике

Движки первого поколения

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

В первых трёхмерных играх, например, Wolfenstein 3D (1992) и Doom (1993), персонажи представлялись в виде двумерных рисунков, изменяющих размер в зависимости от расстояния.

На 3D-акселераторах

На 3D-акселераторах применяется такая техника: объект рисуется в виде плоскости с наложенной на неё текстурой с прозрачными областями. Эта технология применяется в трёх случаях.

Оптимизация

Спрайты могут применяться для оптимизации графического ядра, когда отрисовка трёхмерной детализованной модели слишком накладна и может привести к сильному падению скорости рендеринга. Таковыми являются:

Спецэффекты

Некоторые спецэффекты (например, огонь) выполняются спрайтами, так как полигональный огонь плохо смотрится. Сравните, например, взрывы в Quake 2 (рис. 2) и Unreal Tournament (рис. 3).

Для большей правдоподобности изображения используется большое количество сравнительно маленьких спрайтов (так называемая система частиц).

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Рисунок 1.
Спрайтовая публика в Rally Trophy

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Рисунок 4.
Живой актёр в трёхмерном кабинете в realMyst.

Живая съёмка

Изредка спрайты применяются для добавления в игру живого фото или видео. Например:

Стоит заметить, что в некоторых спрайтовых играх, таких, как Rise of the Triad, спрайты фотографировались с актёров, а не с моделей, игрушек или рисунков.

Появление шейдеров частично снимает потребность в живой съёмке — многие нюансы фотоизображения уже можно передать полигональными моделями в реальном времени.

Разрушение иллюзии

Наблюдение спрайта под несоответствующим углом приводит к разрушению иллюзии. В зависимости от математического аппарата рендеринга («движка»), разрушение может происходить двумя способами.

Источник

Урок 3. Спрайты

Этот урок будет о спрайтах — объектах, из которых состоят практически все 2D-игры. К примеру, всем известная игра Super Mario. Вспомните все объекты из игры: сам Марио, враги, монеты, лестницы, кирпичи. Все это — спрайты. То есть, обычная 2D-игра состоит из спрайтов и бэкграунда (задний фон, обычно какая-нибудь картинка). Некоторые части заднего фона также могут являться спрайтами — движущееся солнце или облако например. Такие спрайты не могут воздействовать на игрока.
что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Спрайты мы будем делать анимированные, но это не просто движение картинок, примерно как мы делали в прошлом уроке. Посмотрев на скриншот, кое-кто наверное узнал знаменитую игру от Phenomedia «Sven Bomwollen».

Каждый спрайт состоит из кадров, прямо как в мультфильмах. Эти кадры отображаются по порядку с небольшой задержкой. В итоге мы видим то, что называется анимацией. Если же спрайт должен быть неподвижный, то кадр у него будет всего один. Каждый кадр — это BMP файл. Но мы же помним, что BMP-файл может быть только прямоугольником, а наши спрайты совсем нет. В предыдущем уроке забавное существо было заключено в белый прямоугольник. Но нам такие спрайты не нужны! Для этого мы сделаем спрайты частично прозрачными, а точнее — прозрачным будет все, что мы не хотим отображать при условии, что эти ненужные части одного цвета. Посмотрите на картинку:

Фиолетовый цвет мы сделаем прозрачным. И у нас останется только симпатичная овечка! На этом рисунке прозрачный цвет мы назначим RGB(255,0,255) — в соответствии с кодировкой цвета RGB. При помощи SDL реализовать это очень просто. Вот небольшой пример:

SDL_SetColorKey(surface, SDL_SRCCOLORKEY, SDL_MapRGB(surface->format,r,g,b));

Каждый кадр состоит из поверхности ( surface ) с изображением и значением паузы в миллисекундах между показами кадров. Класс CSpriteBase является базой для спрайта. В нем хранятся все изображения кадров и другие данные. Из одной базы можно создать сколько угодно спрайтов (целое стадо овечек) и это не займет много памяти, т.к. изображения для идентичных спрайтов хранятся в базе, а каждый спрайт просто ссылается на базу.

После этого установим значение mBuilt равным единице, что означает, что класс инициализирован. Заведем еще переменную-счетчик, чтобы считать загруженные картинки:

Теперь считаем RGB, паузу и имя файла с картинкой кадра и загрузим его:

Загрузка картинки будет отличаться от той, что была в прошлом уроке. Сначала создадим временную поверхность SDL_Surface и загрузим в нее картинку:

Функции xadd() и yadd() прибавляют значение к текущим координатам спрайта. Например, xadd(1) сместит спрайт вправо на 1 единицу, а yadd(-3) сместит спрайт вверх на 3 единицы. xset() и yset() позволяют вручную установить координаты. Функция set() устанавливает сразу обе координаты:

Функция ImageLoad() очень простая. Она почти такая же как с прошлого урока, но использует SDL_DisplayFormat() для скорости:

Функция InitImages() просто загружает картину заднего фона:

Функция DrawIMG() рисует изображение на экран в заданной позиции:

DrawBG() отображает задний фон на экран:

В функции DrawScene() мы рисуем спрайты. Сначала затираем задний фон, затем обновляем и рисуем. И в конце — SDL_Flip() для обновления экрана:

Затем инициализируем базы спрайтов:

Инициализируем сами спрайты: установим координаты и скорость:

Спрячем курсор мышки и нарисуем задний фон:

Далее главный цикл с проверками событий:

В случае нажатий соответствующих клавиш обработаем координаты одного из спрайтов. Здесь я сделал управление так же, как в игре «Sven Bomvollen» от PhenomediaAG. Все изображения также принадлежат этой компании.

Попробуйте разобраться в управлении самостоятельно. И наконец рисуем сцену и выходим.

Вот собственно и вся программа! Исходный код проекта урока.

Источник

Библиотека Pygame / Часть 2. Работа со спрайтами

Библиотека Pygame / Часть 2. Работа со спрайтами

Вторая часть серии руководств « Разработка игр с помощью Pygame ». Она предназначена для программистов начального и среднего уровней, которые заинтересованы в создании игр и улучшении собственных навыков кодирования на Python. Начать стоит с урока: « Библиотека Pygame / Часть 1. Введение ».

Что такое спрайт?

Спрайт — это элемент компьютерной графики, представляющий объект на экране, который может двигаться. В двухмерной игре все, что вы видите на экране, является спрайтами. Спрайты можно анимировать, заставлять их взаимодействовать между собой или передавать управление ими игроку.

Для загрузки и отрисовки спрайтов в случай этой игры их нужно добавить в разделы “Обновление” и “Визуализация” игрового цикла. Несложно представить, что если в игре много спрайтов, то цикл довольно быстро станет большим и запутанным. В Pygame для этого есть решение: группировка спрайтов.

Набор спрайтов — это коллекция спрайтов, которые могут отображаться одновременно. Вот как нужно создавать группу спрайтов в игре:

Теперь этой возможностью можно воспользоваться, добавив группу целиком в цикл:

Создание спрайта

Можно переходить к созданию первого спрайта. В Pygame все спрайты выступают объектами. Если вы не работали с этим типом данных в Python, то для начала достаточно знать, что это удобный способ группировки данных и кода в единую сущность. Поначалу это может путать, но спрайты Pygame — отличная возможность попрактиковаться в работе с объектами и понять, как они работают.

Начнем с определения нового спрайта:

Дальше необходимо определить rect спрайта. Это сокращенное от rectangle (прямоугольник). Прямоугольники повсеместно используются в Pygame для отслеживания координат объектов. Команда get_rect() оценивает изображение image и высчитывает прямоугольник, способный окружить его.

rect можно использовать для размещения спрайта в любом месте. Начнем с создания спрайта по центру:

Сейчас, если запустить программу, по центру окна будет находиться зеленый квадрат. Увеличьте значения WIDTH и HEIGHT в настройках программы, чтобы создать достаточно пространства для движения спрайта в следующем шаге.

Движение спрайта

Это значит, что при каждом игровом цикле x-координата спрайта будет увеличиваться на 5 пикселей. Запустите программу, чтобы посмотреть, как он скрывается за пределами экрана, достигая правой стороны.

Исправить это можно, заставив спрайт двигаться по кругу — когда он добирается до правой стороны экрана, просто переносить его влево. Это легко сделать, используя элемент управления rect спрайта:что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Так, если левая сторона rect пропадает с экрана, просто задаем значение правого края равное 0:

Теперь можно видеть, как спрайт будто бы двигается по кругу.

Источник

Cocos2d-x — Работа со спрайтами

Предисловие

Эта статья является второй, из серии переводов документации к игровому движку Cocos2d-x. Если вы не видели первую часть перевода, то советую сначала ознакомится с ней:
Cocos2d-x — Основные понятия

А теперь продолжим!

Что такое спрайт

Создание спрайтов

Существуют различные способы создания спрайтов, зависящие от того что вам необходимо выполнить. Вы можете создать спрайт, используя изображения различных графических форматов, включая: PNG, JPEG, TIFF и другие. Давайте рассмотрим некоторые методы создания и поговорим о каждом из них.

Создание простого спрайта

Спрайт может быть создан путем указания файла изображения.

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Код выше создает спрайт, используя изображение mysprite.png. В результате, созданный спрайт использует целое изображение. Он имеет те же размеры, что и mysprite.png. Если файл изображения 200 x 200 то результирующий спрайт тоже будет 200 x 200.

Создание спрайта с использованием Rect (прямоугольника)

В предыдущем примере, созданный спрайт имел тот же размер, что оригинальное изображение. Если вы хотите создать спрайт использующий только часть файла изображения, вы можете сделать это путем указания прямоугольного участка – Rect.

Rect имеет 4 значения: origin x, origin y, width и height.

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Rect берет левый верхний угол за начало координат. Это противоположно тому принципу, что мы использовали, когда устанавливали позицию на экране, отчитывая координаты от левого нижнего угла. Таким образом, результирующий спрайт – только часть исходного файла изображения. В этом случае, размер спрайта 40 x 40 начиная от левого верхнего угла.

Если вы не зададите Rect, Cocos2d-x автоматически будет использовать полную высоту и ширину заданного изображения. Взгляните на код ниже. Если вы используете изображение с размерами 200 x 200, то следующие два выражения будут иметь одинаковые результаты.

Создание спрайта из текстурного атласа (Sprite Sheet)

Sprite sheet – это способ объединения спрайтов в один файл. Использование sprite sheet помогает добиться лучшей производительности, путем пакетной обработки вызовов рисования. Они могут также сохранить дисковую- и видео-память, если упаковать спрайты более эффективно (обычно требуются специальные инструменты). Вы прочитаете больше об этом в продвинутой главе, но это только один из многих стандартных методов повышения производительности игр.

При использовании sprite sheet, он сначала загружается в SpriteFrameCache. SpriteFrameCache – это класс кеширования, который сохраняет объекты SpriteFrame, для быстрого доступа к ним. SpriteFrame загружается один раз и сохраняется в SpriteFrameCache.

Вот пример sprite sheet:

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Давайте рассмотрим подробнее, что происходит:

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Как вы можете видеть, sprite sheet объединяет все спрайты в один файл и минимизирует лишнее пространство.

Загрузка Sprite Sheet

Вероятнее всего, вы будете осуществлять загрузку в AppDelegate:

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

Создание спрайта из SpriteFrameCache

Это создание спрайта, путем вытягивания его из SpriteFrameCache.

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Создание спрайта из SpriteFrame

Еще один способ создать такой же спрайт – получить SpriteFrame из SpriteFrameCache, и затем создать спрайт при помощи SpriteFrame. Пример:

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Инструменты для создания Sprite Sheets

Создание sprite sheet вручную – утомительный процесс. К счастью, есть инструменты, которые могут генерировать их автоматически. Эти инструменты предлагают множество возможностей для максимальной оптимизации ваших спрайтов!

Здесь представлено несколько инструментов:

Манипуляции со спрайтами

После создания спрайта, вы получите доступ к разнообразным его свойствам, которыми можно манипулировать.

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Опорная точка и позиция

Опорная точка (Anchor Point) – это точка, которую вы задаете, чтобы указать, какая часть спрайта будет использоваться, при установке его координат. Опорная точка влияет только на свойства связанные с трансформацией. Они включают: scale, rotation, skew. И не включают: color и opacity. Опорная точка использует систему координат от нижнего левого угла. Учитывайте это, при выполнении своих расчетов. По умолчанию, все Node объекты имеют стандартную опорную точку (0.5, 0.5).

Задать опорную точку просто:

Чтобы представить это визуально:

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Свойства спрайтов, на которые влияет опорная точка

Использование опорной точки влияет только на свойства связанные с трансформированием. Такие как: scale, rotation, skew.

Position

Опорная точка влияет на позицию спрайта, поскольку именно эта точка используется в качестве основной при позиционировании. Давайте посмотрим, как это происходит. Обратите внимание на цветную линию, и то где находятся спрайты относительно ее. Важно отметить, что такой эффект был получен, лишь путем изменения опорной точки. Мы не использовали setPosition() для достижения этого:

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Позицию спрайта можно также задать методом setPosition().

Rotation

Изменяет вращение спрайта, на положительное или отрицательное число градусов. Положительные значения поворачивают спрайт по часовой стрелке, в то время как отрицательные поворачивают против часовой стрелки. Стандартное значение – 0.0

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Scale

Изменяет масштаб спрайта, либо по каждой оси отдельно, либо равномерно по обеим. Стандартное значение – 1.0

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Изменяет наклон спрайта, либо отдельно по осям x и y, либо равномерно для всех. Стандартное значение – 0.0

Свойства спрайта, на которые не влияет опорная точка

Существует несколько свойств объекта Sprite, на которые не влияет опорная точка. Почему? Потому что они изменяют только внешний вид, подобно свойствам color и opacity.

Color

Изменяет цвет спрайта. Это делается при помощи Color3B. Мы еще не сталкивались с Color3B, но это просто объект, представляющий собой RGB цвет. RGB цвет включает в себя 3 значения (Red, Green, Blue), от 0 до 255. Cocos2d-x также предоставляет предопределенные цвета, из которых вы можете выбрать. Использование их будет немного быстрее, поскольку они уже определены заранее. Вот некоторые примеры:

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Opacity

Изменяет непрозрачность спрайта на заданное значение. Это свойство принимает значения от 0 до 255, где 255 – полная не прозрачность, а 0 – абсолютная невидимость. Стандартное значение 255 (полная видимость).

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Полигональные спрайты

Полигональный спрайт это тоже спрайт, который используется для вывода 2d изображения. Однако, в отличие от нормального спрайта, который является прямоугольником, состоящим из двух треугольников, полигональный спрайт состоит из серии треугольников.

Зачем использовать полигональный спрайт?

Ответ прост — производительность!

Существует много технических терминов о скорости пиксельного заполнения, которые мы могли сюда вывалить, но вам просто нужно понять, что PolygonSprite рисуется на основе формы вашего спрайта, а не прямоугольника с избыточной площадью. Этот способ прорисовки, позволяет сэкономить на ненужной работе. Рассмотрим пример:

что такое спрайты в играх. Смотреть фото что такое спрайты в играх. Смотреть картинку что такое спрайты в играх. Картинка про что такое спрайты в играх. Фото что такое спрайты в играх

Заметили различия между левой и правой версиями?

Слева, типичный Sprite, который прорисовывается, с использованием двух треугольников.

Справа, PolygonSprite, рисующийся большим количеством маленьких треугольников.

Стоит ли идти на такой компромисс, чисто по соображениям производительности, зависит от ряда факторов (форма/детализация спрайта, размер, количество нарисованного на экране, и так далее), но в основном, вершины дешевле пикселей на современных графических процессорах.

AutoPolygon

AutoPolygon – это вспомогательный класс. Его цель – создавать 2d полигональную сетку на основе изображения.

Существуют функции для каждого шага обработки этого процесса, от определения всех точек, до триангуляции. Результат может быть передан в функцию create объекта sprite, для создания PolygonSprite. Пример:

Источник

Основы пиксельарта (Часть 1)

Пиксельарт, также известный как дот-арт в Японии, это вид цифрового искусства, где рисование происходит на пиксельном уровне. В основном он ассоциируется с графикой игр 80-90 годов, в которых художники преодолевали технические ограничения (небольшое количество памяти и маленькое разрешение), создавая все более захватывающие картины.

Порог вхождения в пиксельарт довольно низкий, по сравнению с традиционным рисунком и 3D графикой, позволяя инди разработчикам воплощать свои идеи в жизнь. Но это никоим образом не означает, что закончить игру с ним будет легко. Я видел много пиксельарт проектов на кикстартере, которые думали, что управятся с игрой за год, когда в реальности нужно было около шести лет. Пиксельарт на том уровне, который хотят видеть люди требует достаточно много времени и усилий, есть лишь пару путей, позволяющих ускорить этот процесс.

Работая с 3D моделью ты, по крайней мере, можешь крутить ее, деформировать, перемещать её конечности, копировать анимацию с одной модели на другую и т.д, чего не скажешь о пиксельарте. Профессиональный пиксельарт почти всегда подразумевает под собой большое количество кропотливого размещения пикселей на каждом кадре анимации.

Как говорится “Кто предупрежден, тот вооружен!”, а теперь о моем стиле: по большей мере я использую пиксельарт для своих игр, они же и воодушевляют меня продолжать заниматься этим. Если быть точным, то я фанат Famicon(NES), 16 битных консолей и аркадных автоматов 90ых годов.

Мои любимые игры этой эры имели пиксельарт, который нельзя описать иначе как насыщенный, дерзкий и чёткий. но не настолько, чтобы быть чопорным или минималистичным. Это стиль, который я взял за основу своего, но вы можете легко использовать техники, применяемые в этом туториале для чего-то совсем другого. Смотрите на художников, которые вам нравятся и делайте пиксельарт, какой вашей душе угодно!

Самыми базовыми инструментами для занятия пиксельартом являются лупа и карандаш. Также будут полезными линия, фигуры, выделение и заливка цветом. Есть большое количество как платных, так и бесплатных программ, в которых имеются данные инструменты. Я расскажу о самых популярных из них (включая те, которые использую сам).

Если у вас Windows, вы можете использовать Paint, несмотря на скудность программы, в ней имеются все нужные инструменты, чтобы заниматься пиксельартом.

На удивление неплохой редактор, которым вы можете пользоваться прямо через ваш браузер. Может производить экспорт как в png и gif, так и сохранять спрайты в браузере. Неплохой способ начать заниматься пиксельартом.

Самый популярный редактор на данный момент. Содержит большое количество полезных функций и инструментов, постоянно обновляется, доступен как на Windows и Mac, так и на Linux. К тому же вы можете пользоваться программой бесплатно, скомпилировав её исходный код. Если вы серьёзно хотите заниматься пиксельартом и ещё не выбрали себе редактор, то Aseprite будет неплохим вариантом.

Так как Photoshop требует ежемесячную плату и не приспособлен для пиксельарта, я не рекомендую его, если только вы уже не используете его. Несмотря на выше сказанное, его вполне можно использовать для статических спрайтов, но он достаточно громоздкий по сравнению с GraphicsGale или Aseprite.

Я настоятельно рекомендую пользоваться графическим планшетом для любого вида иллюстраций, чтобы предотвратить заболевания повторяющейся длительной нагрузки на запястье (туннельный синдром). Такие заболевания намного легче предотвратить, чем вылечить. Когда появляется боль, вы уже обречены ( мои дни рисования мышкой, сделали невозможным играть в игры с быстрым нажатием кнопок). Так, что позаботьтесь о себе пока не поздно – это того стоит! В данный момент я использую маленький Wacom Intuous Pro.

Если у вас нет возможности купить планшет, по крайней мере, возьмите лучезапястный бандаж. Я использую от компании Mueller Green Fitted Wrist Brace. У других брендов бандажи были либо слишком неудобными, либо недостаточно эффективными.

Давайте приступим к делу! Мы начнем со спрайта персонажа размером 96×96 пикселей. Я решил нарисовать орка, но вы вправе выбрать что-то другое. Конечный вариант орка находится на скриншоте Final Fight, который вы можете увидеть выше, для того, чтобы вы понимали масштаб спрайта– он большой для большинства ретро игр (оригинальный скриншот имеет размер 384×224 пикселя).

Причина по которой мы начинаем с такого большого спрайта заключается в том, что мне будет легче показать техники пиксельарта именно на нем. К тому же, создание больших спрайтов очень похоже на обычное рисование, которое может быть вам знакомо. После того, как мы изучим базовые техники можно будет уменьшить размер спрайта.

Пиксельарт характеризуется своими ограничениями. Каждый пиксель имеет большое значение, по сравнению с другими видами иллюстраций, также как и цвета, количество которых должно быть ограничено.

Так, что да, выбор палитры цветов очень важен и помогает обозначить ваш стиль. Но для начинающих пиксельарт художников лучшим вариантом будет отложить теорию насчёт цветов в сторону и просто выбрать одну из существующих палитр ( или несколько рандомных цветов), чтобы начать рисовать. Одно из преимуществ пиксельарта заключается в том, что вы в любой момент можете поменять палитру цветов.

Именно для этого туториала я буду использовать палитру из 32 цветов, созданную специально для UFO 50. Палитры из 32 и 16 цветов используются достаточно часто. Данная палитра была создана для выдуманной консоли, которая бы находилась где-то между Famicon и PC Engine. Можете спокойно взять эту палитру и двигаться дальше (или нет! Это не столь важно).

Мы начнем рисовать наш спрайт с наброска карандашом, также как если бы мы рисовали на бумаге. Опираясь на свой опыт, могу сказать, что неплохие пиксельарт художники достаточно хороши в обычном рисовании и наоборот. Так что никогда не помешает улучшить свои навыки рисования.

Дальше мы должны убрать лишние пиксели и сделать все линии толщиной в один пиксель. Но какие пиксели являются лишними? – для того, чтобы ответить на данный вопрос, нам нужно познакомиться с таким понятием как зазубрины.

Нам нужно научиться делать два вида линий: прямые и закруглённые. На бумаге все будет зависеть от контроля мышц, но мы работаем с маленькими цветными блоками, что создает свои трудности.

Для того, чтобы делать хорошие линии, нужно свести к минимуму количество зазубрин: маленьких пикселей или группы пикселей, которые нарушают последовательность линии. Так как в пиксельарте каждый пиксель имеет большое значение, пару зазубрин могут испортить весь спрайт. Представьте, что вы рисуете линию на кусочке бумаги и кто-то внезапно стукает по столу, получившаяся у вас загогулина является тем же, что и зазубрины в пиксельарте.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *