【Daily GDC】IK骨骼-新的动画开发流程

ThouSun

撰写了文章 更新于 2018-12-16 01:34:36

评论 10

Alwaysmadowl 1年前

感谢介绍和翻译~!

单纯补充一下感想 u_u

目前参与的项目就用了IK这套方法,毕竟Mocap不是人人都能负担得起的事情啊……帧动画资源太大了,考虑到复用性和优化,开发大佬选择了IK。他花了两周左右时间看了视频和几篇论文就撸出来了哈哈哈哈。(orz)

尝试的方法大概是先做出角色的帧动画,然后抽取关键帧的手脚位置,反推出手臂和腿的运动。开发需要抽取角色身上的一些骨点,然后计算出动作。不同的动作,比如说跑、跳等等会用到不同的算法。开发和我讲了下,我们自己的项目中,跳的动作实际上只有两个关键帧,上升时的姿势和下降时的姿势,然后根据y轴的速度插入弹簧的动画效果。二段跳就只有一个帧,然后让它转了360度。

如果想要比较好的效果,就尽量让动作帧和程序算法生成效果一致,如果程序进行插帧计算很容易出现掉帧现象……还要注意两个帧之间的融合,过渡会更自然。IK这套方法的确经济适用,复用性高,也容易踩坑,但是如果是很强调演出和动作效果的游戏,帧动画可能更简单喵?像文章里面提到的缩放角色比例,大概是retarget IK,其实挺难的。(左边为开发大佬原话XD)

喵,最后抓个虫,P1部分的IK写成KI啦。也许还有其他地方也写反了喵……

题外话,目前也有方法支持浏览器通过摄像头识别用户动作,生成超级简陋不精确(但是凑活能用?)的动作。也许以后用户可以很容易自制大量(沙雕)动作哈哈哈哈。

【总而言之,经历过项目的人(非开发)感慨:IK动画其实超级难做的……如果数学底子很好可以研究研究,绝对不是几行代码就完事了(醒醒!)……】

ThouSun [作者] 1年前

@艺仔 ‍ 感谢分享~IK的实战经历确实感觉很少人有呢。另外,错误已经改过来啦

Alwaysmadowl 1年前

@ThouSun ‍ 大概因为程序和数学底子的要求都挺高吧?我们的开发大佬是个(超级)图形学专家,比较全能……所以引擎的渲染,物理,联网通信等等(真的是全部)都一个人包了orz。没事就和我们(非技术人员)讲技术……完全不把我们当成小白(等等,我们真的都是小白!!!!!!)。比如说复杂交互那部分,“有了之前的认识,其实一切应该都【非常简单】了,超角色下方发射射线,检测到路面信息,通过获得的信息去修正IK骨骼参数。”发射射线是最基本的思路,但是怎么修正才是难点喵(真是一把泪)。

ThouSun [作者] 1年前

对了,PS一下,文章最后提到的几行代码,指的是实际占用CPU计算资源的公式代码,并不是指实现IK系统需要的噢/捂脸

Alwaysmadowl 1年前

@ThouSun‍ 原文是“上面看到的很多复杂的效果”诶。CPU的话也要考虑缓存数据,内存和性能,还是会有大量的计算喵。

ThouSun [作者] 1年前

@艺仔 ‍ 恩,可能Alex有点夸大吧(他说Simple Math hhhhhh)。感觉计算量肯定有的啦,只是不会有不可突破的瓶颈吧(i9都带不起这种hhhhhhh)

Alwaysmadowl 1年前

@ThouSun ‍ 我个人体验来说,帧动画本身就是坨巨大的数据,优化还是挺费神的。而且跑web端,就更蛋疼了……发现这些开发大佬都太理所当然了 u_u

菊开几世 1年前

之前神海4的德雷克那么多动画都是录的吗?

Ghost 1年前

真是酷!演示动画好魔性啊!

白枫 1年前

好牛逼的动画技术!

登录奶牛关账号即可参与讨论