天才一秒记住【热天中文网】地址:https://www.rtzw.net
一只向前奔跑的恐龙、不断生成新障碍的地图、向后飞的翼龙、昼夜的更替。
这样当然是一个常规的解决方案,但有的时候只需要简单的逆向思考一番,便可以看到一个全新的世界。
现在將所有可供识別的特徵移除,整个场景便化为了一个静止不动的元素,以及一个正在不断后撤的地面。
没错,运动是相对的,与其让小恐龙真的向前跑去,倒不如让世界向它而来。
如果採用前者的方案,在实现这个过程的时候一切都是相对运动的,他还需要额外处理镜头的跟踪工作。
若是改用后者,一切可就都不同了。
翼龙和仙人掌的区別,只有y轴的差异和运动速度的不同。
这样一来他便可以用同一套控制函数来控制两者,而不必编写一大堆没必要的冗余。
一下子,整个作品的难度陡降一大截。
於是乎没有用多久,这部分便也被他完成了。
此时时间才堪堪过去几分钟。
接下来林琅打算把昼夜的更替加入。
一个仅有少量顏色的像素作品,想要实现这个效果实在太过轻易。
仅需对渲染的函数加入些许修改。
在原本的逻辑下,渲染会根据指示的坐標绘製对应的黑色像素块。
將这个黑色像素块修改为引用,並为背景也添加单色的绘製。
再次建立一个队列,跟序列帧动画的逻辑类似,只不过这一次填入的是多组顏色。
在帧更新中设计一套计时器,渲染则会根据计时器来决定何时更换下一套顏色。
白天,就背景为灰白色,恐龙和障碍为灰黑色。
傍晚,则替换成另一套更加昏暗的色盘。
而午夜就只需要將白天的色盘对调一下即可。
最后几分钟的时间则是为恐龙加入了跳跃的控制输入,以及碰撞检测。
隨后加入分数的保存和记录,小恐龙便完工了。
整个过程林琅甚至没有调试半次,连预览都没有打开。
这番操作看在许瀚文眼里,便是只知道他在炫技,而不清楚他到底想要做一个什么东西。
不过答案很快就要揭晓了。
隨著倒计时结束,林琅也按下了运行键。
本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!