进击的序列帧 四(额外篇,疑似最终章)------- 让你的序列帧没有帧感,如飘柔般丝滑

当不要脸已成习惯,当山峰也没有了棱角,当招人这么困难的时候,我还是在篇头植入的招聘。

坐标山东青岛市北,招聘日系画师,其他岗位目前公司没有说,有意思的可以入群私聊。


然后再说一下QQ群,山东手游研发聚集地335772557,进群先看公告,要是抱着我要学习的心态进群的话,那你就失望了,因为是个死群。

偶尔心情好的是时候会发个技术链接。

接下来进入正题!!




一直都说要写写motionVector的。但是一直也没有时间,写这篇时也没有太多时间,原理上就不说多了。

最终结果也不是了,这篇权当是个笔记吧,其实一直以来都是个笔记。。。尴尬。。。

MotionVector这张map呢,其实也就是扰动uv的,不管是根据视角还是视角去变换序列帧。

既然是扰动UV的话,那就把两帧的采样的uv重新加入motionvector去计算一下。

首先是采样motionvector

float2 motion = tex2D(_MotionTex,uv);

motion = (motion - 0.5) * 2;

为啥要把motion转换成[-1,1],就是为了uv能上下左右流动吧,瞎说的。

但是motion的总有一个强度问题。这个问题得去查相关资料去了,不太懂,有懂得欢迎底下留言,多谢

motion *= _Intensity;(_Intensity的值要特别小)

然后把motion 与 uv联系起来

上篇的v值是不是已经求出来了这个v值是0-1,0-1,一直这么变着的,但是我们motionmap不能这么突变。需要双向的:一向0-1,另一向:1-0;于是就有了vInvert= 1-v;

这样两个uv:

motion1 = motion * v;

motion2 = motion * vInvert;

就有了

  subuv1 = motion1 + uv1;

subuv2 = motion2 + uv2

然后采样,用v去lerp两个采样,输出就好 了


这篇就是自己记录一下,实在没时间了,权当自己记录个笔记了



猜你喜欢

转载自blog.csdn.net/u012871784/article/details/80459594
今日推荐