首先看一下效果图。

效果图2。

动画线框图。

粒子流的大体情况如下图。

先来看看树体生长的制作,下图是从根部长出的第一个粒子的产生结构分析图。

定义这个粒子的初始形态,这样以来由它所引导出的左右树支树干就全是这种形态了。

给树干加上一点扭曲。

树干底部是不能分叉的,如图。

产生分叉的测试,我并没有让它将粒子发送到其他事件,所以分叉后的粒子会受它影响继续分叉。

新长出的树支总是比老的的树支或树干细的,而且这种粗细变化是渐变的。

如图。

这里的树支是不长树叶的,所以长到一定时间后会生出长满树叶的柳梢,这也就需要下一个事件来控制。

同理,还是用这个测试来产生分叉的柳梢,只稍作了改动。

控制柳梢的生长。

引导柳树生长的粒子就已经设置好了,最后用一个Delete操纵器限制引导柳梢的粒子的寿命在45左右,不过它们是不参与渲染着色的,这里再次用到了这个分裂产卵(Spawn)的测试来制造树体。

看到 [树干树支长粗] 的这个事件来,这和上面那个使树支逐渐变细的缩放操纵是一个道理,只不过在这里是让树体长粗。

这样一棵光秃秃的柳树就诞生了。为了不让它显得一毛不拔,这里加了一个环节。

先来看一下一支树叶的生长动画,直接用Mopher修改器就可以弄出来了。

要使每个粒子都象这片树叶一样,得用 关联形态操纵器(Shape Instance)。 需要关注的是要钩选支持变形动画那一项和下面的关键帧偏移方式,另外,叶子物体的轴心必须在叶柄上。

使树叶生长方向不至于乱七八糟,需要加一个旋转操纵器来控制一下。

在所有树叶中挑出一些将会脱落的树叶。 在前面那个线框的预览动画中这些树叶是以黄色显示的。

这些将会脱落的树叶在年龄到达66左右(+/-33)时脱落下来,用年龄测试(Age Test)解决。

关于树叶的脱落如图。

为了使引导粒子不被渲染,这只是简单的在第一个事件中指定了个透明材质,当然也可以在不被渲染的事件标题栏上点右键属性并取消renderable树干材质在下面指定。

看看这个材质,为了使树枝的生长点附近的颜色偏绿,我用了ParticalAge贴图,其下的子贴图直接用渐变贴图调出来。而渐变的角度在渲染出来后就将呈现为树的受光角度,当然这属于作假的方法。

将其寿命定为83,会发现在Delete上面的AgeTest中测试的年龄为50,这是因为我并不是真想用Delete来干掉粒子,因此在粒子年龄大于50后将进入停止生长的事件中,在那指定了一个静态材质,它于粒子年龄在50时所呈现的材质相同。

至于树叶粒子的材质就直接继承树叶物体的了,只是在ShapeInstance(关联形态)的参数中要钩选Acquire Material。 但由于发送到其他事件后就无法继承,我只好笨拙地把这个操纵器在之后的所有事件中都复制了一个。

如果你觉得做实体的树会更好而你的电脑也还不错的话可以试试用BlobMesh来生成真实的网格树干,方法很简单,在场景中建立一个BlobMesh并入图选种粒子源1和其中相应的事件就行了。 许要提及的是BlobMesh的尺寸(Size)在这没有作用,是受粒子尺寸控制的,也就是说它会随着粒子的长大而变粗。另外在使用木纹的3D程序贴图时可以看到木纹的生长。这些都是很好的特性,然而它也有弊端,你必须把网格细分到足够小以产生较细的树枝。

除此,粒子的数量必须足够以使树枝不至于脱节,当然这么做会得到更真实的效果。

由于计算机速度限制而不得不改用小平面来解决。对PF稍微了解一点的人都会知道它在预览时是很慢的,尤其是在帧数比较靠后的时候,顺着时间拨动时间滑块还稍微强点,而逆拨却会造成类似死机的情况发生。因为max会花大量时间来从第0帧或第一个粒子出生的那帧来逐步推理出当前帧的精确情况。 而渲染是反倒会觉得很快,毕竟每帧只须在前一帧的基础上作一次推理计算。 于是制作是在粒子动画中最耗时的环节。

html柳树动画,3D教程-柳树生长动画相关推荐

  1. android开机动画视频教程,【Android开机动画制作教程】开机动画文件组成及其详解释疑!...

    [开机动画位置] 安卓原版系统开机动画位置: system/media/bootanimation.zip或者data/local/bootanimation.zip 这两处的区别在于动画放在syst ...

  2. AE教程丨路径生长动画

    不少情况下我们会用到路径生长动画,那么我们要如何制作呢?今天我们就来讲讲AE制作路径生长动画的教程. AE制作路径生长动画教程 1.绘制路径以及箭头,路径的宽度以及位置可以自行调整: 2.选择路径图层 ...

  3. Qt 3D教程(四)结合Qt Quick来实现动画的效果

    Qt 3D教程(四)结合Qt Quick来实现动画的效果 上篇教程已经给大家带来较为实用的效果了,这回我们尝试载入两个模型,并且让PhongMaterial成为它们的共享材质,此外,我们通过借助Qt ...

  4. 3D MAX 动画制作教程

    3D MAX 动画制作教程 可直接转到网页视频教程 转载于:https://blog.51cto.com/zyjkkk1212/68454

  5. Blender三维建筑场景动画制作学习教程

    一起在Blender中创建一个三维低多边形场景动画 你会学到什么 这门课程是为那些喜欢在工作流程中成长的艺术家设计的 初学者 想学会让自己的资产活起来的艺术家. 希望扩展其技能集的游戏开发人员. MP ...

  6. Blender赛车动画制作学习教程 Learn Race Car Animation with Blender

    使用Blender 2.93创建您自己的惊人汽车动画 你会学到什么 Blender的界面和导航 建模 UV制图 材料 动画 照明设备 渲染 合成 要求 下载并安装Blender.免费下载和免费用于任何 ...

  7. Maya制作风格化的女性跑步动画学习教程

    时长:2h 11m |视频:. MP4 1280×720,30 fps(r) |音频:AAC,48000 Hz,2ch |大小解压后:1.56 GB 含参考素材 流派:电子学习|语言:英语+中英文字幕 ...

  8. Maya摄像机动画技能学习教程

    MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 语言:英语+中英文字幕(根据原英文字幕机译更准确) |时长:4h 38m |大小解压后:1.65 GB 含课程文 ...

  9. Blender多米诺骨牌动画学习教程 The Impossible Domino Run in Blender

    流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,48.0 KHz 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小:8.53 GB 含课程文件 |时长:8h 20 ...

最新文章

  1. Nodejs Express dockerfile最佳实践
  2. 系统设计知识:面向对象设计方法介绍
  3. php自动合并,php实现合并数组并去除重复的方法
  4. oracle sum详解,oracle sum()聚合函数
  5. 给linux内核传递数组,数组与指针 - Linux C编程实战之路_Linux编程_Linux公社-Linux系统门户网站...
  6. mysql 原理~ 乐观锁和悲观锁
  7. CentOS7 NTP server + keepalived
  8. python数据结构3-链表
  9. 在FL Studio中如何使用混音器的效果
  10. python学习笔记 day44 表与表之间的关系
  11. 【Camera】通过查看位置方向的平面进行灵活的相机校准
  12. PD3.1 140W双C快充解决方案
  13. 多线程—如何下载网图
  14. ssm毕设项目客房订餐系统s2whx(java+VUE+Mybatis+Maven+Mysql+sprnig)
  15. vps服务器租用费用
  16. New Empirical Traceability Analysis of CryptoNote-Style Blockchains
  17. 注意2022年软考网络规划设计师考试新版大纲和教程已出炉
  18. 书论93 王宗炎《论书法》
  19. 前端基于element组件的语音文件上传
  20. 笔记本电脑计算机不见了怎么办,电脑突然没声音了怎么办

热门文章

  1. 逻辑人渴望控制那些让他们感兴趣的东西
  2. TurboIM专业集成即时通讯获新宠
  3. 56PY宿迁味道这么可口
  4. nanshan 钥匙在您那儿的
  5. 2011年想要惊喜的5z20
  6. 我们都笑了freeeim
  7. 美国科学家研制出由病毒构成的微型电池
  8. 经典:比尔·盖茨的创业智慧
  9. 一位工作了10年的C++程序员总结出这些忠告
  10. 一分钟学会在Mac中如何将文件批量重命名