原计划本来是打算这周继续写MAC电脑宣传片临摹的第二个镜头。
但是在第一个镜头的文章发出来以后,B站上有留言这个动画有其他机构是用来做收费教程的。
我看了一下留言童鞋给的网址,确实是一模一样的案例:
这个意外的撞墙就很尴尬了,讲道理其实按照自己的方式临摹作品写出来,并没有太大的问题,只不过碰巧是同一个案例。
虽然我们临摹出来的可能也没有别人好,但是换一个角度来考虑,知道了别人有这个课程还要坚持要写出来的话,就有点诚心抢别人生意的感觉。
所以再三考虑之下我决定还是不再继续写下去了,以后找机会换一个临摹的案例吧,其实心里还是挺过意不去的,最主要觉得是辛苦@耿庆煜了,因为他都临摹出好多个镜头了:
案例的话我后面会抽时间继续自己临摹一下,等工程文件拆解调整完成我会把工程分享出来,供有需求的鹿友参考,但就不写出来了。
唉,我这边计划也完全打乱了,但这周还是想写点东西出来,前面写了一篇弹跳立方体的内容:
当时在模拟烟雾形态的时候,一直没有做出满意的效果来,所以这两天又重新的把TFD的知识过了一遍。
虽然暂时还没有做出满意的形态来,但是却发现对TFD的基础知识理解更深了一些,甚至之前有些理解是错误的。
由于这周也没有其他准备,所以就把这两天我学习TFD的一些杂七杂八的内容写出来吧。
首先对于TFD的基础知识概述以及入门小案例推荐大家阅读:
其次再对我之前的理解错误的知识点纠正一下,大家看白色框内我当时标注的解释:
Directional Force我当时的理解是法线力的方向,和温度、密度等通道中的浮力重力方向一样。
但其实这是完全错误的理解,Directional Force其实是方向力:
它的正负值控制着力在轴向上的方向,数值控制着力的大小,如果同时在两个轴向上添加方向力,流体会沿着两个力方向的夹角运动:
这个确实和我之前的理解差了十万八千里,如果因此有给大家带来困扰,给大家说声sorry:
1、关于发射器标签力的使用
TFD发射器标签里的法线力、方向力以及压力除了可以添加到发射流体的对象本身用于改变流体的形态:
也可以添加到另外一个对象上用来改变已经发射出来的流体形态:
2、关于TFD版本以及GPU加速
目前网络上能找到的最新TFD可用版本是v1.0 Build 1462,我看网上说明是最多支持到R22,我自己测试反正R21是可用的:
但是需要注意的是这个版本是不支持GPU加速的:
网上好像有一个v1.0 Build 1437版本只能R20用并且支持GPU加速,这个我没有测试过。
我自己是用的v1.0 Build 1435版本,R19使用是没问题的,R20大家需要测试一下,我记得好像也是可以用的,支持GPU加速:
另外如果你的C4D以及TFD版本都没问题,还是无法使用GPU加速的话,请查看一下官方对于GPU加速的显卡要求哦:
3、关于碰撞
TFD的碰撞是不支持对物体内部产生碰撞的,并且通常情况下我们不需要缓存,因为缓存碰撞只是便于我们观察碰撞的情况,而不会对实际效果产生影响,:
除此之外如果碰撞的对象是一个没有厚度的平面也是无法产生碰撞的:
所以要是流体产生碰撞的对象一定是个有厚度的对象才可以:
如果你发现你的碰撞对象有厚度,但是还是无法正确产生碰撞,这个和你模拟流体的体素尺寸以及碰撞对象的厚度有关系。
如果遇到这种情况,请尝试减小体素尺寸或者提高碰撞对象的厚度:
另外当发射流体的物体本身在高速运动或者如图所示我给了流体一个很强的风力使得流体速度很快而产生断层的情况:
适当的提高子帧步幅限制的参数,可以改善这个情况,但是模拟的时间会提高:
4、曲线编辑器
TFD当中有好几个地方都有曲线编辑器,这是一个相当有用的功能,不仅可以更加灵活的控制流体的形态,同时还能有助于节省资源以及提高渲染速度:
以涡度和湍流两个参数的曲线编辑器为例,如图所示在没有开启曲线编辑器的时候,模拟出来的体积大概有800M左右:
当我开启曲线编辑器,将涡度和湍流的强度映射到温度通道。
在没有进行任何曲线编辑的情况下,模拟出来的体积就变成500M左右了,并且模拟时间也有所提升:
这是由于曲线编辑器中,横坐标代表温度,纵坐标代表涡度/湍流,从曲线上我们可以看出,低于0.1的温度都不产生涡度/湍流,所以减少了计算量:
这里再稍微多说一句,当你使用默认渲染器渲染的时候,无论是烟雾还是火焰着色器中的曲线编辑器。
都可以适当的右移动一点有助于加快渲染的速度,原理也是相同的,是修剪掉了部分低温区的计算:
5、关于OC渲染TFD流体
由于使用OC渲染器以后,TFD流体渲染栏位的设置就失效了,所以不具备可以通过缓存速度通道来给流体增加更多细节的功能:
因此使用OC渲染TFD可以做出体积感很好的烟雾效果来,但是要做出很细腻的火焰效果,建议还是使用默认渲染器来渲染TFD:
大家都知道TFD缓存速度通道体缓存文件的体积会非常大,当你决定使用OC来渲染TFD流体的时候,如果不用于驱动粒子的话就没必要缓存速度了。
除非你打算使用OC里面的运动模糊,不过我个人觉得没太大必要,OC里的体素和TFD里的体素参数请保持一致,即使你降低这个参数流体的精度也不会变高:
最后一点是当场景中有交互对象的时候,默认渲染器渲染火焰是无法照亮对象的,而OC可以照亮:
所以当你想要渲染火焰并且场景中有交互对象的时候,你可以使用默认渲染器渲染火焰,使用OC渲染器渲染交互对象,然后再在后期中合成:
大概就这些吧,以后如果想到有其他的内容再进行补充,下面是今天的视频版:
好啦,今天的内容就到这里,想要源文件、原视频的童鞋后台撩我获取吧!
更多内容欢迎关注公众号:
本文由“野鹿志”发布
转载前请联系马鹿野郎
私转必究