游戏的故事发生在体素星球,所以世界的万物都是体素、像素构成,主角也遵循这个原则。从设计之初,就按照像素的规则来进行角色设计。所用的工具为PS,使用PS来进行像素制作,首先要进行一些小设置,很简单: 在首选项--性能里面,确保“使用图形处理器”是被勾选的,假如之前未被勾选,那么勾选,点击确定以后,重启PS即可。 接下来新建一个画布,无需太大尺寸,这里用32x32为例。 OK,创建出来的画布默认就会自动产生辅助线,切分出每一个像素,假如没有进行第一步的设置,是不会产生这些辅助线的,假如需要预览,可以按ctrl+h隐藏辅助线。 接下来,选择画笔,切换为铅笔模式,将画笔设置为最小。 即可开始像素绘制。非常方便。 完成角色设计。 到这一步,只是完成一个2D设计,最终游戏可是3D的,那么还得制作voxel(体素)。本人使用qubicle来制作体素,这是一个小巧方便的体素制作软件,可以直接将图片导入,制作体素。 将之前做好的图片导入。 重新定义矩阵,对原有的cube进行挤压,拉出厚度。 经过不断的调整,完成体素设计,右边的是最终版,将角色分块,方便绑定骨骼。然后导出FBX以及贴图。 来到maya,进行骨骼绑定。 输出另一个分块模型,用来制作角色死亡变为碎片掉落的动画,本动画使用maya的一个物理动力学插件完成,如图所示。 录制好动画,bake输出fbx。到这一步,外部的准备工作算是完成了,接下来的工作都是在Unity里完成。 是的,首先就是为角色录制动画,目前大致分为这几个动画。 为角色添加Animator Controller,这里使用了融合树,用来融合各个方向奔跑的动作: 定义了俩参数velocityX和velocityY,分别表示角色前后左右移动的速度。 XY速度都为0时,上方的红点在中央,表示动画状态机需要播放待机动画。 Y速度都为-1时,上方的红点在下方,表示动画状态机需要播向后走的动画。以下同理。 融合树可以根据XY的值对动画进行非常好的融合效果: 程序方面,本人使用unity的一个非常强大的可视化编程插件“PlayMaker”来完成,这样可以节省非常多的时间,对于像自己这类的开发者,这插件是个福音。本人也打算在今后有空闲的情况下专门制作一个playmaker系列的教程。 分为俩FSM。 首先是get axis,基本逻辑是获取input的horizontal和vertical,将其储存在一个vector3里,获取这个vector3的长度(用在animator中检测角色是否移动)。接着再将input中的值设置到animator中的参数去(velocityX,velocityY和speed)。 接下来是移动控制FSM,这一步初始化角色移动速度。 接下来给角色的rigibody设置速度,这个速度就是input中的horizontal和vertical,然后检测是否按下空格键 按下空格键会进行一个躲避动画的播放。效果如下: 到此,整个角色的基本移动操作已经制作完毕,当然还有不少逻辑要补充,加油!!!
加油
@kiliyuu:非常感谢你的鼓励:D
加油,希望早日玩到demo
@ROY:多谢支持,加油加油!
非常完备的教程!
支持~
加油~~
这里是不是打错字啦:时间的万物 --> 世界的万物
@Ibot:是的,多谢提醒,修正!
我以前也用qubicle做角色的,挺方便。
你这游戏效果不错,期待试玩。
很实用,赞~
很想动手自己做游戏,但是胆子小,练学习的勇气都没有啊,哭!!!!!!!!!
好棒啊!!