【重磅翻译】houdini15.5最新动力学卷翻译文档


终于赶在周日把动力学卷翻译完,主要介绍了动力学大部分知识点和刚体的学习;这次翻译工作量比上次粒子篇的工作量大很多,基本上是3-4倍工作量,基本上都是一大堆的文字;在这次翻译中的确收货了很多,比如多种方法实现动画与动力学的混合(OBJ position节点和blend solver等)了解了FEM的强大功能(各种参数和属性控制)还有约束与约束网络等;小编一直觉得动力学卷是最难学的部分(可能有人说是流体与烟火),是因为刚体部分不仅仅是自身参数,还需要大量的sop中设置的参数和sopsolver参与的解算;不过有了这个帮助文档,的确解答了我很多的疑问和提供很多新的思路,希望对大家有帮助~

翻译特点

1保留英文原版,基本上就是一页中文一页英文,方便大家对照学习

2基本上都是按照小编的理解来翻译的,翻译减少了重复的内容(比如每次写如何创建基本粒子系统,但是英文是保留的)并且加上了小编的一些注解和插图(所以有可能英文版本没有,但是小编决定有必要加上的)

3翻译字数:24552,A4大小,一共80页内容(包含中英对照)

ps

下面依旧会有土豪小礼物,也就是小编搭配着帮助文档学习动力学到视频教程,是小编最推荐的那种,基本上1-2天就可以把动力学入门了,希望大家能够快速提高~

本翻译目录

学习动力学

十个关于动力学重要的基本知识

十个关于动力学重要的中级知识

十个关于动力学重要的高级知识

管理动力学网络

缓存模拟

可视化动力学

流体源

为动力学解算设置视图和软件桌面(界面)

碰撞物体

刚体动力学

实心物体(FEM)

破碎

如何自动破碎物体

如何控制voronoi Fracture破碎效果

进阶

理解houdini的动力学

约束

优化模拟

输入和输出

Hqueue

分布模拟

关键帧动画与模拟的混合


十个关于动力学重要的基本知识

一动力学模拟包含物体,解算器,通常还包含力

1按ctrl点击sphere工具(create工具标签)在原点创建一个小球;

2选择这个sphere,在rigid bodies工具架标签中点击rigidbody

3点击播放条的播放按钮

小球在下落因为现在他已经是一个动力学物体。当你第一次创建动力学物体,houdini会自动在obj层级为你创建一个模拟网络,用来放置定义模拟物体行为的节点。这个动力网络默认名字是AutoDopNetwork

TMI

你可以手动创建任意数量的动力学节点网络,但是工具架工具会默认在Autodopnet中创建,除非你手动指定不同的动力学网络,通过软件有下端当前模拟中设置。

如果你双击Autodopnetwork进入内部,你开会看到houdini默认为你创建的动力学网络(你可以按快捷键L进行快速排列)

节点网络非常简单,但是每个节点都展示了houdini动力学的一些基本原理,默认包含了物体,解算器和力

Dynamic object物体包含了定义用来模拟解算物体所需要的参数。在网络上部,sphere object节点包含模型基本路径信息(指定到你之前创建的小球),密度,温度,物体摩擦力,初始化位置,选择,速度等。

Solver解算器的作用就是计算动力学物体的怎么运动。在每一次步幅时间中检测模拟状态和使用节点内部规则来修正运动状态。在节点网络中,RBD solver模拟刚体小球的运动和碰撞状态。

力是你可以添加给物体的一个数据(场景中的所有物体或者单独物体)。可以这样描述,比如,这个物体被风力影响,这个物体的运动被阻力减慢。在网络节点中,重力节点连接一个力的数据到模拟中,当解算器检车到物体上的力的数据时候,它知道在每次时间步幅中需要把物体向下拖拽重力的量。(drive simulation 工具架上的工具可以让你给动力学添加力)

Houdini有许多不同的解算器类型

下面是一些主要的解算器

Rigid body刚体:houdini有一个原生的解算器可以完全支持与其他动力学物体交互,还有bullete和ODE解算器,这些对于某些特定类型刚体解算速度更快。

Grid based fluids 基于网格的流体

Particle fluids 粒子流体

Particle system 粒子系统—粒子可以和其他动力学物体交互作用,比如,你可以喷洒粒子到RBD刚体物体来撞到他们。

布料和线

三 让两个物体碰撞你需要合并他们两个支流

在其他网络类型中,merge节点合并他们的输出结果。但是在动力学中,merge节点创建关系。关系是一种特别的数据类型,用来描述一个物体如何影响另外一个物体。

动力学中的主要关系是碰撞关系,意味着当物体与其他物体碰撞的时候会改变他们的形状,运动,行为。在RBD,wire和cloth中还有约束关系(比如pins和springs)。

关于关系重要的一点就是他们花费大量时间计算,所以为了节省时间,你需要仅仅对需要交互的物体进行关系设置,并且尽量使用单向关系(A影响B但是B不影响A);

Detail view细节视图包含了关系矩阵用来展示物体间的影响关系

四在视图中可视化模拟

查看 动力学可视化章节

五开启和关闭

这一部分已经更新

一共有三个部分,从左到右边分别是  bypass(过滤掉),hidden隐藏和output输出(输出现实激活一般在最后一个节点中)。

动力学有这个bypass按钮,你可以用来测试这个节点的 效果,经常用于在细节使用中检测数据生成的debugging操作。

如果你想给当前物体或者数据k动画,给节点中的Activation参数k动画。当这个参数非0的时候,这个节点激活,影响动力学效果。当Activation是0的时候,这个节点不起作用,类似与bypass激活一样。

六 dtails view 细节视图让你查阅模拟的内部状态

细节视图是你查看模拟底层物体的细节窗口。你可以通过命名 create new details view或者选择window→desktop→technical界面布局,已经包含了这个detail view视图。

左边的树状大纲视图代表场景的物体和目录,比如关系,还有分支来代表附加在物体上的数据层级。右边选择左边物体的具体数据。

这个面板对于检查模拟结果非常有用。你可以查看当前帧哪些数据依存与哪些物体,哪些是是当前显示的节点,名字,数据包中独一无二的id和组成这些数据的数值。

当你播放模拟的时候,细节图会动态更新,这个对于你想看看数据如何随着时间改变非常有用,但是会减慢回放速度。你可以使用面板分割线把细节视图关闭当你想让你的模拟回放更加流畅。

七多个物体和多个解算器

RBD物体—物体的数量 $OBJID

Rigid body fracture

八DOP 网络是如何进行模拟的

动力学网络是从顶到底部,从左到右边。对于一个节点连接多个输入端,从上到下,计算第一个输入端,然后再从上到下计算第二个输入端这样计算下去。

次级解算步幅

为了让解算器的碰撞检测更加精确,提高solver中的maximum substeps(最大步幅)的值。这个通常会让模拟花费更多的时间计算。

你还可以调整DOP network容器中全局提高Timestep 参数来整体提高解算精度。

动力学引擎计算模拟的时间单位是time step:从houdini 解算停止到下一帧开始的时间总和。通常这个解算时间需要几帧的普通时间(比如每秒24帧的正常时间)但是并不是一定的;较大的timestep让houdini更容易进行模拟运算,但是更低的精度;更低的timestep需要更长的时间来计算,但是结果会更加精确。

设置动力学网络的timestep,打开DOP network的参数面板,点击模拟标签,设置time step 参数。

在动力学网络中单独的解算器中,可以单独设置sub-steps来对全局的timestep进行细分设置,这个仅仅会影响自身计算器精度,而不需要影响场景中的其他解算器精度(如果使用全局设置就会对所有解算器都会影响)

设置单独solver中的timestep,就是设置 minimum substeps和maximum timestep参数。提高minimum substeps的值把solver 细分成更多的解算步幅。用maximum timestep来限制最大步幅,确保合理的解算时间。

提示

如果你关闭时间线回放选项中的整数帧并且设置step为你的substeps的值,你可以使用箭头按钮在不同的substeps张移动。

九 物体和模拟网络中数据的导入和导出

当使用动力学设置,huidini把普通物体转化为动力学物体,动力学网络把物体从sop中导入到dop中进行运动模拟(在dop动力学网络中的RBD object节点)。

Sop中的物体导入dop中的运动数据到物体中(在geometry网络中底层的dop import 节点)。

所以你渲染的还是之前的几何体,包含物体,位置等属性,由动力学创建的。动力学网络AutoDopNetwork有自己的显示标签默认是关闭的,表示它不会用于渲染;

这个原因很简单,因为mantra设置是用来渲染物体,所以把运动信息导回到物体中可以让你有所有需要渲染的参数控制。当然,从技术上说,你可以直接在obj层级中对动力学网络进行渲染,可能会包含了很多参考和用户界面等你需要渲染的元素。

TMI

一些模拟工具,比如pyro FX 工具,会创建新的object容器来装模拟结果用来渲染,而不是直接把他们导入到源物体中。比如,如果使用Flame工具来创建烟火,工具会自动在object层级帮你创建一个新的import_pyro_build物体来导入模拟结果。

Houdini动力学使用的单位是千克,米和秒

由于解算器模拟的是真实世界的物理进程,他们需要一个想对于真实世界的度量单位;

Houdini的设计者使用国际单位系统(international system of units):1个houdini单位等于1米,重量都是以千克为单位,时间用秒作单位,其他复合单位由这三个基本单位衍变比如 密度是 千克/立方米  kg/m³。

(0)

相关推荐