精灵图简介
编辑在计算机图形学中,精灵是一个二维位图,它被集成到一个更大的场景中,最常见于 2D 视频游戏中。 最初,术语精灵指的是通过硬件与背景合成在一起的固定大小的对象。 从那以后,该术语的使用变得更加普遍。
带有硬件精灵的系统包括 1970 年代和 80 年代的街机视频游戏;游戏机和家用计算机。 硬件在支持的 sprite 数量、每个 sprite 的大小和颜色以及缩放或报告像素精确重叠等特殊效果方面各不相同。
精灵的硬件组合发生在为视频输出设备(例如 CRT)准备每条扫描线时,无需主 CPU 的参与,也不需要全屏帧缓冲区。可以通过设置硬件组合过程中使用的属性来定位或更改精灵。
每条扫描线可以显示的精灵数量通常低于系统支持的精灵总数。 例如德州仪器的TMS9918芯片支持32个精灵,但同一扫描线上只能出现4个。
现代计算机、视频游戏机和移动设备中的 CPU 速度足够快,无需特殊硬件协助即可将位图绘制到帧缓冲区中。 除此之外,GPU 可以与 CPU 并行渲染大量缩放、旋转、抗锯齿、部分半透明、非常高分辨率的图像。
精灵图词源
编辑根据 1979 年 Texas Instruments TMS9918 视频显示处理器的两名工程师之一 Karl Guttag 的说法,精灵一词来自 TI 的经理 David Ackley。 1970 年代后期,德州仪器 (TI) 的 Danny Hillis 也使用了它。
该术语源自这样一个事实,即精灵不是屏幕图像表中背景数据的一部分,而是漂浮在顶部而不影响下方帧缓冲区中的数据,很像幽灵或神话中的精灵。
一些硬件制造商使用不同的术语,尤其是在 sprite 变得普遍之前。
Player/Missile Graphics 是 Atari, Inc. 在 Atari 8 位计算机 (1979) 和 Atari 5200 控制台 (1982) 中使用的一个术语,用于表示硬件精灵。
该术语反映了对共享相同颜色的角色(玩家)和较小的相关对象(导弹)的使用。 早期的 Atari 视频计算机系统和一些 Atari 街机游戏使用播放器、导弹和球。
Stamp 在 20 世纪 80 年代初被用于一些街机硬件,包括吃豆人小姐。
MOS Technology 的图形芯片文献中使用了可移动对象块或 MOB。 Commodore 是 MOS 芯片的主要用户,在芯片制造商的大部分时间里都是 MOS 的所有者,他对 1982 年的 Commodore 64 使用了 sprite 一词。
NES、Super NES 和 Game Boy 的开发人员手册中使用了 OBJ(对象的缩写)。 用于存储精灵属性和坐标的 RAM 区域是 OAM(对象属性内存)。 这也适用于 Game Boy Advance 和 Nintendo DS。
精灵图历史
编辑街机视频游戏
精灵的使用起源于街机视频游戏。 Nolan Bushnell 在开发xxx款街机视频游戏 Computer Space (1971) 时提出了最初的概念。
技术限制使得早期大型机游戏 Spacewar 难以适应! (1962),它为每个小动作执行整个屏幕刷新,因此他想出了一个解决问题的方法:用专用晶体管控制每个单独的游戏元素。
火箭本质上是独立于背景在屏幕上移动的硬连线位图,这是一项重要的创新,可以更有效地生成屏幕图像并为精灵图形提供基础。
最早将玩家角色表示为人类玩家精灵的视频游戏是街机体育视频游戏,可以追溯到 1974 年 4 月发布的 Taito's TV Basketball,并授权给 Midway Manufacturing 在北美发布。
由 Tomohiro Nishikado 设计,他希望通过将矩形形状重新排列成看起来像篮球运动员和篮球篮筐的物体,超越简单的 Pong 风格矩形到角色图形。
Ramtek 后来于 1974 年 10 月发布了另一款体育视频游戏 Baseball,该游戏同样显示了类人角色。
Namco Galaxian 街机系统板,用于 1979 年的街机游戏 Galaxian,在滚动背景上显示动画、多色精灵。
它成为任天堂雷达瞄准镜和大金刚街机硬件以及任天堂娱乐系统等家用游戏机的基础。
根据通用计算机公司的 Steve Golson 的说法,当时使用术语 stamp 代替 sprite。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/198015/