不喧嚣自有声

it's better to burn out than to fade away

0%

基于像素匹配算法

模板匹配算法一般是通过滑窗的方式在待匹配的图像上滑动,通过比较模板与子图的相似度,找到相似度最大的子图。这种算法最核心部分在于如何设计一个相似性函数。

最容易想到的一个相似性函数便是欧式距离:
欧式距离公式

将这个相似性函数展开,可以得:
欧氏距离展开式
可以看出,只有第二项是有意义的,因为第一项和第三项的值在选定模板后是固定的。对于欧式距离相似函数,值越大表示越不相似,也就是说,第二项的值越小则越不相似。 再将第二项归一化:
欧氏距离归一化

如果就仅仅匹配大小不变角度不变的模板,到此为止就够了。

阅读全文 »

经验分享

第三轮demo比赛总结

    这轮题目自拟,然后我们定了一个冒险+动作的游戏,参考了彩虹岛W冒险岛M 、星之骑士等动作冒险手游。这轮时间大概有13天半(去掉第一天的定方向,其实也不是很多,自拟的题目还是难抉择啊。),然后我们就想做一个比较大一点的游戏,策划也想的非常大,冒险+动作都要。既要设计关卡 ,又要设计人物动作

    由于这次主要逻辑不是我写的,所以我也不能说的很详细,整体框架是,人物动作由3DMax 完成,并且绑好骨骼做好动作。然后直接丢Unity里使用,但是场景是2D的,就人物是3D的,所以调整了很久。人物大概用了24个动作,然后Unity用状态机来管理,写了一个接口供逻辑调用。逻辑里面写了人物数值属性、输入控制、攻击受击死亡等状态;怪物属性、状态、AI行为树(用了Behavior插件);还有BOSS专门写了AI。这次我负责的是2D怪物的动画,我用的2Danima插件绑的2D骨骼然后录制动画,总共2只Boss和6只小怪。Boss有8套动作、每种小怪有5套动作。

    转折点:中间有导师探班的时候,说我们的游戏应该最好偏向于某一方面:动作 OR 冒险 。最后我们选择了动作(偏复杂一点的路,虽然最后也没有成功)。既然选择了动作,我们就要把很多关卡设计方面的东西都砍掉,专注打击感的提升,我们为此做了:刀光爆点、屏幕抖动、击退和挑飞等控制效果、还有一些蓄力快斩之类的节奏感技能。到了Deadline的前一天,我们整合出现了问题,导致提交作品的时候,没能交上一个比较完善的作品,UI部分还有一堆BUG,不然我有信心一定能拿第一。(算是一点遗憾把,没能把自己最好的一面展现出来)

阅读全文 »

经验分享

第二轮demo比赛总结

    经过第一轮的教训,在第二轮10天的游戏制作中,可以说比第一轮好非常多。无论是项目管理,还是协作开发,都有非常大的改善,当然也有挺多美中不足的地方需要提高。

    这轮的题目是三选一的形式:a.跑酷\b.三消\c.回合制RPG。吸取第一轮的教训,坚决不做三消(其实三消做简单了,会被喷的很惨;做难了,也很难有新的创新,而且逻辑可能就很复杂了),所以最后综合考虑下,在RPG跟跑酷中,选择了跑酷。

    跑酷我们参考了传统的跑酷玩法,有天天酷跑Super Mario Run 等各种横板闯关类型的跑酷游戏。最终确定下来核心玩法是,二段跳跃+冲刺 。核心玩法定下来以后,就马上开工,程序这边是由我来设计了一下开发文档,大概导图如下:

阅读全文 »

经验分享

经过十天的学习,对游戏的开发流程有了大致的了解后,就是三轮的游戏demo制作比赛。但是有点遗憾,在第一轮5天的比赛中,并没有做出什么非常完美的作品,心里也很难受。不过没关系后面还有两轮,并且在这轮中吸取了很多经验。

一、第一轮Demo简要介绍

对于项目,工程就不发了,毕竟是组队开发的,不太好意思未经他人允许公开他的代码。我会简要讲一下第一个demo的核心玩法,以及实现方式。最后顺便附上我自己写的一份开发文档

游戏名字叫《重逢》(策划那边起的,我也不知道有什么具体含义)。内容是:一个叫Pan的男人寻找他亡妻的故事,游戏里有一个冥界塔的设定,就是玩家们需要操作的场景。核心玩法就是扫雷PopStar!的结合,点开一个方块,你点到炸弹就会扣血,点到空方块就会消除一片连通空白块。然后消除后产生的空的地方,方块会和PopStar!中的方块一样落下来,最上面一排会跟扫雷一样显示周围雷区的数量。当然长按标记这些也都有,加上锤子、加血包、计时器三种道具。获胜条件为:从上到下消直到落到最下面一层,就算通关;如果血扣完了或者计时器到零,就判定失败。对应冥界塔的下楼方式,你在冲塔的过程中为遇到一系列问题,比如怪物、宝藏、迷雾、岩浆、陨星…..每种问题对应一种新玩法,每一种玩法都会有新的得分机制,目前没有划分到获胜机制里(之后在看情况做修改),核心玩法还是不变的。

阅读全文 »

游戏开发

客户端

    用来开发客户端的语言非常多,unity引擎用的是c#cocos引擎用的是c++js虚幻4引擎也是用c++,还有javapython

    不过主流都是用unity虚幻4,再者就是自家公司研发的游戏引擎。

    由于我本身也不是客户端开发的,所以这这部分知识不会太细,就罗列一下引擎中的基本模块以及客户端开发过程中需要注意的地方。

阅读全文 »