【Unity】个人小游戏SunnyLand总结

断断续续地做了快一个月,总算是完成了这个小游戏。源码请见GitHub

虽然简陋,甚至关卡不全,毕竟是自己独立完成的第一个游戏,具有长远的纪念意义。

01

写篇总结记录一下,几年后再翻出来看,也是青春的回忆(x)。

回想这一个多月,有开心也有痛苦。开心当然就是实现了预期的效果,游戏顺利跑起来的时候,痛苦当然就是修莫名其妙的bug的时候。

在制作过程中我也学到了不少在学校学不到的东西:
1.以前掌握的知识在如何灵活的在实际中运用。
2.遇到解决不了的问题,如何使用搜索引擎解决(笑)。
3.体验到游戏一整套的工作流程,程序美术音效,虽然粗糙,但也五脏俱全。虽然偷工减料,但也累的够呛(x)

因为个人美术功底有限,主要美术资源是在assetstore里下载的一套免费美术资源。这位大佬在网站pixelgameart上分享了更多游戏美术资源(均为像素风格),感谢这位大佬。
02

美术资源原名就叫sunnyland,起名废的我就沿用了这个名字。

主要角色和场景的美术资源搞定了,可是ui方面的美术资源在资源包里没有,只能自己慢慢用ps做,也是很痛苦。不仅做着痛苦,做出来发现丑的不行更痛苦。
03
03

另外,关卡地图也要自己切图再拼地图。本来打算用Tiled Map Editor做的,研究了一天上手用之后才发现,它的地图碰撞体会自动补成奇形怪状,还不好修改,最终我还是放弃了它。unity自带的Tiled Map编辑也并不好用。最终只能自己做一个个tiled的prefab,再拼地图。实际上它比Tiled Map Editor做的更方便修改。

04

代码方面,自己写了个mvc框架,虽然我觉得觉得这简直就是用宰牛刀杀鸡……不过练习一下mvc框架也挺棒的。

游戏类型就是经典的横版过关游戏,踩敌人吃金币那种。

游戏角色运动控制我用了fsm状态机操控,这个之前FSM实现人物运动详细写过。

敌人的运动就是在GameObject位置附近巡逻,游戏开始随机向左或向右,调整敌人位置和巡逻范围就可以得到多种敌人运动形式。

05

金币分两种,一个是普通金币:钻石gem,一个是特殊金币:cherry。

每一个关卡有多个普通金币,但只有三个特殊金币。每一关吃到的特殊金币数量会在结算面板和关卡选择界面显示。特殊金币会比普通金币得到更多分数。

每一关会得到分数十分之一数量的金币,金币可以在商店购买新角色——兔子rabbit。

06

07

完成任务也可以得到金币。这个任务系统使用了观察者Observer模式。

08

游戏的让我头痛的另一部分——UI,使用了之前写过的这个UI框架。说真的,UI部分,不管是用PS做UI所需的美术资源,还是写细节繁琐的UI逻辑代码,都让人头痛。UI整体设计参考了我很喜欢的一款手游——超级幻影猫,它的游戏美术设计真的很棒。

话说,其实把ui整体调试好了的那种感觉真的很爽,因为加了ui的游戏整个都变好看了(并没有)。

不管是写shader还是慢慢调整游戏美术资源,都是为了呈现更好的更有意思的游戏视觉效果,果然这些才是我最喜欢做的啊!

Done is better than perfect ​​. 就算技术烂,也要大胆去做,只有不断的锻炼自己,才能让技术得到提升。

这个道理我都懂,但心里却还是希望准备充足再去做,一拖再拖。

可是人生永远都没有准备充足的那一天,但只要你想,每一天都是启程日。

祝2019年的自己万事胜意。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值