如何获得“ 8位图形”外观?


10

我有很强的编程背景,但并非来自游戏开发。我在高中时只打过乒乓球和蛇,在大学时做了过OpenGL。

我想制作自己的游戏引擎。只是一个简单的2D游戏引擎就没什么了。但是因为我有点老派,而且感觉复古。我希望图形看起来像旧的8位游戏(《超人》,《魂斗罗》,《超级马里奥》等)。

那么,当时的旧游戏是如何制作的?我想要最简单的方法。他们现在是否还在像新引擎一样使用资产(图像)?如何使用OpenGL实现这种渲染?

记住。最简单的解决方案。我想知道当时的制作方法以及如何复制它。甚至不必是OpenGL。我可以在窗户画布上画画。我确实想从头开始。


6
8位图形是资产问题,而不是编程问题,我想您可以在代码中限制调色板,但这听起来有点过时。
路加B.

如果要使用8位图形,请在制作艺术资产时限制调色板,并始终对纹理使用最近邻过滤。
罗伯特·鲁哈尼

3
该站点不适合从何处着手以及使用哪种技术来解决问题。请参阅常见问题解答以在此处了解要问哪些类型的问题。您可以尝试改写您的问题,仅询问如何渲染8位图形,并删除有关制作游戏引擎的所有内容。
MichaelHouse

1
Byte56所说的话-如果您将其重新设计为更精确地针对特定主题,那么这可能是一个伟大而有用的问题。
Maximus Minimus 2012年

变了 希望现在更好。
Matjaz Muhic

Answers:


7

那么,当时的旧游戏是如何制作的?

完全不同-类似于我们现在所说的“嵌入式系统编程”。来自8位控制台和游戏机盒的基于模式的图形是由硬件而非软件驱动的。游戏代码(通常是汇编代码)在指令表(例如,每条扫描线上有X条指令)上戳入了专用存储器。

如何使用OpenGL实现这种渲染?

在关闭过滤的情况下对四边形进行纹理贴图。更好的是,将几个四边形一起批处理并为资产设置图集以提高性能。


“图集”的资产?这意味着什么?
Matjaz Muhic

将多个图像粘贴到一个纹理图像上并“拾取”,以使用四边形的UV进行显示。因此,例如,所有背景图块都可以网格化到一个纹理表上,然后只需要在渲染背景层之前绑定一个纹理即可。
Max

哦。像精灵?
Matjaz Muhic

@Matjaz:非常像精灵。这个词在3D图形加速器问世很久之前就具有不同的含义。
Ilmari Karonen
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.