将瓷砖放置在水平角上的这种技术是否有名称?


9

在开发旧游戏时,一种非常常见的方法是将图块设置在某个关卡的角上,以用作参考。例如:

示例级别

在此级别上,开发人员在左上角放置了一组磁贴。

但是这种技术有名字吗?我正在为此写一本手册,我想起个名字。

Answers:


8

我不知道是否有名字,但这似乎是您为了节省内存而要做的事情。

首先,基本图块的分辨率非常低-仅有几个像素。但是在渲染时,它们会被放大2倍,3倍,4倍等,并且在屏幕上更加“块状”。

接下来,较早的游戏将具有一块专门用于屏幕显示的内存-内存中的内容就是屏幕上显示的内容。请记住,在较旧的平台上,内存非常紧张,因此,作为开发人员,您想节省每一分钱。

因此,您无需将磁贴放置到单独的内存空间中,只需将它们作为屏幕内存的一部分即可,从而节省了一些时间。当然,这是因为它们会显示在屏幕上。

从内存访问的角度来看,代码并不关心所访问的内存是用于屏幕内存还是变量存储。基本上,旧游戏中的内存管理非常简单,只有一块可用内存。没有GPU,因此不知道将单独的处理器和内存用于编程和屏幕显示。

为了让人们更清楚地了解早期游戏的编程记忆力,以下引用了1983年一篇有关对Atari和VIC计算机进行编程的文章: “ Atari的超高分辨率屏幕(以及16色GTIA模式)使用了将近8K的内存。” 这似乎很少,但是请记住,计算机可能只有48K的内存,其中很多内存被游戏以外的其他东西占用。


谢谢您的回答!我知道这种技术对于在旧控制台上进行开发很普遍。由于我们现在有很多内存,您是否知道它当前是否用于游戏开发?
Macabeus

3
@Macabeus现代游戏对视频内存的处理类似。是的,有更多的内存,游戏也更大……在PC上。有针对移动/手持平台的现代游戏。同时分配所有您需要的内存,以确保它们不会导致性能中间值的下降。纹理图集仍然是一个好主意,因为切换纹理需要一定的成本。许多游戏将模型存储在视线之外,并在需要时将其移动。实际上,某些粒子系统以这种方式工作。
Theraot

这没有意义。如果图块数据存储在地图数据之前/旁边,则不会显示为文字图块。根据这些图块内部像素的颜色,它看起来像一堆看似随机的图块。例如,您可以在某些马里奥游戏(超级马里奥大地2和超级马里奥兄弟3)中进行内存探索时看到VRAM数据,它看起来像一堆随机磁贴。而且,那些当年的理智的程序员会更好地优化地图,不会有巨大的空白区域。
巴林(Bálint)

您提到的计算机和大多数控制台都确实在乎定义图形的位置,因为它们没有可编程的图形管线。这些计算机甚至没有一个合适的图形系统,那些不得不被定义为字符(在极少数情况下,设置像素是可能的,但很慢)
巴林特

我在1984年拥有一架Atari 800,但
Tim Holt

8

这是一个调色板。同样,您会看到一些艺术家在处理色彩。它们绘制了一组主要颜色,甚至在它们之间形成渐变以方便访问。使用选择器工具选择下一个颜色要比进入颜色选择器轮盘要花几分钟,然后祈祷它与图片的其余部分匹配,要容易得多。

与图块相同,因为大多数图块编辑器都是非常高级的pixelart程序,但使用图块而不是颜色。


我可以说您和蒂姆·霍尔特的答案都是正确的,对吗?由于调色板存储在tilemap中,因此它可用作调色板并节省内存。
Macabeus
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.