简介就不必多说了,pico-8作为一个简单的并不存在主机在圈子内有着相当高的名气,尽管整体名声不大,但是以其完善的内容,简单的设计,是的开发一款demo游戏容易很多(蔚蓝便是代表作),所以我也入手并尝试这进行一个游戏的做。
概述
pico-8整体开发是基于LUA的,整体的设计理念非常清晰整洁。内置了代码、sprite绘制、tile绘制、音效和音乐,一应俱全,可以很方便的完成开发。
游戏的核心流程由三个函数控制:
function _init()
end
function _update()
end
function _draw()
end
其实也很好理解,_init
用于初始化参数,_update
用于更新数据和执行动作,_draw
用于绘制内容。
从某个层面上来看,pico-8更像是在canvas上画画这样的,也因此其开发难度并不大。
设计细要
整体来看的话这部分其实就是编码的工作,但是依旧有很多值得讨论的细节。
- pico-8具有一个颜色的缓冲,如果在绘制新的内容时不添加颜色参数,那么其可能会仍使用之前的颜色
- pico-8程序是不停的循环
_update
函数和_draw
函数,这一点有点像arduino,同时顺序是先进行update再进行draw操作。 - pico数字是16位的(最大32768),由于lua语言的特性,可以方便的使用字符串来表示数字
- pico的复杂对象使用等号得到的是引用
- for i in all(table)更方便面对需要删除部分元素的情况
整体来说,pico-8的游戏开发简化了很多繁琐的细枝末节,也因此可以很方便的用于开发一个原型或者demo。当然,过量的简化也会带来一些有趣的问题,例如复杂的代码嵌套,计算机图形学的一些东西,因此要想开发一个好的demo也是有难度的。