Освободи разум от Фотошопа - свежая концепция обработки изображений

Источник: habrahabr

Я люблю Фотошоп. Честно-честно! Я работаю с ним каждый день уже лет десять. Нельзя переоценить влияние Фотошопа на отрасль цифровой графики - которая во многом определяет, как выглядит мир вокруг нас! Я практически уверен, что прямо сейчас в вашей комнате есть как минимум одна вещь, в дизайне которой принимал участие Фотошоп. И, конечно, картинки для этой статьи были подготовлены в Фотошопе!

В своей сфере Фотошоп - лидер. Его можно называть "стандартом" (что скорее хорошо) или "монополистом" (что скорее плохо). Но факт остается фактом - если вы работаете с любым видом цифровой графики, вам приходится мыслить терминологией Фотошопа и следовать идеям его создателей.

Признаться, Фотошоп - это не самая сложная компьютерная программа из существующих (поскольку, будем откровенны, цифровые изображения - это не самая сложная часть компьютерной науки). Однако, он все-таки весьма сложен. Причин несколько. Во-первых, в Фотошопе много функций и, следовательно, возможностей. Во-вторых, он стар (он очень стар, он… ну вы понимаете :-) - почти моего возраста! Такая долгая история разработки означает, что создатели Фотошопа прошли долгую дорогу, и у них не было возможности пересмотреть основные концепции или переделать какие -то вещи заново. Совместимость и все такое. И потом, зачем чинить то, что не сломалось?

image

Images by about.com

Однако, сегодня ночью меня посетила идея… нет, ИДЕЯ! И теперь она сидит у меня в голове, стучится и просится наружу, хочет быть рассказанной, опубликованной и обсужденной. А что может быть лучше интересного обсуждения!

Итак...

Проблема, которую никто не замечает

Первое, что вы узнаете, начиная изучать Фотошоп - это слои. Слой - это основа основ Фотошопа. Если вы не представляете себе, как работают слои, боюсь, что данная статья будем вам совсем не интересна. Ну если очень кратко - это "картинка внутри картинки". Фотошоп складывает слои один над другим, и вы можете работать со слоем как с отдельной картинкой. Все равно, в результате работы, на мониторе (бумаге) будет "склеенное" (merged) изображение.

image

Ну и в чем может быть проблема? Что-то, что мы все время видим, но не понимаем, что проблема именно там?

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

Так, вернемся к слоям! Предположим, вы открыли в Фотошопе документ, в котором есть один слой (пиксельный - например, фотография). Давайте быстро пробежимся по всему, что мы вообще можем сделать с этим слоем (простите за обилие английского, так понятнее):

  • изменить его свойства (название, цвет в списке слоев, lock, и пр.)
  • применить к нему разные adjustments (которые в основном водятся в меню Image), например, brightness, contrast, hue, saturation, black and white, invert, и пр.
  • также мы можем зайти в layer styles (иногда называемые эффектами - меню Layer > Layer style > Blending options) и добавить вещи типа drop shadow, stroke, outer glow, и пр.
  • применить разнообразные фильтры - blur, distort, noise и пр.
  • спрятать часть слоя с помощью маски.
  • спрятать часть слоя с помощью слоя ниже (clipping mask).
  • сменить тип слоя (например, rasterize type).
  • объединить слои в группы.

image

Все эти возможности возникли в Фотошопе не сразу. Их добавляли и добавляли год за годом. Возможно, вы начинаете догадываться, к чему я клоню! Все эти штуки имеют разные названия, работают по-разному, у них непохожие интерфейсы. Но в результате все они имеют одно и то же - они меняют слой.

Вот еще интересный момент. Некоторые из вышеперечисленных функций меняют содержимое слоя напрямую - этонеобратимое изменение (я имею в виду не undo, а вообще концепцию). Именно с таких простых функций начиналась индустрия цифровой обработки - никому еще не было дела до обратимости изменений (да и железо было не такое мощное). Другие же функции делают обратимые изменения (как бы "накладываясь" поверх слоя). Это, например, layer styles или маски.

В недавних версиях Фотошоп пытается решить проблему необратимости обработки, добавляя к огромному числу своих функций еще несколько:

  • adjustment layers
  • smart objects
  • smart filters.

Знаете, я могу с гордостью заявить, что изучил много самых дальних уголков Фотошопа. Но вот это - "To enable re-editable smart filters, the selected layer will be converted into a smart object." - это что вообще? Я так и не смог принять такой подход и начать с ним работать. Ау! Это жуткий хак, костыль, а не нормальное решение.

Если вы часто путешествуете и встречаете множество (прекрасных) людей, то вы замечаете - несмотря на очевидную разницу во внешности и даже поведении, "сущность" людей одинакова. Так и с Фотошопом! Все его такие разные функции в сущности делают одно и то же - меняют слой.

Эврика! Пусть любая функция будет слоем! Вырастим дерево слоев!

image

Ниже я возьму две идеи из Фотошопа и слеплю из них совсем новую, свежую идею!

Первая, конечно - слои. А вторая - clipping mask.

Предположим, вы работаете в программе обработки изображений под названием "Луковица" (ну, потому что в луковице есть слои!).

Вы закачиваете фотографию из камеры, и у вас появляется документ с одним слоем (с пиксельным содержимым). Допустим, мы хотим добавить немного обработки (скажем, контраст). Вместо того, чтобы применить некую функцию, вы добавляете слой "Контраст" как "слой-дитя" к слою с фотографией! Пока что звучит похоже на adjustment layers в Фотошопе, и отчасти так оно и есть. Но идея в другом - вообще все - это слои!

  • содержимое (пикселы, векторы, текст)
  • обработка (hue, saturation, levels, brightness)
  • bevel, stroke, shadow
  • noise, blur, sharpen
  • mask

И вся соль в том, что слои могут быть "дитя" и "родитель" (дерево, как папки для файлов!). Конечно, есть привычные слои верхнего уровня (технически, это слои-дети всего документа). Наподобие clipping mask в Фотошопе, когда вы создаете слой-дитя, его действие (содержимое или обработка) применяется только в пределах слоя-родителя.

image

Возможно, пока что это выглядит не очень впечатляюще, но если вы напряжете воображение и мысленно "поработаете" так некоторое время (я пробовал!), вы будете потрясены открывающимися возможностями. Навскидку -

  • есть слой с фотографией, к нему делаем слой-дитя sharpen, а к нему слой-дитя маску, и мы можем применить sharpen только к части фото.
  • есть векторный слой, добавляем слой-дитя stroke, а к нему пиксельный слой-дитя, и мы можем рисовать кисточкой только внутри линий stroke!
  • есть слой, добавляем слой-дитя маску, меняем opacity этого слоя - маска становится полупрозрачной.
  • давно мечтали о нескольких strokes к одному слою? Легко! Просто добавьте 2 подряд слоя-дитя strokes. Это относится и к любым другим слоям обработки.
  • можно группировать слои и работать с группой как со слоем - то есть добавлять любые слои-дитя!
  • конечно, любой слой можно прятать - что в Фотошопе прячется в: show/hide layer, enable/disable layer mask, show/hide layer styles, и пр.
  • конечно, любые наборы слоев можно дублировать или копировать в другие слои-родители. Никаких больше paste styles!
  • и конечно, все слои-дети можно "применить" ("вклеить", merge) в слой-родитель.

Пара набросков (не забывайте - каждое действие - это слой, его можно спрятать или удалить):

image

image

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

Почему еще я верю, что это очень круто:

  • концепция очень простая как для понимания, так и для программирования. Как только вы понимаете концепцию дерева слоев, вы можете делать что угодно. С точки зрения разработчика, сделать такой редактор не сложнее, чем игру "Сапер" (ну, может, чуть сложнее). Собственно, интерфейс один - слои. Плагины? Назовем их слоями!
  • это идеальная модель обратимой обработки. Исходник всегда надежно укрыт.
  • это вам не DVORAK. Все уже имеют примерное представление о слоях (спасибо, Фотошоп!). Не будет болезенного переучивания, вроде перехода с QWERTY-клавиатуры на DVORAK. Дз-з-зен!

image


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=33612