毛发渲染与模拟设置参考

毛发渲染与模拟相关设置和属性的列表。

Windows
MacOS
Linux

本页面对虚幻引擎4中与毛发渲染和模拟有关的不同组件和Actor进行了探讨,并为它们的可用设置提供了参考。

Groom Actor

Groom(梳理)组件的 细节(Details) 面板中有以下属性。

GroomActorSettings.png

属性

说明

材质

元素 [N](Element [N])

将毛发材质分配到此资产槽。

Groom

Groom资产(Groom Asset)

用于渲染的发束资产。

将Groom绑定到骨架网格体(Bind Groom to Skeletal Mesh)

激活时,若Groom组件为骨架网格体/蒙皮组件的子项,则毛发梳理将附加并蒙皮到网格体上。它需要以下项目设置:启用计算皮肤缓冲(Compute Skin Cache),且禁用"在骨架网格体上初始tick动画(Tick Animation on Skeletal Mesh Init)"。

源骨架网格体(Source Skeletal Mesh)

用于创建groom的骨架网格体。若未指定源,则将使用附加Groom组件的骨架网格体。若指定源,则两个骨架网格体需共享同一拓扑。

绑定资产(Binding Asset)

可选绑定资产,用于将groom绑定到骨架网格体上。若未指定绑定资产,则投影在运行时完成,这意味着启动时需大量GPU开销。

Groom组说明(Groom Groups Desc)

Groom的组信息:

毛发计数(Hair Count)

该毛发组内的毛发数量。

导线计数(Guide Count)

该毛发组内的模拟导线数量。

毛发长度(Hair Length)

最长发束的长度。

毛发宽度(Hair Width):

覆盖毛发宽度(单位为厘米)。

毛发根部缩放(Hair Root Scale)

根部毛发宽度的缩放。

毛发梢部缩放(Hair Tip Scale)

梢部毛发宽度的缩放。

毛发修剪长度(Hair Clip Length)

规格化毛发修剪长度。例如,毛发要修剪长度的位置。1表示不修剪,0表示完全修剪毛发。

毛发阴影密度(Hair Shadow Density)

控制毛发密度,在阴影渲染期间增减毛发数量。可在发束数量不符合实际情况时增/减毛发阴影。

毛发光线追踪半径缩放(Hair Raytracing Radius Scale)

缩放光线追踪效果的毛发几何体半径,例如阴影。

逐像素Lod平均顶点(Lod Average Vertex Per Pixel)

逐像素毛发顶点的目标预算。群集发束将基于此大幅修剪。启用 'r.HairStrands.Cluster.Culling' 时使用此属性。

LOD偏差(Lod Bias)

设置所选细节层级(LOD)的偏差。值大于0时,将逐步选择较低的详细LOD。启用 'r.HairStrands.Cluster.Culling' 时使用此属性。

使用稳定的光栅化(Use Stable Rasterization)

此属性确保毛发不混叠。启用后,毛发组可能显得更浓密。单独的毛发仍然较细。

散射场景照明(Scatter Scene Lighting)

此属性以场景颜色照亮头发。用于绒毛/短毛发,以从周围表面(如皮肤)吸收光。

Groom资产

导入含毛发梳理的Alembic(*.abc)文件时,在内容浏览器中创建的Groom资产中包含以下属性。

Groom_AssetProperties.png

属性

说明

毛发分组

分组ID(Group ID)

为此导入毛发梳理指定的分组ID。

曲线数(Curve Count)

已导入Groom文件中包含的曲线数。

导线数(Guide Count)

已导入Groom文件中包含的导线数。

自动生成的导线(Auto-Generated Guides)

勾选此项后,Groom文件导入期间将启用 覆盖导线(Override Guides)

导入选项(Import Options)

覆盖导线(Override Guides)

用生成的导线覆盖导入的导线。

Hair to Guide Density(毛发到导线密度)

在未提供导线的情况下,将毛发转换为引导曲线时的密度系数。

插值质量(Interpolation Quality)

插值数据质量:

  • 低:基于最近的相邻搜索来编译插值数据。低质量插值数据,但可快速编译,仅需数分钟。

  • 中:使用匹配曲线形状的搜索来编译插值数据(但空间范围有限)。这是 在质量和编译时间(数分钟)上的折中产物。

  • 高:基于匹配曲线形状的搜索来编译插值数据,输出高质量插值数据。但编译速度相对较慢,需要数十分钟。

插值距离(Interpolation Distance)

插值距离指标:

  • 参数化:基于曲线参数化距离来编译插值数据。

  • 根:基于导线根与发束根之间的距离来编译插值数据。

  • 索引:基于导线与发束顶点指数来编译插值数据。

随机导线(Randomize Guide)

随机化影响给定发束的导线。

使用唯一导线(Use Unique Guide)

强制使发束受唯一导线的影响。

材质(Material)

指定默认材质,以供此Groom资产使用。

毛发物理性质

解算器设置(Solver Settings)

启用模拟(Enable Simulation)

在组上启用模拟。

Niagara解算器(Niagara Solver)

选择用于模拟的Niagara解算器。从 Cosserat杆(Cosserate Rods)角弹簧(Angular Springs)自定义解算器(Custom Solver) 中选择。

自定义系统(Custom System)

Niagara解算器(Niagara Solver) 属性选择 自定义解算器(Custom Solver),添加要使用的自定义Niagara系统。

子步长(Sub Steps)

每帧要完成的子步长数。实际的解算器调用以每秒24帧的速度完成。

迭代计数(Iteration Count)

用xpbd解算器解算约束的迭代数。

外力(External Forces)

重力矢量(Gravity Vector)

用于重力的加速矢量,以cm/s2为单位。

空气阻力(Air Drag)

用于空气阻力的介于0到1之间的系数。

空气流速(Air Velocity)

周围空气的速度,以厘米/秒为单位。

材质约束(Material Constraints)

弯曲约束

解算弯曲(Solve Bend)

在xpbd循环期间启用弯曲约束的解算。

项目弯曲(Project Bend)

在xpbd循环之后启用弯曲约束的投影。

弯曲阻尼(Bend Damping)

应用于弯曲约束的阻尼,使用0到1之间的值。

弯曲刚度(Bend Stiffness)

弯曲约束的刚度,以GPa为单位。

刚度缩放(Stiffness Scale)

曲线确定弯曲刚度沿每根发束缩放的程度。X轴范围为0,1。0映射到根部,1映射到梢部。

拉伸约束

解算拉伸(Solve Stretch)

在xpbd循环期间启用拉伸约束的解算。

项目拉伸(Project Stretch)

在xpbd循环之后启用拉伸约束的投影。

弯曲阻尼(Bend Damping)

拉伸约束的阻尼,使用0到1之间的值。

拉伸刚度(Stretch Stiffness)

拉伸约束的刚度,以GPa为单位。

刚度缩放(Stiffness Scale)

曲线确定拉伸刚度沿每根发束缩放的程度。X轴范围为0,1。0映射到根部,1映射到梢部。

碰撞约束

解算碰撞(Solve Collision)

在xpbd循环期间启用碰撞约束的解算。

项目碰撞(Project Collision)

在xpbd循环之后启用碰撞约束的投影。

静态摩擦(Static Friction)

用于与物理资产碰撞的静态摩擦。

动态摩擦(Static Friction)

用于与物理资产碰撞的动态摩擦。

发束粘度(Strands Viscosity)

用于自我碰撞的介于0和1之间的粘度。

网格尺寸(Grid Dimensions)

用于计算粘性力的网格尺寸。

碰撞半径(Collision Radius)

用于物理资产碰撞检测的半径。

半径缩放(Radius Scale)

曲线确定碰撞半径沿每根发束缩放的程度。X轴范围为0,1。0映射到根部,1映射到梢部。

发束参数(Strands Parameters)

发束尺寸(Strands Size)

用于模拟的每根导线的粒子数。

发束密度(Strands Density)

发束密度,单位为g/cm3。

发束平滑(Strands Smoothing)

传入导线曲线介于0到1之间的平滑度,可实现更好的稳定性。

发束厚度(Strands Thickness)

发束厚度(以厘米为单位),用于质量和惯性计算。

厚度缩放(Radius Scale)

曲线确定发束厚度沿每根发束缩放的程度。X轴范围为0,1。0映射到根部,1映射到梢部。

毛发插值

启用全局插值(Enable Global Interpolation)

允许使用径向基插值代替局部皮肤刚性变换。

毛发插值类型(Hair Interpolation Type)

选择将groom绑定到骨架网格体时要使用的插值类型:

  • 偏移变换(Offset Transform):插值过程中仅使用最接近根部皮肤三角形的平移。

  • 平滑变换(Smooth Transform):插值过程中使用最接近根部皮肤三角形的平移和根据导线计算出的平滑旋转。

  • 刚性变换(Rigid Transform):插值过程中仅使用最接近根部三角形的平移和旋转。

文件路径

源文件(Source File)

导入的源Groom文件的驱动文件路径。

毛发实验室

资产用户数据(Asset User Data)

与资产一起存储的数据阵列。

Groom导入选项

导入含毛发梳理的Alembic(*.abc)文件时,以下导入选项可用。

GroomImportOptions.png

属性

说明

转换

旋转(Rotation)

固定到上轴或前轴的旋转(欧拉角)。

缩放(Scale)

将文件单位转换为厘米的缩放值。

编译设置

覆盖导线(Override Guides)

用生成的导线覆盖导入的导线。

毛发到导线密度(Hair to Guide Density)

无导线时,将毛发转换为引导曲线的密度系数。

插值质量(Interpolation Quality)

插值数据质量:

  • 低:基于最近的相邻搜索来编译插值数据。低质量插值数据,但可快速编译,仅需数分钟。

  • 中:使用匹配曲线形状的搜索来编译插值数据(但空间范围有限)。这是 在质量和编译时间(数分钟)上的折中产物。

  • 高:基于匹配曲线形状的搜索来编译插值数据,输出高质量插值数据。但编译速度相对较慢,需要数十分钟。

插值距离(Interpolation Distance)

插值距离指标:

  • 参数化:基于曲线参数化距离来编译插值数据。

  • 根:基于导线根与发束根之间的距离来编译插值数据。

  • 索引:基于导线与发束顶点指数来编译插值数据。

随机导线(Randomize Guide)

将影响给定发束的导线设为随机。

使用唯一导线(Use Unique Guide)

强制让发束受特定导线的影响。

绑定资产选项

创建Groom资产绑定资产时,可设置以下属性。

BindingAssetOptions.png

属性

说明

转换

源骨架网格体(Source Skeletal Mesh)

最初创建groom的骨架网格体。这是可选槽,仅在除创建groom骨架网格体以外的骨架网格体上完成毛发绑定后使用。

编译设置

目标骨架网格体(Source Skeletal Mesh)

用于附加groom的骨架网格体。

毛发插值

插值点数(Num Interpolation Points)

用于rbf插值的点数。

绑定资产

创建Groom资产绑定资产时,以下选项可用。

BindingAsset.png

属性

说明

编译设置

Groom

此绑定资产所附的Groom资产。

源骨架网格体(Source Skeletal Mesh)

最初创建groom的骨架网格体。这是可选槽,仅在除创建groom骨架网格体以外的骨架网格体上完成毛发绑定后使用。

目标骨架网格体(Source Skeletal Mesh)

用于附加groom的骨架网格体。

毛发插值

插值点数(Num Interpolation Points)

用于rbf插值的点数。

毛发组

曲线计数(Curve Count)

用于此绑定资产的、包含在已导入groom文件的曲线数量。

曲线LOD(Curve LOD)

用于此绑定资产的渲染细节层级曲线的数量。

导线计数(Guide Count)

用于绑定资产的、包含在已导入groom文件中的导线数量。

导线LOD(Guide LOD)

用于此绑定资产的模拟细节层级的数量。

Select Skin
Light
Dark

欢迎来到全新虚幻引擎4文档站!

我们正在努力开发新功能,包括反馈系统,以便您能对我们的工作作出评价。但它目前还未正式上线。如果您对此页面有任何意见与在使用中遭遇任何问题,请前往文档反馈论坛告知我们。

新系统上线运行后,我们会及时通知您的。

发表反馈意见