广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    使用Xpresso实现多齿轮旋转

    来源:网络收集  点击:  时间:2024-05-22
    【导读】:
    C4D中有一个很牛的功能就是Xpresso,想要成为C4D高手熟练使用Xpresso是必须的,毕竟一点一点K关键帧是很没有效率的。今天我们要做的就是利用Xpresso实现多齿轮交互动画。工具/原料moreC4D,Xpresso方法/步骤1/12分步阅读

    打开C4D,添加齿轮,并使用挤压,给齿轮增加一定的厚度,修改名字为齿轮1,如图1.

    2/12

    复制刚刚挤压好的齿轮,把挤压1下齿轮改名为齿轮2,并调整好位置。

    为了让齿轮有大小的不同,选中齿轮2,属性面板--齿选项卡下找到“齿”并修改为30.

    3/12

    右键齿轮1--CINEMA 4D标签--XPresso。给齿轮1添加XPresso标签,这时会直接弹出XPresso编辑窗口。

    4/12

    从对象面板中按住鼠标左键把齿轮1、齿轮2都拖到XPresso编辑器窗口。简单介绍下当前XPresso窗口中齿轮1、齿轮2我们都可以叫做为节点。每个节点都有2类不同的端口。一类是蓝色端口叫做“输入端口”,另一类是红色端口叫做输出端口。在输入、输出端左键单击可以添加节点相应的端口。通过连接输出端和输入端可以让一个节点控制或驱动另一个节点。

    这里一定要注意:连接时必须输出端连接输入端。

    5/12

    如果简单的齿轮1驱动齿轮2旋转我们只需要把齿轮1的计旋转B连接到齿轮2的旋转B就可以了。但是,这样的简单连接做出来的动画太假,而且根本不会制作出齿与齿的咬合。

    所以为了制作副真,我们要通过其他节点的配合完成。

    本例中齿轮1驱动齿轮2。在齿轮1节点的输出端单击左键在弹出菜单依次坐标--旋转--旋转B。给齿轮1输出端添加一个旋转B端口。同样的操作给齿轮2输入端添加一个旋转B端口。

    6/12

    这里我们先分析一下。

    当2个齿轮咬合旋转时,齿轮转动的距离是相同的。所以这里的公式是这样的

    r×a=R×A

    其中

    r:齿轮1半径

    a:齿轮1旋转的角度

    R:齿轮2半径

    A:齿轮2旋转的角度

    7/12

    接下来我们就要把节点以公式的方式来连接。

    在XPresso空白位置右键弹出菜单依次新建节点--XPresso--计算--数学。创建一个新的数学节点。(利用数学节点可以进行数学运算)

    8/12

    数学节点有2个输入端口和一个输出端口。相当于1+1=2,其中2个输入就相当于是“=”左边的2个1,而输出端口就相当于是“=”右边的2.

    按照第6步所写的公式我们来进行连接。其中齿轮1输出端连接到数学节点的输入端,那么问题又来了,现在齿轮1只有一个角度--旋转B,却少了一个半径,怎么连接?其实也很简单,只要把齿轮1的半径添加到齿轮1输出端口就好了。

    齿轮1输出端口左键单击--齿--间距半径,添加半径。

    接下来我们把齿轮1的旋转B,间距半径分别连接到数学2个输入端口就完成连接了。

    9/12

    接下来我们连接齿轮2.

    但是又出问题了,通过第8步的连接我们已经得到了一个输出结果,那就是齿轮1转动的距离。而我们需要得到的结果应该是齿轮2的转动的角度!怎么进行?

    就目前来看数学节点与齿轮2直接连接肯定不行。所以我们还需要加工一下,把数学节点输出的结果转换成角度。

    我们的公式是a×r=A×R,要得到R也不难通过公式的换算可以得到接下来的算式A=a×r/R。

    有了新的算式,接下来也就好做了。

    复制数学节点(按Ctrl+左键拖动),再复制齿轮2节点。齿轮2输出端口添加半径(参考第8步)。

    把数学节点1的输出端连接到第二个数学端口的输入1,再把齿轮2(带半径端口)连接到数学2的输入2,最后把数学2节点输出端连接到齿轮2(旋转B)输入端口。

    10/12

    理论上我们已经完成连接了,但是我们在第8,9这2步忽略了一个问题,那就是数学计算。电脑不是我们肚里的蛔虫,我们想什么它不可能知道,所以我们还要做一些修改。

    第一个数学节点运算改为乘(也就是a×r),第二个数学节点运算修改为除(A=a×r/R)。

    在Xpresso编辑窗点击数学节点,对应的属性面板中切换到节点选项卡,功能-从下增列表中分选择乘。用同样的方法选中第二个数学节点功能改为除。

    11/12

    为了查看结果我们先给齿轮1加一个时间节点,让其根据时间自动转动。

    Xpresso编辑窗口空白处右键,新建节点-XPresso-常规-时间。把时间节点输出端连接到齿轮1输入端。这一步也可以使用K关键帧方法实现齿轮1旋转。

    播放动画。

    测试中又遇到了一个新的问题,齿轮2转动方向不是我要想要。现在齿轮2转动的方向与齿轮1是完全一样的方向,这明显是错误的。

    问题解决也不难,只要把齿轮2旋转反转就好了。

    这里我们要用到一个叫做范围映射的节点来解决问题。

    XPresso编辑窗口空白处右键-新建节点-XPresso-计算-范围映射,添加范围映射节点。

    12/12

    把第二个数学节点输出端连接到范围映射输入端,再把范围映射输出端连接到齿轮2输入端。选中范围映射,在属性面板切换到节点,勾选反转。

    到这里所有的连接已经完。测试动画,正是所期望的结果。

    如果想继续增加齿轮,可以重复8-11步完成连接。

    这里要注意,每个齿轮的旋转方向必须与之有连接的齿轮旋转方向相反。

    你学会了吗?如有问题可留言!

    注意事项

    如果改变齿轮大小请使用修改齿的方式,不要使用缩放!!

    数学节点在进行除法运算时一定要注意输入1,2的顺序

    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_827455.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-05 06:47:34  耗时:0.024
    0.0238s