Microsoft Comic Chat

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 21:40, 24 октября 2018.
(перенаправлено с «Microsoft Chat»)
Microsoft Comic Chat
MsccHqdefault.jpg
Microsoft Chat версии 2.5
Создатели: Microsoft Corporation
Разработчики: Дэвид Курландер, Microsoft Research Virtual Worlds Group
Выпущена: 13 августа 1996 года
Постоянный выпуск: 2.5 / март 1999 года
Состояние разработки: Прекращен
Написана на: C++
Операционная система: Microsoft Windows
Платформа: IBM PC
Локализация: Мультиязычный
Тип ПО: IRC чат
Лицензия: Проприетарное программное обеспечение
Веб-сайт нет
Microsoft Comic Chat (позже Microsoft Chat) - это графический IRC-клиент, созданный Microsoft, впервые появившийся в Internet Explorer 3.0 в 1996 году.

Основная особенность Comic Chat, которая отличает его от других IRC-клиентов, заключается в том, что он позволяет использовать пользователям комические аватары. Эти персонажи могли выразить определенную эмоцию, возможно, делая IRC-чат более эмоциональным и выразительным. Все комические персонажи и фоны были созданы комическим художником Джимми Вудрингом. Позже появились инструменты, позволяющие создавать собственные персонажи и фоны.[Источник 1]

Вместо того, чтобы представлять диалоги чата в виде текста, как и большинство интернет-чатов, или в виде графических миров, подобных некоторым появляющимся чат-программам, Comic Chat визуально представляет собой разговоры как последовательности комических панелей. Основными мотивами для этого нового представления были создание графической истории разговора и автоматизация позиционирования и жестов по умолчанию и выражений, позволяющих людям сосредоточиться на главной задаче, которая была в чате. Тем не менее, большая работа пошла на улавливание эстетики и правил генерации комиксов, и результат был визуально приятным.

Чат Microsoft стал настоящей революцией в мире Интернета, так как это позволяло людям во всем мире связываться и выражать свои чувства, эмоции и мысли в чате. Но Comic Chat room был не просто текстовым чатом. Microsoft Comic Chat был интересным и привлекательным способом общения с другими людьми по всему миру. В то время как большинство виртуальных миров и онлайн-видеоигр позволяют перемещать аватар в виртуальном мире, Comic Chat был намного проще. Комический чат Microsoft был автоматически сгенерирован текстом, написанным настоящими людьми, которые выбрали бы персонажа мультфильма и выразили бы свои чувства через чат.

История

Дэвид Курляндер предложил идею Comic Chat, запустил проект в Microsoft Research и разработал исходный код в 1995 году. Он вместе с Тимом Скелли и Дэвидом Продангом написал документ SIGGRAPH по этой технологии. Виртуальная группа Microsoft Research Group помогла Дэвиду Курляндеру в выпуске Comic Chat для своего первого выпуска, а затем Дэвид Курляндер перешел в отдел Интернета, где ему удалось разработать последующие версии и другие коммуникационные технологии.[Источник 2]

В декабре 1996 года Microsoft Network представила формат на основе шоу, в котором высококачественное мультимедийное содержимое могло быть создано по нескольким темам. Автоответчик MSN был построен вокруг автомобильной темы. MSN вступил в партнерство с CarTalk от NPR, и каждый день предлагал новый онлайн-автоответчик из популярного радио дуэта NPR «Click and Clack» (Том и Рэй Маглиоцци).

Microsoft Comic Chat использовал собственный шрифт Comic Sans MS, который пользователи могли использовать в других приложениях и документах. В 1996 году он был связан с несколькими другими шрифтами в Microsoft Fonts для веб-проектов и последующих версий Microsoft Windows, что привело к его известности среди Интернета.

Он был переименован в Microsoft Outlook 2.0 и был связан с Internet Explorer вместе с новым Outlook Express в конце 1990-х. Версия 2.5 в комплекте с Internet Explorer 5 была последним обновлением.

Microsoft Comic Chat удален в Internet Explorer 6.

Разработка

Comic Chat начался как исследовательский проект, и был опубликован на SIGGRAPH'96. Это был эксперимент по созданию и компоновке автоматической иллюстрации. Алгоритм использовавшийся в Comic Chat был попыткой имитировать технику некоторых основных иллюстраций комиксов (особенно Джимми Вудринга). Размещение персонажей, выбор жестов и выражений, а также построение и компоновка словосочетания были выбраны автоматически. Виджет, называемый «колесом эмоций», позволил пользователям переопределить выбор выражения для программы.

Хотя Comic Chat можно было использовать и в текстовых чатах, он был добавлен в начале каждого разговора. Это оказало несколько раздражающее влияние на пользователей, не являющихся членами Comic Chat (хотя его можно было отключить).

Comic Chat был выпущен с полной загрузкой Internet Explorer 3, 4 и 5, а также в дистрибутивах Windows 98 и Windows 2000. Он также стал официальным чат-клиентом MSN. Он был локализован на 24 разных языках. Как большинство IRC-серверов, он редко используется сегодня, потому что MSNом было принято решение выйти из бизнеса чата и отключить его серверы.[Источник 3]

Comic Chat реализован на C++ и работает как в операционных системах Microsoft Windows 95, так и в Windows NT. Comic Chat использует протокол интернет-ретрансляции (IRC). Нетекстовая информация, такая как выбор жестов и выражения, кодируется как небольшая строка в начале каждого сообщения. Пользователи существующих текстовых чат-программ могут общаться с участниками Comic Chat, за исключением того, что они получают текстовое представление о событиях и представлены случайным образом выбранным персонажем для участников Comic Chat. Ранняя версия Comic Chat использовала сетевые протоколы Microsoft Network, которые позволяли передавать текст в специально выделенных текстовых пакетах и ​​всю другую информацию, которая должна передаваться в пакетах данных. Это позволило Comic Chat сделать текстовую информацию абсолютно невидимой для текстовых клиентов. К сожалению, IRC испытывает недостаток в этой возможности. Информация, передаваемая между клиентами, включает в себя индексы определенных растровых изображений, а также символические жесты и выражения.

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

Comic Chat работает как отдельное приложение или совместно с веб-браузерами. Люди могут размещать указатели в чатах на своих веб-страницах, и нажатие на такой указатель автоматически запустит Comic Chat в комнату чата. Поскольку он был написан как документ ActiveX, Comic Chat отображается как динамическая веб-страница в окне окна браузеров, поддерживающих этот интерфейс, например Microsoft Internet Explorer 3.0.

Производительность Comic Chat соответствует первоначальной цели - нарисовать за меньшее количеством секунд, чтобы рендерить панели на машинах класса Pentium. Фон и искусство персонажа хранятся на каждой клиентской машине, поэтому их не нужно передавать по сети. Художественные работы для одного символа могут варьироваться в зависимости от размера и глубины цвета растровых изображений, а также количества предоставленных поз. Опытным путем в ходе разработки было установлено, что 50 Кбайт (сжато) достаточно, чтобы рендерить персонажа с десятью/пятнадцатью рисунками головы и тела. Новые персонажи и фоны могут загружаться динамически.

Персонажи

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

Жесты и выражения

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

Когда участник вводит диалог для своего персонажа, Comic Chat использует этот диалог для определения жестов и выражения по умолчанию. Анализ стенограмм чата выявил ряд чат-специфических закономерностей, которые можно эффективно использовать, и в ходе разработки, было решено использовать несколько дополнительных индикаторов:

  • Смайлики: например, :-) и :-(, указывают счастье и грусть.
  • Аббревиатуры чата:
    • LOL (Laughing Out Loud), ROTFL (Rolling On The Floor Laughing) персонаж смеется.
    • ИМХО (In My Humble Opinion) персонаж указывает на самого себя.
    • BRB (Be Right Back) персонаж машет рукой на прощание.
    • <g> (или <grin>) персонаж улыбается.
  • Знаки пунктуации: !!! указывают на крик.
  • Приветствия: Hi, hello, bye, goodbye, welcome (в начале предложения), приводят к приветственному маханию персонажем.
  • I (Я в начале предложения), I’ll, I will, I’m, I am, I’d, I would приводит к тому, что персонаж показывает на себя.
  • You (Вы в начале предложения), are you, will you, did you, don’t you приводит к тому, что персонаж показывает на собеседника.

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

Поскольку жест и выражение могут контролироваться независимо, можно использовать несколько индикаторов и использовать их с одного и того же ввода. Например, «я не могу сделать это :-(», приводит к тому, что персонаж указывает на себя и нахмурился. Поскольку несколько индикаторов могут быть получены из одного ввода, они также могут конфликтовать. Например, «Привет Сью, как вы? », предположительно, что персонаж будет махать и указывать на собеседника. Поскольку построение композитных жестов из многих отдельных 2D растровых изображений частей тела (позиция левой руки, правая рука и т. д.) делает невозможным создание произведений искусства, Comic Chat вместо этого использует схему приоритизации, чтобы выбрать самый важный жест.

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

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

Рисунок 1 - Колесо эмоций

Справа показано колесо эмоций, а также панель с предпросмотром эмоции. Слева, курсор находится в центре, и персонаж находится в нейтральной позе (рисунок 1 (а)). Посередине персонаж слегка злится (рисунок 1 (b)), так как курсор смещен в направлении «сердитого». Справа персонаж становится намного более злым (рисунок 1 (c)), поскольку курсор перемещается дальше по периметру. Наличие выражения и жестов в изображении эмоции может обеспечить гораздо больше оттенков эмоций, учитывая ограниченный объем параметров.

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

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

Обращения

Рисунок 2 - Процедура обращения

Только около пяти персонажей могут вписаться в один кадр, и, как в и кино, лучше не показывать каждого персонажа в каждом кадре. Тем не менее, важно показывать персонажей, когда они говорят. На рисунке справа (рисунок 2 (а)) показан пример нарушения этого правила.

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

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

Положение и ориентация

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

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

Рендеринг

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

Однако есть одна тонкая, но важная деталь. Художники комиксов, которые рисуют сложные фоны, часто оставляют немного белого пространства вокруг персонажа. Это делает персонажа намного более заметным. Разработчики называют эту область вокруг персонажа ореолом. На рисунке справа показаны два символа, нарисованные без гало, и на рисунке 3 (b) показаны два символа с ореолами.

Рисунок 3 - Сравнение персонажей с ореолом и без

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

Пузыри

Пузыри сообщений - один из самых отличительных и легко узнаваемых элементов комиксовой среды. Они представляют собой объект, в котором содержатся реплики или мысли персонажа.[Источник 4]

Типы

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

Рисунок 4 - Виды пузырей

Даже для данного художественного стиля в комическом словаре есть несколько типов пузырей. На рисунке справа показаны три разных типа пузырей. Самым основным типом является речевой шар, пример которого показан на рисунке 4 (a). Жирная обводка, а верхняя часть (тело пузыря) окружает диалог. Выходит из тела хвост, который указывает на говорящего. На рисунке 4 (b) показан мысленный пузырь. Он похож на речевой пузырь, за исключением того, что его хвост состоит из овалов. В некоторых стилях тело пузыря кажется скорее облаком.

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

Макет

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

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

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

Используется "жадный" алгоритм для размещения тел воздушных шаров; как только алгоритм выбирает местоположение тела, он никогда не изменяет его. Однако размещение хвоста не является "жадным" (может меняться); вместо этого алгоритм отбрасывает хвосты до тех пор, пока все тела не будут помещены. Использование "жадного" алгоритма подходит для размещения тела, потому что оно быстро и нет реальной необходимости упаковывать максимальную сумму текста в панель, поскольку карикатуристы обычно не делают этого. С другой стороны, изначально были попытки использовать жадный алгоритм для размещения хвостов, но они обернулись неудачей.

Рисунок 5 - Каналы маршрутизации

Алгоритм компоновки использует интервалы, называемые каналами маршрутизации, для обеспечения места размещения хвостов после размещения тел. Каналы маршрутизации не пересекаются - они представляют собой разделение пространства, доступного для маршрутизации хвостов. Каждый канал маршрутизации связан с пузырем и указывает, где можно разместить его хвост. На рисунке 5 (а) темно заштрихованная область является исходным каналом маршрутизации для самого верхнего пузыря, который относится к центральному персонажу. Эта область охватывает ширину пузыря; изначально хвост мог идти в любом месте этого региона и гарантировано не пересекать другой шар или хвост. Когда второй персонаж говорит (в данном случае, самый левый персонаж), первый канал маршрутизации уменьшается в размерах, чтобы разместить второй пузырь, как показано на рисунке 5 (b). Третий пузырь в исходном положении полностью покрывает то, что осталось от первого канала маршрутизации, не оставляя места для хвоста первого шара. Алгоритм распознает эту ситуацию и сдвигает третий шар прямо, чтобы оставить достаточно места для хвоста первого пузыря. Последний канал маршрутизации для всех трех пузырей показан на рисунке 5 (c).[Источник 5]

Источники

  1. A Trip Down Memory Lane: Microsoft Comic Chat // Chris Gliddon [2018]. Дата изменения: 06.02.2015. URL: https://chrisgliddon.com/a-trip-down-memory-lane-microsoft-comic-chat-6f23b8a64295 (Дата обращения: 30.09.2018).
  2. Comic Chat - Resources // kurlander.net [2018]. Дата изменения: 23.04.2002. URL: http://kurlander.net/DJ/Projects/ComicChat/resources.html (Дата обращения: 11.10.2018).
  3. Remember Microsoft Comic Chat? Here’s How You Can Still Use It // inquisitr [2008–2018]. Дата изменения: 03.05.2017. URL: https://www.inquisitr.com/4192118/remember-microsoft-comic-chat-heres-how-you-can-still-use-it/ (Дата обращения: 30.09.2018).
  4. Термины, которые должен знать каждый комиксист //DISIMA.RU [2018]. Дата изменения 10.02.2015. URL: https://disima.ru/sozdanie-komiksa/terminy-kotorye-dolzhen-znat-kazhdyj-komiksist/ (Дата обращения: 12.10.2018).
  5. Comic Chat // Microsoft Research [1995]. Дата изменения: 01.01.2018. URL: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.149.2728&rep=rep1&type=pdf (Дата обращения: 12.10.2018).