VDB体素

VDB Voxel项允许您渲染以开源VDB Voxel格式存储的外部创建的模拟,以及从网格或粒子生成体数据。OpenVDB格式是存储分层数据结构的有效方法。

模拟的性质可以是体积的,例如烟和云,也可以表示表面,例如水或其他液体。体积效果必须连接到“体积项目”才能渲染Modo。曲面可以连接到Blob,或使用内部网格划分功能。 Draw Mesh Surfaces选项已启用。

注意:  VDB Voxel使用OpenVDB 3.0。不支持使用Blosc编码的VDB文件。

烟雾示例:

流体示例:

渲染体积

将VDB Voxel项添加到场景中的场景中Item ListAdd Items >Volumes >VDBVoxel。选择项目后,从Properties面板,使用Load File按钮并找到所需的OpenVDB文件(<文件名> .vdb)。加载后,类似octree的网格将出现在3D视口中,代表体素形状。此时,该项目尚未渲染。要使用体积项目,VDB Voxel项目和Volume必须在Schematic视口。这是通过选择Item List然后,在Schematic视口中,单击Add Selected按钮(或通过拖放到视口中)。到达那里后,连接VDBVoxel关系连接器Voxel Source在卷项目上输入。有关在Schematic视口,请参阅示意图视口

铺面是通过在Shader Tree。选择Volume项,然后单击鼠标右键以打开上下文菜单,然后选择Create Item Mask命令。在里面Shader Tree,选择结果Material生成的蒙版中的项目,然后编辑Volumetric Properties在下面Material Rays子标签。

渲染表面

将VDB Voxel项添加到场景中的场景中Item ListAdd Items >Other >VDBVoxel。选择项目后,从Properties面板,使用Load File按钮并找到所需的OpenVDB文件(<文件名> .vdb)。加载后,类似octree的网格将出现在3D视口中,代表体素形状。此时,该项目尚未渲染。要创建表面,只需启用Draw Mesh Surfaces选项。启用后,多边形化的表面在3D视口以及任何渲染中均可见(对于大型VDB文件,生成该表面可能需要一些时间)。铺面是通过在Shader Tree。选择VDBVoxel项,然后右键单击以打开上下文菜单,然后选择Create Item Mask命令。在里面Shader Tree,选择结果MaterialItem在生成的蒙版中,并编辑任何可用的标准材料属性。

网格化粒子

将粒子模拟加载到场景中,或使用任何提供的粒子模拟组件生成粒子模拟。完成后,确保缓存模拟。将VDB Voxel项添加到场景中的场景中Item ListAdd Items >Other >VDBVoxel。选择项目后,从Properties面板,使用Source Item选择器,然后选择所需的粒子模拟作为源元素。接下来,启用Draw Mesh Surfaces将粒子与表面网格化的选项。从这里Filtering设置以及体素的RadiusResolution设置起作用。它们可用于修改所得表面的外观。铺面是通过在Shader Tree。选择VDBVoxel项,右键单击以打开上下文菜单,然后选择Create Item Mask命令。在里面Shader Tree,选择结果Material项,并编辑任何可用的标准材料属性。

VDBVoxel选项

以下选项可用于VDBVoxel

转变

转变

Position

使用X,Y和Z输入字段应用特定的偏移距离值,该值是从激活工具时对象所处的位置计算得出的。在视口中交互式调整对象时,“位置”输入字段将显示当前应用的偏移距离,从而提供有用的反馈。

Rotation

使用X,Y和Z输入字段来应用特定的旋转值。在视口中交互式调整对象时,这些输入字段将显示当前应用的偏移距离,从而提供有用的反馈。

Scale

使用X,Y和Z输入字段来应用特定的缩放值。在视口中交互式调整对象时,这些输入字段将显示当前应用的比例因子,从而提供有用的用户反馈。

Reset

将选定的变换值重置为(0,0,0),将项目恢复为默认状态。

Zero

将选定的变换属性值重置为0,使中心位置和网格位置保持不变。

Add

变换项目是与某个项目相关联的通道组,这些项目存储其变换值,控制其位置,旋转和/或缩放。默认情况下,新项目没有与之关联的任何变换项目(即使它们在“属性”面板中也可见)。由于仅在必要的基础上添加了必要的转换,因此可以用作优化,从而减少了场景开销。有几种添加方式。一种是通过使用各种转换工具之一简单地转换目标项目(或通过编辑值的输入字段)。此操作导致特定的变换项目自动添加到“通道”视口列表中。这里的“添加”功能还可以用于将选定的一组变换添加到“通道”列表,同时保留默认的0,0,0值(引用的必要步骤,为了覆盖通道,必须首先存在它们)。

资源

Source

文件名

 

显示当前加载的路径和文件名。要更新当前的VDB文件,请使用Load File按钮。

Load File

 

打开特定于操作系统的对话框,可让您找到并选择要加载的VDB文件。

Source Item

有两个用途:可以加载“网格物体”图层,它们会被VDB Voxel项,或者另外可以指定粒子源,并使用Draw Mesh Surfaces启用此选项后,可以将粒子“网格化”(意味着应用了多边形表面)。定义粒子源后, Filter设置和Voxel进行设置以控制表面的外观。

粒子体积

Particle to Volume

Velocity Scale

根据速度控制粒子拉伸的比例。值是基础值的加法运算,因此“拉伸粒子”(100)的值将生成一个长度被拉伸两倍(总共200%)的粒子。

Radius Scale

控制添加到每个单个粒子体积的标度的随机量。该数量由比例百分比确定-设置为25%时,将对所有粒子随机地以0%-25%的量调整基本半径尺寸的比例,设置为50%时,其尺寸以0%-50%进行调整。随机跨越所有粒子,依此类推。

小费:  网格化粒子源时(通过Source Item控制) Radius值定义围绕每个粒子位置形成的虚拟球体形状的渲染大小。的Resolution设置和Filtering值确定最终结果如何像球形。

体素滤镜

Voxel Filter

Filter Mode

确定应用于从粒子生成的表面的平滑方法。可能的选项是NoneMeanGaussianMedian。的None选项禁用过滤,而MeanGaussianMedial所有表面平均值的均值不同,产生的结果略有不同。结果还取决于Width设置和Resolution的体素。

Filter Width

定义在以下情况下应用于生成的曲面值的平均滤波器的大小Filter Mode以外None被选中。较大的尺寸会产生更平滑的表面,但会减少整体细节。

网格划分选项

Meshing Options

生成体素网格

启用后,将应用多边形表面。

Voxel Resolution

确定粒子的网格化程度。低值可以通过滤波轻松平滑,但细节有限。较高的值会产生更多的细节,但可能还需要进行其他过滤以消除分辨率失真。

Motion Blur

定义用于创建体积的粒子的运动模糊的值。

可视化

Visualization

Density

定义VDB文件的哪些存储的功能用于表示3D视口中的可视化表单。

Draw Grids

切换基于3D视口的代表性网格状显示的可见性Feature定义。

Draw Mesh Frames

加载多帧序列时,启用此选项将加载所有后续帧并将其绘制在3D视口中。

杂项

Misc

Clear Cache

用于从RAM中删除所有存储的数据。如果Mode设定为Fast要么Full,或者如果Mode更改为None

注意:  您可以访问其他缓存选项Cache ModeCache Size在里面Rendering偏好。在菜单栏中Windows,点击System > Preferences... > Rendering > Final Rendering对于Mac OS,请点击Menu > Preferences... > Rendering > Final Rendering。有关更多信息,请参见渲染首选项

Freeze To Mesh

用于从类型转换项目VDBVoxelMesh

应用流体渐变效果

Modo能够从VDB Voxel文件中加载流体纹理效果的压力,温度和燃料。将体素网格转换为流体渐变效果,使您可以渲染外部创建的模拟并使用导入的纹理效果从网格或粒子生成体积数据。

注意:  这些纹理效果是只读的。您只能将它们设置为输入参数,而不能设置为输出参数。

要将流体渐变效果添加到VDB Voxel文件中:

1.   将渐变项添加到场景。为此,通过单击打开着色器树Shading标签,然后单击Add Layer然后选择Processing > Gradient
2.   在里面Properties > Texture Layers窗格,展开Surface Gradient.
3.   点击Input Parameter下拉菜单,展开Volumetric Effects,然后选择以下选项之一:

Fluid Temperature -从VDB Voxel源文件导入流体温度体积数据,将其转换为Modo梯度输出。

Fluid Fuel -从VDB Voxel源文件导入流体燃料体积数据,将其转换为Modo梯度输出。

Fluid Pressure-从VDB Voxel源文件导入液压体积数据,将其转换为Modo梯度输出。

4.   在里面Mesh Operations清单, Item List标签,点击Add Item
5.   选择Volumes > VDBVoxel
6.   在里面Properties窗格下Source,点击Load File

7.   加载一个.vdb包含的文件TemperatureFuel , 要么Pressure效果。
8.   渲染场景以查看结果。

有关渲染的更多信息,请参见渲染图