笔者小学读的是子弟校,班上同学们都住的很近,每天放学后,寒暑假都习惯聚在一起玩。作为八零后,FC 红白机是当时最流行的娱乐方式之一。好朋友们三五成群聚在电视机前,一起闯关或者 PK,那段简单而快乐的时光让人终生难忘。

长大以后,我的这些小学同学们虽然天各一方,彼此没怎么再见过面,但是儿时的友谊还在,我们时不时还在小学微信群里聊上几句。

有一天,一个小学玩的很好的朋友在微信群里评论我说,“如果咱们上学的时候有直播平台,你当时肯定也可以成为一个网红游戏 Up 主了”。

这同学这样说,是因为我小时候玩 FC 时喜欢动脑筋钻研,小伙伴们有玩不过去的关卡,我最后总能找到通关的方法,我的游戏水平要略高于其他小伙伴一点点。时间长了就在我们那个小小的游戏圈子里有了一点点名气。

我记得很清楚,小时候家里有一本台历,过一天撕一页那种。我当时就在台历上,每一页都密密麻麻写着一个 FC 游戏的攻关诀窍,秘诀等等,完全是个人原创。很可惜的是后来搬过几次家,这本台历也不知所踪。

现在回忆起来,这本写于上世纪八十年代末的台历,算不算是笔者最早的技术分享文章?

在 SAP UI5 应用里重温儿时经典的红白机游戏

一个 SAP 开发工程师十余年的技术写作之路回顾

回到 SAP UI5 应用里运行游戏,笔者之前已经发布过的很多文章,已经详细介绍了技术思路。

SAP UI5 实现的经典俄罗斯方块

SAP UI5 实现的经典打砖块游戏

SAP UI5 实现的贪食蛇游戏

这些游戏实现无非就两个步骤:

1. 在 SAP UI5 XML 视图里定义 HTML 原生的 canvas 元素

2. 在 SAP UI5 控制器里,使用 JavaScript 调用 HTML canvas 的画图 API.

下面是我这个 XML 视图的实现,其中第 10 行定义了一个空的 VBox 控件,在运行时我在控制器代码里会动态创建一个 canvas 元素,然后扔到这个 VBox 里。

VBox 下面就是一个 HBox,里面从左到右依次平铺 5 个按钮,分别实现 FC 游戏 Rom 的选择,启动游戏,开启游戏音频,暂停游戏,和缩放游戏画面的控制逻辑。

该 SAP UI5 应用界面如下图所示,点击「选择 ROM」按钮,从本地加载一个 FC 游戏的 ROM 文件,再点击启动按钮,就可以在浏览器里运行游戏了:
效果如下:
控制器的实现讲解,我放到了我的 SAP UI5 开发教程里: