stringtranslate.com

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

Спрайты видеоигр.
Спрайты танков и ракет от Broforce

В компьютерной графике спрайт — это двухмерное растровое изображение , интегрированное в более крупную сцену, чаще всего в 2D - видеоигре . Первоначально термин «спрайт» относился к объектам фиксированного размера, объединенным аппаратно с фоном. [1] С тех пор этот термин стал более общим.

Системы с аппаратными спрайтами включают аркадные видеоигры 1970-х и 1980-х годов; игровые консоли, в том числе Atari VCS (1977 г.), ColecoVision (1982 г.), Nintendo Entertainment System (1983 г.) и Sega Genesis (1988 г.); и домашние компьютеры, такие как TI-99/4 (1979 г.), 8-битное семейство Atari (1979 г.), Commodore 64 (1982 г.), MSX (1983 г.), Amiga (1985 г.) и X68000 (1987 г.). Аппаратное обеспечение различается по количеству поддерживаемых спрайтов, размеру и цветам каждого спрайта, а также специальным эффектам, таким как масштабирование или отчетность о перекрытии с точностью до пикселя.

Аппаратная композиция спрайтов происходит по мере подготовки каждой строки развертки для устройства вывода видео, например электронно-лучевой трубки , без участия основного процессора и без необходимости полноэкранного буфера кадров . [1] Спрайты можно позиционировать или изменять, устанавливая атрибуты, используемые в процессе компоновки оборудования. Количество спрайтов, которые могут отображаться в каждой строке сканирования, часто меньше общего количества спрайтов, поддерживаемых системой. Например, чип Texas Instruments TMS9918 поддерживает 32 спрайта, но в одной строке развертки могут находиться только 4.

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

Этимология

По словам Карла Гуттага, одного из двух инженеров процессора видеодисплея Texas Instruments TMS9918 1979 года , слово « спрайт» использовал Дэвид Экли, менеджер TI. [2] Его также использовал Дэнни Хиллис из Texas Instruments в конце 1970-х годов. [3] Этот термин произошел от того факта, что спрайты «плавают» поверх фонового изображения, не перезаписывая его, во многом подобно призраку или мифологическому спрайту .

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

Player/Missile Graphics — термин, используемый Atari, Inc. для обозначения аппаратных спрайтов на 8-битных компьютерах Atari (1979 г.) и консоли Atari 5200 (1982 г.). [4] Этот термин отражает использование как персонажей («игроков»), так и более мелких связанных с ними объектов («ракет»), имеющих один и тот же цвет. Более ранняя видеокомпьютерная система Atari и некоторые аркадные игры Atari использовали игрока , ракету и мяч .

Stamp использовался в некоторых игровых автоматах в начале 1980-х годов, включая Ms. Pac-Man . [5]

Movable Object Block , или MOB , использовался в литературе по графическим чипам MOS Technology . Commodore , основной пользователь MOS-чипов и владелец MOS на протяжении большей части жизни производителя чипов, вместо этого использовал термин «спрайт» для Commodore 64.

OBJ s (сокращение от Objects ) используется в руководствах разработчиков для NES , Super NES и Game Boy . Область видеоОЗУ , используемая для хранения атрибутов и координат спрайтов, называется OAM (память атрибутов объекта). Это также относится к Game Boy Advance и Nintendo DS .

История

Аркадные видеоигры

Использование спрайтов зародилось в аркадных видеоиграх . Нолан Бушнелл придумал оригинальную концепцию, когда разработал первую аркадную видеоигру Computer Space (1971). Технические ограничения затруднили адаптацию ранней игры Spacewar! для мэйнфреймов ! (1962), который выполнял полное обновление экрана при каждом небольшом движении, поэтому он придумал решение проблемы: управление каждым отдельным игровым элементом с помощью специального транзистора . Ракеты представляли собой, по сути, жестко закрепленные растровые изображения , которые перемещались по экрану независимо от фона, что было важным нововведением для более эффективного создания экранных изображений и обеспечения основы для спрайтовой графики. [6]

Самыми ранними видеоиграми, в которых персонажи игроков представлялись в виде спрайтов-людей, были аркадные спортивные видеоигры , начиная с TV Basketball от Taito , [7] [8] [9], выпущенного в апреле 1974 года и лицензированного Midway Manufacturing для выпуска в Северной Америке. [10] Разработанный Томохиро Нисикадо , он хотел выйти за рамки простых прямоугольников в стиле Pong и перейти к графике персонажей, переставив прямоугольные формы в объекты, похожие на баскетболистов и баскетбольные кольца . [11] [12] В октябре 1974 года компания Ramtek выпустила ещё одну спортивную видеоигру — Baseball , [10] в которой также отображались человекоподобные персонажи. [13]

Аркадная системная плата Namco Galaxian для аркадной игры Galaxian 1979 года отображает анимированные разноцветные спрайты на прокручиваемом фоне. [14] Он стал основой для Nintendo Radar Scope и аркадного оборудования Donkey Kong , а также домашних консолей, таких как Nintendo Entertainment System . [15] По словам Стива Голсона из General Computer Corporation , в то время вместо «спрайта» использовался термин «штамп». [5]

Домашние системы

Signetics разработала первые чипы, способные генерировать спрайтовую графику (называемую Signetics объектами ) для домашних систем. Видеопроцессоры Signetics 2636 впервые были использованы в усовершенствованной программируемой видеосистеме 1292 1978 года , а затем в 1979 году в игровом компьютере Elektor TV .

Atari VCS , выпущенная в 1977 году, имеет аппаратную реализацию спрайтов, позволяющую перемещать пять графических объектов независимо от игрового поля. Термин «спрайт» в то время не использовался. Спрайты VCS в руководстве по программированию называются подвижными объектами , которые далее обозначаются как два игрока , две ракеты и один мяч . [16] Каждый из них состоит из одного ряда пикселей, которые отображаются на линии сканирования . Чтобы создать двумерную форму, однострочное растровое изображение спрайта изменяется программным обеспечением от одной строки сканирования к другой.

Домашние компьютеры Atari 400 и 800 1979 года имели аналогичную, но более сложную схему, способную перемещать восемь одноцветных объектов за строку сканирования: четыре игрока шириной 8 бит и четыре ракеты шириной 2 бита . Каждый из них представляет собой полную высоту дисплея — длинную тонкую полоску. DMA из таблицы в памяти автоматически устанавливает регистры графического шаблона для каждой строки сканирования. Аппаратные регистры контролируют горизонтальное положение каждого игрока и ракеты. Вертикальное движение достигается путем перемещения растровых данных внутри полосы игрока или ракеты. Atari назвала эту функцию графикой игрока/ракеты .

Компания Texas Instruments разработала чип TMS9918 с поддержкой спрайтов для своего домашнего компьютера TI-99/4 1979 года. Обновленная версия используется в TI-99/4A 1981 года .

Системы с аппаратными спрайтами

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

Смотрите также

Рекомендации

  1. ^ аб Гаага, Джеймс. «Почему существуют специальные игровые консоли?». Программирование в XXI веке . Архивировано из оригинала 23 апреля 2018 г. Проверено 2 сентября 2019 г.
  2. Гуттаг, Карл (6 декабря 2011 г.). «Во-первых, будьте полезны (домашние компьютеры и пикопроекторы)». КГОнТех .
  3. ^ Джонстон, Боб (2003). Не говоря уже о ноутбуках: дети, компьютеры и трансформация обучения. iUniverse. п. 108. ИСБН 978-0595288427.
  4. ^ "Де Ре Атари". 1981. Архивировано из оригинала 31 июля 2017 г. Проверено 10 августа 2017 г.
  5. ^ аб Стив Голсон (2016). Посмертное описание классической игры: «Ms. Pac-Man' (Конференция). Конференция разработчиков игр . Событие происходит в 20:30 . Проверено 26 января 2017 г. […] 6 движущихся персонажей, которые сегодня вы бы назвали «спрайтами», тогда мы называли их «штампами», […].
  6. ^ Суолвелл, Мелани; Уилсон, Джейсон (12 мая 2015 г.). Удовольствия от компьютерных игр: очерки по истории культуры, теории и эстетике. МакФарланд и компания . стр. 109–10. ISBN 978-0-7864-5120-3. Архивировано из оригинала 16 мая 2021 года . Проверено 16 мая 2021 г.
  7. ^ Колби, Ричард; Джонсон, Мэтью СС; Колби, Ребекка Шульц (27 января 2021 г.). Этика игр, исследований и преподавания игр в классе письма. Спрингер Природа . п. 130. ИСБН 978-3-030-63311-0. Архивировано из оригинала 3 мая 2021 года . Проверено 3 мая 2021 г.
  8. Впервые в видеоиграх. Архивировано 5 ноября 2017 г. в Wayback Machine , The Golden Age Arcade Historian (22 ноября 2013 г.).
  9. Баскетбольный флаер. Архивировано 8 июля 2014 г. в Wayback Machine (1974), Музей аркадных флаеров.
  10. ↑ Аб Акаги, Масуми (13 октября 2006 г.).アーケードTVゲームリスト国内•海外編(1971-2005) [ Список аркадных телеигр: внутреннее • зарубежное издание (1971-2005) ] (на японском языке). Япония: Агентство новостей развлечений. стр. 40–1, 51, 129. ISBN. 978-4990251215.
  11. Смит, Александр (19 ноября 2019 г.). Они создают миры: история людей и компаний, которые сформировали индустрию видеоигр, Том. Я: 1971-1982 гг. ЦРК Пресс . стр. 191–95. ISBN 978-0-429-75261-2. Архивировано из оригинала 2 мая 2021 года . Проверено 16 мая 2021 г.
  12. Ссылки 長対談» [Space Invader, секретная история разработки раскрыта — интервью с разработчиком Томохиро Нисикадо, президентом Taito Йоичи Вада]. Никкей (на японском языке). 21 марта 2008 года. Архивировано из оригинала 23 марта 2008 года . Проверено 3 мая 2021 г.
    • «Space Invaders - Интервью с разработчиком, посвященное 30-летию». Шмуплитации .
  13. ^ Торп, Ник (март 2014 г.). «70-е годы: генезис индустрии». Ретро-геймер . № 127. С. 24–7.
  14. Диллон, Роберто (19 апреля 2016 г.). Золотой век видеоигр: рождение многомиллиардной индустрии. ЦРК Пресс. ISBN 9781439873243– через Google Книги.
  15. Делая Famicom реальностью, Nikkei Electronics (12 сентября 1994 г.)
  16. Райт, Стив (3 декабря 1979 г.). «Руководство программиста Stella» (PDF) . Архивировано (PDF) из оригинала 27 марта 2016 г. Проверено 14 апреля 2016 г.
  17. ^ "Плюс - CPCWiki" . Cpcwiki.eu. Архивировано из оригинала 20 июля 2011 г. Проверено 29 ноября 2009 г.
  18. ^ «Адаптер телевизионного интерфейса» . AtariArchives.com. Архивировано из оригинала 25 августа 2010 г. Проверено 6 февраля 2011 г.
  19. ^ «Часто задаваемые вопросы по Atari 5200 — Обзор оборудования» . AtariHQ.com. Архивировано из оригинала 14 мая 2011 г. Проверено 6 февраля 2011 г.
  20. ^ «Видеоконтроллер MOS 6567/6569 (VIC-II) и его применение в Commodore 64» . Архивировано из оригинала 30 августа 2006 года . Проверено 8 января 2006 г.{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  21. ^ «Справочное руководство по оборудованию Amiga 4: спрайтовое оборудование» . 1989. Архивировано из оригинала 14 августа 2017 г. Проверено 23 мая 2017 г.
  22. ^ «Спецификации Gameduino» . excamera.com. Архивировано из оригинала 13 декабря 2021 г. Проверено 13 июня 2011 г.
  23. ^ "STIC - Intellivision Wiki" . wiki.intellivision.us . Архивировано из оригинала 9 июля 2018 года . Проверено 15 марта 2018 г.
  24. ^ TEXAS INSTRUMENTS 9900: Процессоры видеодисплея TMS9918A/TMS9928AITMS9929A ​​(PDF) . Архивировано из оригинала (PDF) 14 августа 2017 г. Проверено 5 июля 2011 г.
  25. ^ Монфор, Ник; Богост, Ян (9 января 2009 г.). Гонки на луче: видеокомпьютерная система Atari. МТИ Пресс. ISBN 9780262261524– через Google Книги.
  26. ^ «Изучите программирование на многоплатформенном ассемблере 6502... Для монстров! Серия для конкретной платформы» . Архивировано из оригинала 4 декабря 2021 г. Проверено 4 декабря 2021 г.
  27. ^ "Видеооборудование на базе Galaxian" . Гитхаб . МАМЕ . Архивировано из оригинала 30 ноября 2017 года . Проверено 23 октября 2018 г.
  28. ^ "Аппаратное обеспечение на базе Galaxian" . Гитхаб . МАМЕ . Архивировано из оригинала 5 сентября 2018 года . Проверено 23 октября 2018 г.
  29. ^ "Семейство оборудования Galaxian" . Гитхаб . МАМЕ . Архивировано из оригинала 24 февраля 2021 года . Проверено 23 октября 2018 г.
  30. ^ Натан Алтис (2015), «Я ошибка: платформа семейного компьютера/развлекательной системы Nintendo», страницы 53 и 69. Архивировано 12 ноября 2016 г. в Wayback Machine , MIT Press.
  31. ^ «Технические характеристики». Nocash.emubase.de. Архивировано из оригинала 21 июня 2009 г. Проверено 29 ноября 2009 г.
  32. ^ «Microsoft Word — NESDoc.doc» (PDF) . Архивировано (PDF) из оригинала 30 сентября 2011 г. Проверено 29 ноября 2009 г.
  33. ^ "GameBoy - Интернет-лексикон Spielkonsolen" . На сайте mix.de. 22 июня 2004 г. Архивировано из оригинала 6 мая 2010 г. Проверено 29 ноября 2009 г.
  34. ^ «Технические характеристики». Nocash.emubase.de. Архивировано из оригинала 21 июня 2009 г. Проверено 29 ноября 2009 г.
  35. ^ Чарльз Макдональд. «Документация Sega Master System VDP». Архивировано из оригинала 18 марта 2014 г. Проверено 5 июля 2011 г.
  36. ^ «Техническая информация о системе Sega Master» (TXT) . Smspower.org . Архивировано из оригинала 24 июня 2019 г. Проверено 28 ноября 2016 г.
  37. ^ «Часто задаваемые вопросы по программированию Sega, 18 октября 1995 г., шестое издание - последнее» . Архивировано из оригинала 22 января 2005 года . Проверено 10 декабря 2015 г.
  38. ^ Персонал, Полигон (3 февраля 2015 г.). «Как Sega построила Genesis». Полигон. Архивировано из оригинала 03.11.2015 . Проверено 28 ноября 2016 г.
  39. ^ «Оборудование Sega Out Run (Sega)» . Система 16. 31 марта 2016 г. Архивировано из оригинала 28 ноября 2016 г. Проверено 28 ноября 2016 г.
  40. ^ «mame/segaorun.c на master · mamedev/mame · GitHub» . github.com . 21 ноября 2014 года. Архивировано из оригинала 21 ноября 2014 года . Проверено 15 марта 2018 г.
  41. ^ "Выезд". 27 февраля 2001 г. Архивировано из оригинала 27 февраля 2001 г. Проверено 28 ноября 2016 г.
  42. ^ "Оборудование Out Run (Sega)" . Система 16. Архивировано из оригинала 28 ноября 2016 г. Проверено 29 ноября 2009 г.
  43. ^ «Версия 0.3 — 7 февраля 1998 г.» . Coinop.org . Архивировано из оригинала 14 мая 2016 г. Проверено 28 ноября 2016 г.
  44. ^ «Общее 16-битное оборудование Sega» . Архивировано из оригинала 25 января 2016 г. Проверено 9 февраля 2016 г.
  45. ^ "Примечания к оборудованию Sega "X-Board"" . Архивировано из оригинала (TXT) 18 марта 2014 г. Проверено 28 ноября 2016 г.
  46. ^ "X68000-Компьютерный музей" . Museum.ipsj.or.jp . Архивировано из оригинала 2 октября 2014 г. Проверено 28 ноября 2016 г.
  47. ^ «mame/x68k.c на мастере · mamedev/mame · GitHub» . github.com . 21 ноября 2014 года. Архивировано из оригинала 21 ноября 2014 года . Проверено 15 марта 2018 г.
  48. ^ Ёсида, Коичи (12 сентября 2001 г.). «超連射68K 開発後記». Веб-страница Ёсина (на японском языке). Архивировано из оригинала 12 мая 2019 года . Проверено 28 ноября 2016 г.(Перевод Shmuplations. Архивировано 2 июля 2019 г. в Wayback Machine ).
  49. ^ "Примечания к оборудованию Neo-Geo MVS" (TXT) . Furrtek.free.fr . Архивировано из оригинала 16 сентября 2018 г. Проверено 28 ноября 2016 г.
  50. ^ «Руководство по программированию Neo-Geo» (PDF) . Furrtek.free.fr . Архивировано (PDF) из оригинала 6 декабря 2016 г. Проверено 28 ноября 2016 г.
  51. ^ «Большой список переключателей отладки» . Нео-Гео. 09.07.2014. Архивировано из оригинала 28 ноября 2016 г. Проверено 28 ноября 2016 г.
  52. ^ "Руководство по проектированию движка спрайтов Snes" . 30 марта 2021 г. Архивировано из оригинала 04 декабря 2021 г.