打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
你知道GBA游戏是怎么开发的吗难度令人想不到!

https://m.toutiao.com/is/iJYQtMAK/?= 


你知道GBA小霸王的游戏开发难度多高吗?

GBA、GB和小霸王游戏机是曾经风靡一时的经典游戏平台,它们的游戏大多使用C语言和汇编语言进行编写。汇编语言是一种低级别的编程语言,直接与计算机硬件交互。当时的开发者需要深入了解硬件架构和硬件原理,才能编写出能在这些平台上运行的游戏。

GBA作为任天堂公司发布的一款掌机,采用了32位的ARM处理器。开发者使用的是C语言和汇编语言。由于CPU能力较低,因此,在程序性能要求较高,所以,开发者会使用汇编语言进行优化。编程工具方面,开发者通常使用GBA开发工具包(GBA SDK)来进行开发。

GBA SDK提供了一套简陋的开发工具和库。与GBA不同,GB游戏采用的是8位的Z80处理器。因为8位处理器的性能较弱,需要充分优化代码才能使游戏在有限的硬件资源下流畅运行。虽然有一些C语言的开发工具可供选择,但使用汇编语言仍然是开发者们的首选。

至于小霸王游戏机,它作为中国家喻户晓的红白机,同样采用了8位处理器。同样使用汇编语言进行开发,它的开发难度一样非常高。

比如口袋妖怪系列游戏,风靡全球几十年,每一部游戏背后都有庞大的开发团队支撑。例如,在口袋妖怪红宝石的开发中,参与人员包括程序员、美术设计师、音效设计师、脚本制作师等,总计超过100人。他们不仅要负责开发游戏主线剧情,还要设计数百种口袋妖怪形象、场景、音效等,同时还要解决各种技术难题。最后呕心沥血也就为了得到一个几MB的游戏文件。

虽然游戏的文件大小只有几MB,但是开发团队需要处理的技术细节包括以下五项:

1)硬件操作

ARM架构的游戏机,使用汇编语言进行开发时,需要直接操作各种硬件寄存器和设备,包括寄存器、内存、显存等。这是一个技术难度很大的工作。

2)内存管理

开发者需要合理分配内存空间来存储游戏的代码、数据和资源,以及处理内存分配和释放。

3)显示引擎

在使用汇编语言进行开发时,需要编写复杂的图形渲染代码来实现游戏的绘制、动画和特效等效果。这包括对图像数据、调色板、显示模式等进行操作,并根据需要进行图形几何数学变换等处理。

4)输入和控制

GBA的输入和控制设备有独特的接口和协议,包括按键、触摸屏、声音等。需要编写相应的中断处理和设备驱动程序。

5)大量调试

GBA SDK没有提供良好的调试工具,使用汇编代码进行调试是一件令人极度崩溃的事情。整个开发团队需要花费巨大的时间和精力完成BUG的排除,通常少则半年,多则数年。

所以,在那个硬件性能局限的时代,没有贴图文件、没有视频文件,仅靠一行一行的汇编代码实现图像的绘制。连音频都需要由代码进行合成。一个几MB的游戏凝聚着整个游戏公司的全部心血。但在那时候的游戏,的确是最好玩的。

我敢这样说,当时的游戏开发难度远远超过现在的web开发工程师和APP开发工程师。说到汇编语言,我想今天,能够熟练掌握这门语言,并且对硬件非常熟悉的程序员少之又少。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
GIAC现场,Mob带你领略“智能化+人性化”的未来开发场景
大疆(Dji)SDK思路前的准备(上)
机智云产品、功能、服务一览表
VR全视角:一篇文看懂VR产业链
Diao到爆的虚拟现实,其实只是一场虚假繁荣?
腾讯VR计划完全曝光 野心不亚于下一个微信
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服