Houdini 中文帮助文档

Metaball

创建一个变形球和四边形的曲面。

此节点会创建一个变形球和变形球曲面。如果你在构造平面上点击,拖动鼠标的话,它会创建一个变形球,且X半径就是你拖动的值。变形球曲面是综合的变形球效果,表示其无需是椭圆形的。

Introduction

变形球提供了一种创建有机曲面的方法。变形球是空间中密度场的曲面效果。Houdini会绕着这些密度大于一定阈值的区域蒙皮一个曲面。

当两个变形球重叠时,Houdini会添加场来影响它们。因为Force场的密度可以通过其它变形球的Force场被增加,所以变形球有唯一的一个特性,即它们会绕着变形球自适应的改变其形状。此对构建有机曲面非常高效。

你可以指定负的权重值来创建“可推动”的变形球。其可以让你通过减去密度值,在曲面中创建洞。

密度场是由 kernel 函数和权重值控制的。kernel函数控制着密度从1到0的渐变。权重值缩放密度,用于向中心或远离中心偏移曲面。当前你可以指定场的形状为椭圆,或四边形的。

Placing Metaballs

To…Do this
在场景任意位置放置变形球1. 点击创建选项卡中的变形球工具。

2. 将鼠标移动到视图。

Note

你可以按住Alt键将变形球分离构造平面。

3. 左键点击场景任意位置放置变形球。

如果你未点击,而是按Enter键,Houdini会在原点放置变形球。

在原点放置变形球按住Ctrl+左键点击工具架上的变形球工具。

如果你是在几何体级别,或者己选择了一个物体,且已经创建了变形球,它会进入所选的物体中。如果处于场景级别,并且已经生成了变形球,视图和网络编辑器会切换到所选对象级别。此特性可以让你自动合并多个变形球(把它们排列在一起)。

%image_alt%

Note

一旦在视图中放置了,可以通过在场景中拖动,或改变参数编辑器中的数值来移动变形球。

Metaball Handles

在几何体级别有专门用于变形球的操作手柄,可以让你挤压或拉伸它。

1. 通过双击网络编辑器中的metaball节点,或者点击工具栏中跳到操作节点按钮,来移动到几何体级别。

2. 拖动手柄来挤压或拉伸变形球。

To…Do this
沿X轴拉伸或挤压变形球拖动红色手作柄
沿Y轴拉伸或挤压变形球拖动绿色的手柄
沿Z轴拉伸或挤压变形球拖动蓝色的手柄

%image_alt% %image_alt% %image_alt%

How to

To…Do this
让变形球相互影响使用Merge节点将节点合并
简单地创建大量变形球创建单个变形球,使用Copy节点将其拷贝到其它几何体的顶点上

将变形球拷贝到粒子系统的点上是一个快速获取各种体积视觉效果的方法。

加速变形球的显示1. 在视窗选项中选择显示》显示选项,或按D键。

%image_alt%

2. 点击视窗选项卡,降低细节级别设置来得到快速,但是粗糙显示的几何体,包括变形球。

将变形球转为其它几何体类型Use the convert tool. 使用转换工具。

Super-quadratic field shapes

而非创建规则的椭圆形状,你可以增加火减少XYZ的参数值,来创建星形或四方形的变形球。

A metaball is known as a super-quadratic if either exponent is not equal to one.

How metaballs work

每个变形球都有一个球体影响范围。当你合并两个变形球时,它们会相互扩展到彼此的影响范围中,和水滴作用效果类似:曲面张力会光滑变形球之间的桥接对象。此可以创建有机的曲面水滴外形,其会相互融合。

变形球可以被认为是一种球形化的力场,其曲面是在任意点处(力场的密度值等于特定的阈值)用隐函数来定义的。因为力场的密度值可以被临近的变形球的力场增加,所以变形球有唯一的一个特性,即它们会绕着变形球自适应的改变其形状。此对构建有机曲面非常高效。 如,下面有一个变形球。当变形球的密度场达到特定的阈值时,其会形成曲面。

%image_alt%

当两个或多个变形球合并时,如下面显示的,会添加最终力场的密度,然后曲面会扩展到包含力场交叉的区域(密度值为1)。要获取更多关于变形球的信息,查看几何体类型章节。

%image_alt%

你可以通过开启显示Primitive壳线选项来查看变形球的影响球体。

此节点的思想是创建有机的模型,液体效果,或水滴效果的曲面。

Houdini可以在不同情况下使用变形球来定义影响场,如Force节点,其会推动或拉伸弹簧,以及使用Capture Metaball节点来计算更复杂的角色几何体运动。

Tips

Level of detail你可以通过条件显示选项中的细节级别参数来改变变形球和曲面显示的细节级别。
Better metaball shading当转化多边形完成时,若存在法线属性,则会精确的计算变形球法线。因此,要提高多边形化后的变形球着实质量,可以在转换变形球前添加法线属性。
Using metaballs to prune L-system copying使用Copy节点将变形球拷贝到每个变形的几何体点上是经常用的方法。当做这些时,将任何变形几何体通过Facet节点处理,并焊接点将点数量降低到你想要的数量是一个不错的思想。如果从曲线曲面上转换,你可能要先重划分曲面精度,得到一个光滑的变形球分布效果。

如果使用变形球给Particle SOP节点创建一个变形牵引器,你可以使用Group节点来定义一个边界区域,然后拷贝变形球到组中的点上。此可以让你更容易控制和动画吸引区域。

Meta Expressions

变形球表达式是用户指定的属性,定义变形球是如何合并的。要使用meta表达式,首先使用组来合并变形球。你可以以组或Primitive标号方式引用变形球。然后,使用Attribute Create节点来创建名为metaExpression的字符串。

Note

属性必须叫metaExpression。

在一个字符串参数中,输入你相应控制变形球如何合并的表达式。这些表达式可以使用带引号的组,或不要引号的Primitive标号,以及min,max,sum操作符组成。一个有效的表达式例子如下:

group1, group2, group3 和 group4 都是组的名称,0和1是变形球的Primitive标号。min,max,sum操作可以使用任意的数字,支持嵌套表达式,如sum(max(…), …). 参数对于 min, max, or sum 是分离的。给组的名称使用一个引号等同于将组中的每个变形球的Primitive标号加到当前参数列表中。如,如果组1包含标号为0,1,2的变形球,那么表达式

max(“group1”)

等同于

max(0, 1, 2)

表达式也支持拷贝参数名。如,如果一个primitive标号为0的变形球被定义了,那么表达式sum(0, 0) 等同于将两个不同的变形球在同样的位置处合并成一个变形球。

下面的图像显示了使用sum,max,min操作合并的两个变形球:

%image_alt%

%image_alt%

%image_alt%

可以通过在任何包含变形球的几何体上,创建一个Detail或字符串属性,配合想要的表达式来实现这些表达式效果。此功能也可以通过MergeGroup节点来实现。此SOP可以让用户通过创建变形球组,简单的生成表达式。每个这些组都是由组名,通过空格分隔组成的。

Tip

你可以增加显示选项中视图面板的细节级别,来增加显示精度,但是会耗费视窗性能和内存。


Parameters

Mode如何解释用于变形球的参数。

Field Radius将半径作为密度场的缩放来对待。阈值曲面就是此半径,权重,kernel函数的综合结果。
Threshold Radius将半径作为值为1的阈值曲面的半径,并且计算对应密度场的缩放值(使用给定的半径,权重,kernel函数)。在此模式下改变权重不会改变变形球的孤立的阈值曲面。
Radius变形球的X半径就是当你电极构造平面,未拖动时放置的位置。如果你点击,拖动了,变形球的尺寸会被拖动的数量覆盖。在XYZ中输入不等的值会产生椭圆形状。

X半径是由从中心到拖动距离所定义的,而Y和Z半径的变换会随着X/Y,X/Z的比例发生变化。

Center变形球的中心位置。当你点击创建一个变形球时,此值会被更新。如果你按Enter,会在这里放置一个新的变形球。
Weight变形球对周围变形球的推动程度,会使它们合并到一起。
Kernel Function
%image_alt% Blinn将球体放在水滴中心,即使权重值小于1.此方式快速稳定。
%image_alt% WyvillWyvill和Elendt 模式很类似。只是权重的构建函数不同。
%image_alt% Elendt
%image_alt%
Links
此方式最慢,但是在Blinn 和 Wyvill 模式间,就权重分配而言,其最折中。
%image_alt%RenderMan被RenderMan所使用。定义是:

$$Density = 1 – 3*R^2 + 3*R^4 – R^6$$

%image_alt% HartA kernel function suggested by mathematician John Hart.
XY Exponent定义X和Y轴上的扁平度。
Z Exponent定义Z轴上的扁平度。
点击分享到: