스프라이트(컴퓨터 그래픽스)

Sprite (computer graphics)
브로포스의 탱크 및 로켓 스프라이트

컴퓨터 그래픽스에서 스프라이트2차원 비트맵으로, 대부분 2D 비디오 게임에서 더 큰 장면에 통합됩니다.원래 스프라이트라는 용어는 하드웨어에 의해 [1]배경과 함께 구성된 고정된 크기의 개체를 가리킵니다.그 이후로 그 용어의 사용은 더욱 일반화되었다.

하드웨어 스프라이트가 있는 시스템에는 1970년대와 1980년대의 아케이드 비디오 게임, Atari VCS(1977), ColecoVision(1982), Nintendo Entertainment System(1983), Sega Genesis(1988) 등의 게임 콘솔, TI-99/4A(1979), Cormodore-879비트 제품군 가정용 컴퓨터가 포함됩니다.nd X68000(1987)하드웨어는 지원되는 스프라이트의 수, 각 스프라이트의 크기와 색상, 픽셀의 정밀도를 조정하거나 보고하는 등의 특수 효과가 겹칩니다.

스프라이트의 하드웨어 구성은 각 스캔 라인CRT 의 비디오 출력 디바이스용으로 준비될 때 메인 CPU의 관여 없이 풀스크린 프레임 [1]버퍼가 필요하지 않게 됩니다.스프라이트는 하드웨어 구성 프로세스 중에 사용되는 속성을 설정하여 위치를 변경하거나 변경할 수 있습니다.스캔 라인당 표시할 수 있는 스프라이트의 수는 시스템이 지원하는 총 스프라이트의 수보다 낮은 경우가 많습니다.예를 들어, Texas Instruments TMS9918 칩은 32개의 스프라이트를 지원하지만 동일한 스캔 라인에 4개만 나타날 수 있습니다.

최신 컴퓨터, 비디오 게임 콘솔 및 모바일 디바이스의 CPU는 특별한 하드웨어 지원 없이도 비트맵을 프레임 버퍼에 가져올 수 있을 만큼 충분히 빠릅니다.게다가 GPU는, 방대한 수의 스케일링, 회전, 에일리어스 방지, 부분 반투명, 고해상도 화상을 CPU와 병렬로 렌더링 할 수 있습니다.

역사

아케이드 시스템

스프라이트의 사용은 아케이드 비디오 게임에서 비롯되었다.놀런 부쉬넬은 최초의 아케이드 비디오 게임인 컴퓨터 스페이스(1971년)를 개발했을 때 독창적인 개념을 생각해냈다.기술적인 한계로 인해 초기 메인프레임 게임 Spacewar!(1962)를 적응시키는 것이 어려웠기 때문에, 그는 이 문제에 대한 해결책을 생각해 냈습니다. 즉, 전용 트랜지스터로 각각의 게임 요소를 제어하는 것입니다.로켓은 기본적으로 백그라운드에서 독립적으로 화면을 이동하는 유선 비트맵으로, 화면 이미지를 보다 효율적으로 제작하고 스프라이트 [2]그래픽의 기반을 제공하기 위한 중요한 혁신입니다.

플레이어 캐릭터를 인간 플레이어 스프라이트로 표현한 최초의 비디오 게임은 1974년 4월에 발매된 타이토TV [3][4][5]농구에서 유래한 아케이드 스포츠 비디오 게임으로, 미드웨이 제조에 북미 [6]출시를 허가받았다.니시카도 토모히로가 디자인한 그는 단순한 퐁 스타일의 직사각형을 넘어 농구선수[7][8]농구후프처럼 보이는 물건으로 직사각형 모양을 재배치해 캐릭터 그래픽으로 옮기고 싶었다.람텍은 1974년 10월 비슷한 인물들을 [9]보여주는 또 다른 스포츠 비디오 게임[6]야구를 출시했다.

1979년 아케이드 게임 Galaxian의 Namco Galaxian 아케이드 시스템 보드는 스크롤 [10]배경에 애니메이션, 다양한 색상의 스프라이트를 표시합니다.그것은 닌텐도의 레이더 스코프와 동키콩 아케이드 하드웨어와 닌텐도 엔터테인먼트 [11]시스템 같은 가정용 콘솔의 기반이 되었다.General Computer Corporation의 Steve Golson에 따르면,[12] 당시에는 "스프라이트" 대신 "스탬프"라는 용어가 사용되었다고 합니다.

홈 시스템

시그네틱스는 가정용 시스템용 스프라이트 그래픽(시그네틱스에 의해 객체라고 )을 생성할 수 있는 최초의 칩을 고안했습니다.시그네틱스 2636 비디오 프로세서는 1978년 1292년형 Advanced Programmable Video System에서 처음 사용되었으며 1979년형 Elektor TV Games Computer에서 사용되었습니다.

1977년에 출시된 Atari VCS에는 5개의 그래픽 객체를 게임 플레이필드와 독립적으로 이동할 수 있는 하드웨어 스프라이트 구현이 있습니다.당시에는 스프라이트라는 용어가 사용되지 않았다.VCS의 스프라이트는 프로그래밍 매뉴얼에서 이동 가능한 개체로 불리며, 2명의 플레이어, 2개의 미사일 및 1개[13]공으로 더 자세히 식별됩니다.각각은 스캔 라인에 표시되는 픽셀의 단일 행으로 구성됩니다.2차원 모양을 만들기 위해 스프라이트의 단일 행 비트맵은 소프트웨어에 의해 스캔 라인 간에 변경됩니다.

1979년식 아타리 400800 가정용 컴퓨터에는 8비트 와이드 플레이어 4개와 2비트 와이드 미사일 4개 등 스캔 라인당 8개의 단색 물체를 이동할 수 있는 유사하지만 보다 정교한 회로가 있습니다.각각은 디스플레이의 풀 하이트이며, 길고 얇은 스트립입니다.메모리 테이블의 DMA는 각 스캔 라인에 대해 그래픽 패턴 레지스터를 자동으로 설정합니다.하드웨어 레지스터는 각 플레이어와 비산물의 수평 위치를 제어합니다.수직 운동은 플레이어 또는 비산물의 스트립 내에서 비트맵 데이터를 이동함으로써 이루어집니다.이 기능은 Atari에 의해 플레이어/미사일 그래픽이라고 불렸습니다.

스프라이트라는 용어는 Texas Instruments 9918(A) 비디오 디스플레이 프로세서(VDP)[14]의 정의자 중 하나에서 그래픽 의미로 처음 사용되었습니다.이 용어는 1970년대 [15]후반 텍사스 인스트루먼트의 대니 힐리스에 의해 처음 사용되었다.이 용어는 스프라이트가 프레임 버퍼의 비트맵 데이터의 일부가 아니라 아래 프레임 버퍼의 데이터에 영향을 주지 않고 위에서 "떠다니는" 것이 고스트 또는 "스프라이트"와 비슷하다는 사실에서 유래되었습니다.이때 스프라이트는 소프트웨어 오버헤드를 최소화하면서 완전한 2차원 형상을 화면 좌우로 이동할 수 있는 수준까지 발전했다.

하드웨어 스프라이트가 있는 시스템

이는 기본 하드웨어 사양이며 래스터 인터럽트를 사용하여 미드프레임 스프라이트의 용도를 변경하는 등의 추가 프로그래밍 기술은 포함되지 않습니다.

시스템. 스프라이트 하드웨어 소개했다 화면에 스프라이트가 표시됨 스프라이트 온라인 온라인 최대 문자 텍스처 텍스처 높이 색상 회전 충돌 검출 투명도 원천
암스트라드 플러스 1990 16 16 ? 16 16 15 2, 4×수직, 2, 4×수평 아니요. 아니요. 컬러 키 [16]
아타리 2600 TIA 1977 5 5 19 1, 8 262 1 2, 4, 8×수평 수평 미러링 네. 컬러 키 [17]
Atari 8비트 패밀리 GTIA/ANTIC 1979 8 8 40 2, 8 128, 256 1 2×수직, 2, 4×수평 아니요. 네. 컬러 키 [18]
코모도어 64 VIC-II 1982 8 8 96, 192 12, 24 21 1, 3 2배 정수 아니요. 네. 컬러 키 [19]
아미가(OCS) 데니스 1985 수평으로 4픽셀 단위로 재사용 가능 임의, 8개 고유 임의 16 임의 3, 15 표시 목록별 수직 아니요. 네. 컬러 키 [20]
아미가(AGA) 리사 1992 수평으로 2픽셀 단위로 재사용 가능 임의, 8개 고유 임의 16, 32, 64 임의 3, 15 표시 목록별 수직 아니요. 네. 컬러 키
콜레코비전 TMS9918A 1983 32 4 64 8, 16 8, 16 1 2배 정수 아니요. 부분적 컬러 키
TI-99/4 및 4A TMS9918 1979 32 4 64 8, 16 8, 16 1 2배 정수 아니요. 부분적 컬러 키
가메두이노 2011 256 96 1,536 16 16 255 아니요. 네. 네. 컬러 키 [21]
인텔리비전 STIC AY-3-8900 1979 8 8 64 8 8,16 1 2, 4, 8×수직, 2×수평 수평 및 수직 미러링 네. 컬러 키 [22]
MSX TMS9918A 1983 32 4 64 8, 16 8, 16 1 2배 정수 아니요. 부분적 컬러 키 [23]
MSX2 야마하 V9938 1986 32 8 128 8, 16 8,16 회선당 1, 3, 7, 15 2배 정수 아니요. 부분적 컬러 키
MSX2+ / MSX 터보 R 야마하 V9958 1988 32 8 128 8,16 8,16 회선당 1, 3, 7, 15 2배 정수 아니요. 부분적 컬러 키
남코 팩맨
(표준)
TTL 1980 6 6 96 16 16 3 아니요. 수평 및 수직 미러링 아니요. 컬러 키 [24]
TurboGrafx HuC6270A 1987 64 16 256 16, 32 16, 32, 64 15 아니요. 수평 및 수직 미러링 네. 컬러 키 [25]
남코 갤럭시안
(표준)
TTL 1979 7 7 112 16 16 3 아니요. 수평 및 수직 미러링 아니요. 컬러 키 [26][27][28]
닌텐도 당나귀 콩, 레이더 스코프
(표준)
1979 128 16 256 16 16 3 정수 아니요. 네. 컬러 키 [29]
닌텐도 DS 통합 PPU 2004 128 128 1,210 8, 16, 32, 64 8, 16, 32, 64 65,536 아핀 아핀 아니요. 색상 키, 혼합 [30]
NES/패미컴 리코 RP2C0x PPU 1983 64 8 64 8 8, 16 3 아니요. 수평 및 수직 미러링 부분적 컬러 키 [31]
게임보이 통합 PPU 1989 40 10 80 8 8, 16 3 아니요. 수평 및 수직 미러링 아니요. 컬러 키 [32]
게임보이 어드밴스 통합 PPU 2001 128 128 1210 8, 16, 32, 64 8, 16, 32, 64 15, 255 아핀 아핀 아니요. 색상 키, 혼합 [33]
마스터 시스템,
게임 기어
YM2602B VDP
(TMS9918 유래)
1985 64 8 128 8, 16 8, 16 15 2배 정수, 2배 수직 백그라운드 타일 미러링 네. 컬러 키 [34][35]
Genesis / 메가 드라이브 YM7101 VDP
(SMS VDP 파생)
1988 80 20 320 8, 16, 24, 32 8, 16, 24, 32 15 아니요. 수평 및 수직 미러링 네. 컬러 키 [36][37]
Sega OutRun (아케이드) 1986 128 128 1600 8 ~ 512 8 ~ 256 15 이방성 수평 및 수직 미러링 네. 알파 [38][39][40][41][42][43][44]
X68000 신시아 주니어(원제), 신시아(후기 모델) 1987 128 32 512 16 16 15 2배 정수 수평 및 수직 미러링 부분적 컬러 키 [45][46][47]
네오 지오 LSPC2-A2 1990 384 96 1536 16 16 ~ 512 15 사이다 수축 수평 및 수직 미러링 부분적 컬러 키 [48][49][50]
슈퍼NES/슈퍼패미컴 S-PPU1, S-PPU2 1990 128 34 256 8, 16, 32, 64 8, 16, 32, 64 15 아니요. 수평 및 수직 미러링 아니요. 색상 키, 평균화 [51]
시스템. 스프라이트 하드웨어 소개했다 화면에 스프라이트가 표시됨 스프라이트 온라인 온라인 최대 문자 텍스처 텍스처 높이 색상 하드웨어 줌 회전 충돌 검출 투명도 원천

동의어

일부 하드웨어 제조업체는 특히 스프라이트가 보편화되기 전에 서로 다른 용어를 사용했습니다.

플레이어/미사일 그래픽스는 아타리 8비트 컴퓨터(1979년)와 아타리 5200 콘솔(1982년)[52]의 하드웨어 스프라이트를 위해 아타리 주식회사가 사용한 용어입니다.이 용어는 동일한 색상을 공유하는 문자("플레이어")와 더 작은 관련 개체("미사일")에 대한 사용을 나타냅니다.이전의 아타리 비디오 컴퓨터 시스템과 일부 아타리 아케이드 게임도 스프라이트를 위해 플레이어, 미사일, 사용했다.

스탬프는 1980년대 초반 팩맨[12]포함한 일부 오락실 하드웨어에 사용되었다.

MOS 테크놀로지의 그래픽 칩 자료에는 MOB(Movable Object Block)가 사용되었습니다.MOS 칩의 주요 사용자이자 칩 제조사의 대부분의 생애 동안 MOS의 소유주인 코모도어는 코모도어 64를 위해 스프라이트라는 용어를 사용했다.

OBJ(개체 줄임말)는 NES, Super NES 및 Game Boy용 개발자 설명서에 사용됩니다.스프라이트 속성 및 좌표를 저장하는 데 사용되는 RAM 영역은 OAM(Object Attribute Memory)입니다.이것은 게임보이 어드밴스와 닌텐도 DS에도 적용된다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ a b Hague, James. "Why Do Dedicated Game Consoles Exist?". Programming in the 21st Century. Archived from the original on 2018-04-23. Retrieved 2019-09-02.
  2. ^ Swalwell, Melanie; Wilson, Jason (12 May 2015). The Pleasures of Computer Gaming: Essays on Cultural History, Theory and Aesthetics. McFarland & Company. pp. 109–10. ISBN 978-0-7864-5120-3. Archived from the original on 16 May 2021. Retrieved 16 May 2021.
  3. ^ Colby, Richard; Johnson, Matthew S. S.; Colby, Rebekah Shultz (27 January 2021). The Ethics of Playing, Researching, and Teaching Games in the Writing Classroom. Springer Nature. p. 130. ISBN 978-3-030-63311-0. Archived from the original on 3 May 2021. Retrieved 3 May 2021.
  4. ^ 골든 에이지 아케이드 히스토리 Wayback Machine에서 비디오 게임 최초 아카이브 2017-11-05 (2013년 11월 22일)
  5. ^ 농구 플라이어 2014-07-08 Wayback Machine(1974), 아케이드 플라이어 뮤지엄에 보관
  6. ^ a b Akagi, Masumi (13 October 2006). アーケードTVゲームリスト国内•海外編(1971-2005) [Arcade TV Game List: Domestic • Overseas Edition (1971-2005)] (in Japanese). Japan: Amusement News Agency. pp. 40–1, 51, 129. ISBN 978-4990251215.
  7. ^ Smith, Alexander (19 November 2019). They Create Worlds: The Story of the People and Companies That Shaped the Video Game Industry, Vol. I: 1971-1982. CRC Press. pp. 191–95. ISBN 978-0-429-75261-2. Archived from the original on 2 May 2021. Retrieved 16 May 2021.
  8. ^ "スペースインベーダー・今明かす開発秘話――開発者・西角友宏氏、タイトー・和田洋一社長対談" [Space Invader, Development Secret Story Revealed Now―Interview With Developer Tomohiro Nishikado, Taito President Yoichi Wada]. The Nikkei (in Japanese). March 21, 2008. Archived from the original on March 23, 2008. Retrieved 3 May 2021.
  9. ^ Thorpe, Nick (March 2014). "The 70s: The Genesis of an Industry". Retro Gamer. No. 127. pp. 24–7.
  10. ^ Dillon, Roberto (19 April 2016). The Golden Age of Video Games: The Birth of a Multibillion Dollar Industry. CRC Press. ISBN 9781439873243 – via Google Books.
  11. ^ 일본 닛케이전자(1994년 9월 12일)
  12. ^ a b Steve Golson (2016). Classic Game Postmortem: 'Ms. Pac-Man' (Conference). Game Developers Conference. Event occurs at 20:30. Retrieved 2017-01-26. […] 6 moving characters, what you would call today "sprites" we called them "stamps" back then, […].
  13. ^ Wright, Steve (December 3, 1979). "Stella Programmer's Guide" (PDF). Archived (PDF) from the original on March 27, 2016. Retrieved April 14, 2016.
  14. ^ "Karl Guttag Conference on Delphi TI Net - comp.sys.ti Google Groups". Archived from the original on 2013-05-30. Retrieved 2009-11-29.
  15. ^ Johnstone, Bob (2003). Never Mind the Laptops: Kids, Computers, and the Transformation of Learning. p. 108. ISBN 978-0595288427.
  16. ^ "Plus - CPCWiki". Cpcwiki.eu. Archived from the original on 2011-07-20. Retrieved 2009-11-29.
  17. ^ "Television Interface Adaptor". AtariArchives.com. Archived from the original on 2010-08-25. Retrieved 2011-02-06.
  18. ^ "Atari 5200 FAQ - Hardware Overview". AtariHQ.com. Archived from the original on 2011-05-14. Retrieved 2011-02-06.
  19. ^ "The MOS 6567/6569 video controller (VIC-II) and its application in the Commodore 64". Archived from the original on August 30, 2006. Retrieved 2006-01-08.{{cite web}}: CS1 maint: bot: 원래 URL 상태를 알 수 없습니다(링크).
  20. ^ "Amiga Hardware Reference Manual 4: sprite hardware". 1989. Archived from the original on 2017-08-14. Retrieved 2017-05-23.
  21. ^ "Gameduino Specifications". excamera.com. Archived from the original on 2021-12-13. Retrieved 2011-06-13.
  22. ^ "STIC - Intellivision Wiki". wiki.intellivision.us. Archived from the original on 9 July 2018. Retrieved 15 March 2018.
  23. ^ TEXAS INSTRUMENTS 9900: TMS9918A/TMS9928AITMS9929A Video Display Processors (PDF). Archived from the original (PDF) on 2017-08-14. Retrieved 2011-07-05.
  24. ^ Montfort, Nick; Bogost, Ian (9 January 2009). Racing the Beam: The Atari Video Computer System. MIT Press. ISBN 9780262261524 – via Google Books.
  25. ^ "Learn Multi platform 6502 Assembly Programming... For Monsters! Platform Specific Series". Archived from the original on 2021-12-04. Retrieved 2021-12-04.
  26. ^ "Galaxian-derived video hardware". GitHub. MAME. Archived from the original on November 30, 2017. Retrieved October 23, 2018.
  27. ^ "Galaxian-derived hardware". GitHub. MAME. Archived from the original on September 5, 2018. Retrieved October 23, 2018.
  28. ^ "Galaxian hardware family". GitHub. MAME. Archived from the original on February 24, 2021. Retrieved October 23, 2018.
  29. ^ Nathan Altice(2015), I Am Error: 닌텐도 패밀리 컴퓨터 / 엔터테인먼트 시스템 플랫폼, 53 & 69 페이지 2016-11-12 웨이백 머신, MIT 프레스 아카이브
  30. ^ "Specifications". Nocash.emubase.de. Archived from the original on 2009-06-21. Retrieved 2009-11-29.
  31. ^ "Microsoft Word - NESDoc.doc" (PDF). Archived (PDF) from the original on 2011-09-30. Retrieved 2009-11-29.
  32. ^ "GameBoy - Spielkonsolen Online Lexikon". At-mix.de. 2004-06-22. Archived from the original on 2010-05-06. Retrieved 2009-11-29.
  33. ^ "Specifications". Nocash.emubase.de. Archived from the original on 2009-06-21. Retrieved 2009-11-29.
  34. ^ Charles MacDonald. "Sega Master System VDP documentation". Archived from the original on 2014-03-18. Retrieved 2011-07-05.
  35. ^ "Sega Master System Technical Information" (TXT). Smspower.org. Archived from the original on 2019-06-24. Retrieved 2016-11-28.
  36. ^ "Sega Programming FAQ October 18, 1995, Sixth Edition - Final". Archived from the original on January 22, 2005. Retrieved 2015-12-10.
  37. ^ Staff, Polygon (2015-02-03). "How Sega built the Genesis". Polygon. Archived from the original on 2015-11-03. Retrieved 2016-11-28.
  38. ^ "Sega Out Run Hardware (Sega)". System 16. 2016-03-31. Archived from the original on 2016-11-28. Retrieved 2016-11-28.
  39. ^ "mame/segaorun.c at master · mamedev/mame · GitHub". github.com. 21 November 2014. Archived from the original on 21 November 2014. Retrieved 15 March 2018.
  40. ^ "Out Run". 2001-02-27. Archived from the original on 2001-02-27. Retrieved 2016-11-28.
  41. ^ "Out Run Hardware (Sega)". System 16. Archived from the original on 2016-11-28. Retrieved 2009-11-29.
  42. ^ "Version 0.3 - 7th February 1998". Coinop.org. Archived from the original on 2016-05-14. Retrieved 2016-11-28.
  43. ^ "Sega 16-bit common hardware". Archived from the original on 2016-01-25. Retrieved 2016-02-09.
  44. ^ "Sega "X-Board" hardware notes". Archived from the original (TXT) on 2014-03-18. Retrieved 2016-11-28.
  45. ^ "X68000-Computer Museum". Museum.ipsj.or.jp. Archived from the original on 2014-10-02. Retrieved 2016-11-28.
  46. ^ "mame/x68k.c at master · mamedev/mame · GitHub". github.com. 21 November 2014. Archived from the original on 21 November 2014. Retrieved 15 March 2018.
  47. ^ Yoshida, Koichi (12 September 2001). "超連射68K 開発後記". Yosshin's web page (in Japanese). Archived from the original on 12 May 2019. Retrieved 2016-11-28. (슈메플리케이션 번역).2019-07-02 Wayback Machine에 보관).
  48. ^ "Neo-Geo MVS Hardware Notes" (TXT). Furrtek.free.fr. Archived from the original on 2018-09-16. Retrieved 2016-11-28.
  49. ^ "Neo-Geo Programming Manual" (PDF). Furrtek.free.fr. Archived (PDF) from the original on 2016-12-06. Retrieved 2016-11-28.
  50. ^ "Big List of Debug Dipswitches". Neo-Geo. 2014-07-09. Archived from the original on 2016-11-28. Retrieved 2016-11-28.
  51. ^ "snes sprite engine design guide". Archived from the original on 2021-12-04.
  52. ^ "De Re Atari". 1981. Archived from the original on 2017-07-31. Retrieved 2017-08-10.