#4程序实现
程序的生活不是在修bug就是在修bug的路上。
一开始搭建Demo的时候,团子只是个圆形Sprite,衣架是三角形,衣服是矩形。在初始考虑实现阳光充能的时候,想的是计算面积的在阳光下的占比。这对于矩形的衣服来说是非常容易计算的,但其实我们真正以后要引入的衣服一定都是不规则的,那到时候计算就会麻烦并且耗费时间。所以最后敲定的解决方案是,在衣服内部动态生成一定数量的点,只有当阳光照亮到了特定数量的点,衣服才会开始晾干。被照到点的数量也会影响晾干的速度。
当然这一切都是一个程序在没拿到美术资源的时候的幻想。拿到美术资源之后,着手要对于团子进行状态机的搭建来适配动画的切换。诶嘿,这bug不就来了。什么团子突然飞掉了,突然卡在某个动画不动了。这些都是家常便饭,不过程序的乐趣不就是在Debug,Debug,Debug。
我们的主美兼策划对于游戏质量的把控非常高,后面也提出了剧情系统的需求。这是我就要挠头了,这么短的时间怎么去搭一个剧情系统呢。好吧只能依靠插件了,幸好我们后面有了树树程序员的加入,才让我们能够依靠这个插件实现了一个还算不错的剧情表现。
一个优秀的游戏代码,应该能够在关卡搭建的时候对组件物品实现热插拔。在考虑写代码的时候,没有哪一刻不在思考怎么实现这样的一个目标的。需要在编辑器里拖拖拽拽也太麻烦了吧!
最后对于UI的搭建,起初的考虑是用全局的UI管理器搭配对象池进行使用。不过后来考虑目前我们的游戏还只是个轻量级游戏,就暂时没有引入对象池。只是引入了单例的UI管理器,并实现了在其之下的层级管理。以后游戏继续更新体量,就会考虑引入对象池。
从一步步到玩法白盒,到我们的主美一步步把资源抬上来,到我们的音乐导入他制作的音乐音效。看着从零开始的游戏一步步变得丰富,变得好玩,没什么会比这个更让人开心兴奋了。