Unity完全自制游戏纸箱战争项目记录(20180716)

发表于2018-07-16
评论5 5k浏览

今天编辑私信我说要在公众号上发一下,下午就看到了,很开心。

项目的最后完工节点被定在了周六,周六将会举行产品发布会,这么说留给我的时间只有到周五就截止了,而且明天还有别的事情需要耽搁一天,满打满算还剩下三天的项目时间。

在这三天中要实现各项的优化,和组件的拼接工作,事态非常严峻。

今天还发现了一个特别严重的事情,关乎到了游戏效果的成败,到目前为止,我的游戏还没有任何声音。

FPS中,声音一项占到了重要的一环,而我的项目居然没有声音,这根我的设计思路不符合,按照设想,项目从模型制作,动画的调整,代码的编写都是一个人完成了,我却疏忽了声音这一点,自己想办法配的话肯定是来不及的,难道就必须得在网上找资源了么?

今天需要给老师提交一个预览版的游戏包,做了个简易的UI界面。

数一数,项目到现在为止已经迭代了八个版本,每个版本都更新了不少功能。

主界面浏览图,借鉴了守望先锋的设计风格,把模型人物放在主界面上进行展示。

在场景的异步加载界面本来想用一个loading条演一下,一想,既然UI界面都向着网游倾斜了,那干脆就把Loading条演一下好了,就弄了个假装排位的倒计时。

在读取完毕之后,会跳转到游戏场景,在游戏场景中是预留了很多接口的,一遍日后可以统一的管理游戏进程。

在进入游戏后,进能看到寻常的FPS界面,准星,血条,小地图,目标点占领状态。

当玩家在游戏中时,如果处于死亡状态,系统则会循环判断当前重生点的可用情况,如上图的B点被蓝色完全占领,那么可重生的坐标点就只有B点。

在选择了重生点和重生后的兵种后,玩家就会以该兵种在重生点重生。

受到攻击血条减少。

这里还设计了比较有意思的点。

还记得以前玩到的一些游戏,玩家在死亡后有一段的死亡回放,会以敌人的视角让你看一遍自己是怎么被杀死的,也在一定程度上监督了外挂。

在刚开始制作游戏前的构思中,我就想要实现到死亡回放的功能,当时就想到了死亡回放应该是记录下了游戏运行时候的状态,再模拟重演出来一次,如果是录制视频的话对系统内存的消耗就太大了。

查阅了一些资料,有关于守望先锋死亡回放系统的讲解,里面采用的就是记录数据后重演的做法。

思索了一下,对我目前的实力来说比较困难,当然了,也不是不可能实现,只要记录下游戏中人物的位置变化,每隔一段时间对数据进行更新覆盖,在死亡之后切换视角验算一次。

可时间严重不足,没有时间给我再做实验,只能作罢。

于是我就换了一种死亡视角,在玩家死亡之后,播放玩家的死亡动画,随后运行其另一台摄像机,使这台摄像机会看着杀死玩家的单位方向并且追踪,这样既不影响游戏进度,而且还简单易用。

如图红圈中就是被打死后死亡视角摄像机观察的目标(准星设置的太大,导致盖住了人体,仔细看还有能再右下看到一个轮廓的)

FPS中,一般玩家都看不到自己的身体,能看到的只有两个手臂,为了更简单,在游戏中玩家的身体被省略掉了,实例化出来的敌人才会有真正的身体。

而我的动画模型和手臂完全连接成了一个整体,没有更多的时间给我切割模型,所以在我的游戏中,玩家都是带有身体的。

前两天还想到设计一个彩蛋,如果玩家低头往自己脚上打的话会掉血的设定,仔细想想,估计也不会有人闲着无聊去观察这种设定,也就给舍弃了。

既然是有身体,那岂不就可以让玩家切身实地的感受到自己的死亡?

就这样,在玩家死亡之后,身体会产生跌倒的动画,而摄像机也会跟随者玩家一同跌倒在地面上,仿佛真的是中弹身亡一般。

最后,今天又丰富了三个脚本:

UIControl:负责总体控制UI系统

PlayerControl:负责对玩家进行总体控制

GameControl:负责对游戏进行总体控制

在接下来的几天,将会把之前预留的功能全部接驳在GameControl中,能节省大半的功夫。

 

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引