自动做游戏(2):自动生成人物行走图

游戏研究院专栏 2019-02-02 7.3k

自动做游戏(1):自动生成人物侧面图
自动做游戏(2):自动生成人物行走图
自动做游戏(3):行走图生成工具开放试用

自动做游戏(4),极小样本生成国画的尝试

游戏会拥有很多角色,大部分角色能在场景中走动,人物行走图是最常用到的美术资源。然而对于很多开发者来说,绘制一两张人物图尚有可能,绘制十几帧的动画工作量太大。于是研究了一套“自动生成人物行走图”的程序,只要输入一张正面图,程序就能够自动的把侧面和背面图画出来,而且每个面向生成“抬起左脚”“抬起右脚”几帧动画。


效果

以下gif图片的5个人物行走图都是由工具生成,可见效果还是不差的。生成出来的图片可能会带一些噪点,这些很容易处理掉。


上面人物行走动画帧就是使用下面这几张图生成出来的,将这几张图分别输入到程序中即可。使用这项技术,游戏开发者将只需绘制一张正面图,其他交给程序去生成,可以大大减少美术成本。


下面展示几张生成出来的行走帧动画,目前生成的是4*4的图片,程序也可以生成各种规格的行走帧。



算法和训练

具体还是根据《Image-to-Image Translation with Conditional Adversarial Nets》这篇论文,算法与上一篇的侧面图完全一样,只是将侧面图的方法扩展到背面以及各个行走帧,具体可以见上一篇文章。总共训练了9个生成器,对应下图的“0 2 3 4 5 7 C D F”,其中2和0相同,4和6相同,C和E相同,“8 9 A B”是“4 5 6 7”的水平翻转。


不足

生成器对于颜色鲜艳的像素图效果比较好,对颜色暗淡的图片效果较差,原因已经在上一篇文章中有过分析。后续再看看怎样改进。

另外因为训练量比较大,此次只是训练了40个epoll,如果多训练到200个epoll,边缘躁动等问题说不定能够随之得到优化。

下一步

下一步准备把生成器开放出来,让大家可以自己上传图片,然后试试效果。也试图和Unity、Laya等游戏工具结合起来。

又到广告时间了,如果想学习网络游戏开发,我的《Unity3D网络游戏实战(第2版)》非常适合您。书中用一个大实例详细介绍网络游戏的开发的全过程,还对网络编程有详细的讲解。


来源:游戏研究院专栏
原地址:https://zhuanlan.zhihu.com/p/55979748

相关推荐