为什么会说根据数码相机的两张照片来做中间一个无中生有的缺失帧会这么跟做特效不同呢?要知道这有了前后两张照片那跟单独的做一张静态cg不同就在于,前者是需要你凭空做出来的东西是符合科学原理的!是要跟前后连贯到一起的!打个不太恰当的比方,就等于同样是迈步,从右脚开始离开地面,一直到右脚落地这么一个过程,如果中间缺的20帧比如说都需要凭空创造的话,那么这凭空创造出来的帧数,那一定要让人物的动作绝对的跟前后两张照片能无缝连接!
不可能说中间20帧做的看起来很科学,但是就跟前后比起来有那么一点点接不上,有点点不一样,那观众看着也可能就会突然一跳的赶脚!这种赶脚是很不好的!如果单纯的做一个静态cg,那是随意的画,想画什么样那都是正常的,只要符合人体运动原理就行。但是这种补充帧呢,那就像是做完形填空一样,正确答案就只有一个,但是这么一场段话里面那空档太多了!
比如说,程龙飞在空中的时候,不只是人大体上手脚啊肢体有动作,可能毛发、衣物甚至是皮肤上的皱纹、鞋带这些都会有动作!怎么把这两张之间的诧异都发现,然后都做出来一个中间形态呢?这简直比大家来找茬还难!而且最关键的是,这不是同一个相机拍的两张哦!这还是不同角度的不同相机拍的哦!这尼玛怎么弄?这连弄个程序来自己检测什么位置的图像有变化都没办法做到!机器最多只能把两张图片做数据比较,分别对比每个点上的颜色对不对这样。但是两个不同的角度这本来拍摄出来的东东那不一样的太多了,所以程序也没办法智能的做到!
哪怕就算是程序发现了,那又能怎么样呢?比如说千分之一秒的时间里面,程龙满头的头发都稍微动了那么两毫米的距离比如说,那么做中间帧的时候,不可能说前后照片里面发梢所处的xy轴的距离做一个平均计算,然后作假一个头发就了事——头发本身是有发根的,发根是连在头皮上的,所以这头发丝的运动轨迹不是直线移动啊!这要按照物理原则来弄啊!所以要修一个头发的运动轨迹,要凭空创造出来一根头发的“中间状态”。这就已经够费精力的了。更不用说的是程龙有多少头发呢!对不对!人家都用霸王防脱洗发水的嘛!外加衣服、鞋带什么的,这么要真的靠人一个个的来类似ps的调整,那真心能累死人,搞不好做程龙跳楼这么一个360环绕的子弹时间。就要整整做一年!
斯皮尔伯格带队过来。他自然不可能说用这么笨的方法做这个特效。他想到了另外一个好办法,一个相对轻松的多的办法——那就是靠着不同角度的照片,来建一个3d的模型!然后利用3d的模型绑定之后。渲染周边,弄成一个cg电脑图像,然后再按照物理规则让这些个零件在限定条件下运动,然后抓中间的那个却掉的帧!然后做成图像弄到胶片上,接着再跟原始胶片给剪接到一起!
什么?一个cg的动画还有内部的物理规则?当然有!这g那都是要跟做游戏一样,不仅模型还要做贴图,还要做渲染,最后要弄进去物理规则!这样一来整体才尽量能够让这个“人物模型”自己走路!这样才能省力气啊!
比如说,一个人在大街上走路的简单场景,这如果没有物理规则的话,那么弄起来会浪费时间以及奇怪到什么程度?哪怕这个建模和贴图弄的跟真的一样,但是因为没有物理规则,所以地面不一定是凸起!也就是说地面上的一个小石子可能只是贴图,这个人的脚丫子是可以跟小石子重叠在一起的!是不会一脚把石头踢开的!这样假不假?
同时,一个简单的走路场景,会因为没有骨骼系统,没有物理规则,结果人走路的时候那就像是没有直接连接的积木搭成的人型一样,可能走走脖子的位置就变得很奇怪,可能手摆动的就不对!这就需要人一点点的去调整,每一帧都要调整不说,每一帧都还要做的连贯、科学!这可能嘛?要是第二帧除了一点错,第三帧才出一点,然后每一帧都有那么一点点错,累计到后面就会奇怪的无以复加!
所以,在特效界和cg界,就想到了一个聪明的办法,我们跟做3d游戏一样,内置物理引擎,内置骨骼运动的物理原则,这样很多简单的东西我们就不用去调整了?就像是说用动作捕捉来捕捉一个人走路的动作,然后就跟影视剧花絮里面演的一样,电脑里面就有一个类似人体骨骼一样的东东在走路,把这个走路过程中每一个骨头运动的规律给作为标准了,给贮存起来了,那么以后再做人走路的时候,我们是不是只要把建立好的模型和贴图,跟这个骨骼绑定起来,那么他的动作就会自然而然的完成了?是不是就能跟真人走路一样了?是不是说,我们设定他从这里开始走,走到那边结束,我们设定好了起点和终点,那么这个模型就会自己走?
这样的话,只要进行最开始的数据库和物理原则的累计,进行对整个虚拟世界内部各种物理原则以及光线反射原则的规定和收集,那么以后做特效起来是不是会越来越快?这才是好莱坞工业化的做特效的秘籍!
所以斯皮尔伯格想到补充中间帧的办法,那就是来建模。来建立一个3d模型,来弄上各种物理原则之后,让建立的模型跟前后两帧的动作分别为起点和终点,接着去让模型自动动