查看: 1624|回复: 0
打印 上一主题 下一主题

【Maya教程】制作物体熔化变形效果动画(转)

[复制链接]
.    

3797

主题

11

听众

5万

积分

首席设计师

Rank: 8Rank: 8

纳金币
32328
精华
41

活跃会员 优秀版主 荣誉管理 论坛元老

跳转到指定楼层
楼主
发表于 2012-9-1 20:46:24 |只看该作者 |倒序浏览
本文介绍用maya制作物体熔化变形的三维效果动画的方法和技巧。我们用大家最熟悉的花瓶作为熔化变形的对象。
  建立花瓶的剖面曲线,用revolve命令建立花瓶曲面。

  选择花瓶,选择菜单 deform-create lattice-options 设置 s=6,t=6,u=6,选create。

  这里把lattice转换成柔体,选择ffd1 lattice,选菜单soft/rigid bodies - create soft body - options,采用默认的属性,点击create。
  建立一个nurbs平面,移动到花瓶的下端,patches U=10 V=10 请确认花瓶和平面在初始的时候没有接触。

  加一个重力场到柔体,选择ffd1lattice,选择fields-gravity;添加碰撞属性,选择ffd1 lattice,然后选择平面,选菜单 particles-make collide。
  消除错误
  现在动画已经产生了,不过有可能产生错误的计算。我们可以通过添加两个属性和几行exPRession来解决这个问题。
  在outline窗口,选display-shapes 为on,选择 ffd1latticeParticleShape 选择菜单 modify-add attribute.. 然后按如下设置
  attribute name = spread
  Data Type = Float
  Attribute Type = Scalar
  选择add,添加一个属性,然后采用相同的设置,添加多一个属性叫thickness,点击ok。

  现在建立expression,使其产生熔化的效果,选择ffd1latticeParticleShape,然后Window -> Animation Editors -> Expression Editor.
  写入下面的表达式:
  vector$melt = ffd1LatticeParticleShape.worldPosition; float $spread = ffd1LatticeParticleShape.spread; float $thickness = ffd1LatticeParticleShape.thickness; if ($melt.y < $thickness) ffd1LatticeParticleShape.velocity = unit_ (ffd1LatticeParticleShape.worldPosition - <<0,0,0>>) * $spread;
  点击create。

  现在很容易就可以通过spread和thickness属性来控制熔化的动画了,选择ffd1latticeParticle,在channel box里面,把spread设置为4,把thickness设置为1,看看动画的效果。

  更进一步控制动画
  (1)如果要减缓熔化的速度,可以把gravity的magnitude属性降低。
  (2)试验一下不同的spread和thickness的搭配,会有不同的效果。
  (3)也可以加一些turbulence场来使动画更随机。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-18 13:25 , Processed in 0.852702 second(s), 33 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部