功能一览

Dolag Houdini Toolset 功能一览

本文档详细介绍了 Dolag Houdini Toolset 提供的所有 HDA 节点和通用功能,帮助您快速上手并充分利用其强大功能。


HDA 节点

所有节点均以 Dolag 为前缀,可在 Tab 菜单的 Dolag 分类下找到。

多边形 (Polygon)

节点名称 功能描述
Add Curve Point 在曲线上的指定百分比位置添加点。
Boolean 对特定情况进行优化处理的布尔运算。
Boolean Fracture 对特定情况进行优化处理的带材质布尔切割。
Convert Line 带有连接曲线功能的 Convert Line 节点。
Convex Hull 2D 计算平面内的凸包。
Curve Expand 将曲线沿其“法线”方向进行扩展或收缩。
Curve Extrude 从曲线生成面片,适合用于创建河道等带状几何体。
Explosive Fuse 先执行 Explode 再执行 Fuse,避免因点过于接近而导致不连续的点被错误融合。
Extract Unshared Edge 获取模型未共享的边缘(即边界线)。
Extrude Wall (功能待补充)
Get CurveU 获取曲线上每个点的 U 属性(即沿曲线的百分比位置)。
Get Point Dist Along Curve 获取曲线上点的累计距离。
Get Prim Centroid 提取 Primitive 的中心点。
Mountain 支持沿非法线方向进行置换的 Mountain 节点。
PolyFill 考虑了多种特殊情况的 PolyFill 节点。
Reverse Abnormal 反转异常的法线。注意:已被 Normal Fixer 替代。
Simple Mesh Fill 考虑了多种情况的“补面”算法,主要用于将非实体对象填充为实体。
Simple Wrap 基于法线计算的收缩包裹算法。
Smooth Sharp Geo 提供多种方式平滑自相交的几何体。
Sort Line Points (已弃用)
Spherize Normal 简单的球面化法线。

实用工具 (Utils)

节点名称 功能描述
Abort 抛出错误并中断执行。注意:Houdini 已内置 Error 节点。
Array Color Array 属性在视窗中显示颜色。
Asset 根据输入条件判断是否报错。
Bake AO 烘焙带 LOD 模型的 AO 到 UV 贴图。
Boids 经典的鸟群(Boids)算法模拟。
Bound 计算最小包围盒,并确保点序稳定
Brick Wall Points 生成砖墙式排列的点。
Check Convex 检测输入几何体是否为凸包。
Divide Points By Weight 将输入的点根据权重属性进行分组。
Export Point Cloud 导出点云为 JSON 数据。
Get Object Orient 获取物体的三个主方向轴。
Helio Intergral 对高度场(HeightField)进行半球积分。
If Null Then Fallback 如果第一个输入为空,则使用第二个输入作为备用。
Import Multiple Fbx 导入多个 FBX 文件。
Import Multiple Fbx Enhanced 导入多个 FBX 文件,支持列表类型的文件路径参数。
Import Multiple FBX With Weight 根据权重导入不同数量的多个模型。
Join Detail 合并多个节点的 detail 属性。
K-Means K-Means 聚类算法,需预先指定聚类数量。(不建议使用)
Keep Biggest Pieces 提取或删除体积最大的几何体碎片。
Lerp 对属性进行线性插值。
Lerp by Attribute 根据属性 A,对属性 B(目前仅支持位置)进行线性插值。
Local Convex Hull 为物体的每个分离部分单独计算凸包。
Map Baker 支持多种插值模式的 Map Baker 节点。
Move Centroid To Origin 将物体的中心移动到世界坐标原点。
Normal Fixer 自动修正模型中方向相反的法线。
Parse Json Data To Geometry 读取 JSON 文件并生成点云。
Piece Count 计算 piece 的总数量。
Portal 双击即可跳转到指定网络路径的门户节点。
Put on Ground 将模型放置在 Y=0 的地面上。
Random Slide Curve Point 将曲线上的点沿曲线进行随机滑动。
Recook on Click 点击按钮时强制重新计算当前节点。
Remove Interior Pieces 移除位于模型内部的几何体碎片。
Scale to Specific Volume v2 将模型缩放到指定的体积大小 (WIP)。
Smooth 根据不同属性控制平滑程度。

属性 (Attribute)

节点名称 功能描述
Attribute Auto Remap 自动重新映射属性的范围。
Attribute from Map with Alpha 读取带 Alpha 通道的贴图颜色。
Attribute Transfer 可以使用位置以外的其他属性进行属性传递。
Auto Levels 自动将属性范围重新映射到 0-1
Auto Remap Attribute 功能同 Attribute Auto Remap
Centroid Transform 注意:建议使用内置的 Transform From Centroid 节点。
Move to Centroid 将一个模型移动到另一个模型的中心点。
Piece Range Remap class 属性(碎片ID)重映射到 0-n 的连续范围。
Push Fbx Path 处理 FBX 的 path 属性,用于生成带层级信息的 FBX。
Re-Number Pieces 重新整理碎片的编号,使其连续。例如,1,3,7,11,90 -> 0,1,2,3,4
Variant Attribute 在随机范围内生成 variant 属性,常用于 Copy to Points 随机选择物体。
Spatial Connectivity 根据 piece之间的相交、距离等关系判断空间连通性。

高度场 (HeightField)

节点名称 功能描述
HeightFileld Analysis 为 HeightField 提供类似 Volume Analysis 的分析功能。
HeightField Creation 创建多层 HeightField。
HeightField Mirror 镜像 HeightField。
HeightField Extend 以镜像、重复、普通模式扩展 HeightField 的范围。
HeightField Mask Invert 反转 HeightField 的 mask 层。
HeightField Mask Transfer 拷贝 mask 层。
UV From HeightField 从 HeightField 创建 UV。

体积 (Volume)

节点名称 功能描述
Crop Volume 对 Volume 属性进行 clamp 操作。
Fog from SDF 从 SDF(有向距离场)生成 fog 体积。
Points from Voxel 在每个体素中心生成一个点。
SDF Noise 为 SDF 添加噪声。
SDF Trim Around Polygon 使用多边形(Polygon)截断 SDF。
Shrink SDF 收缩或扩展 SDF。注意:建议使用内置的 VDB Reshape SDF 节点。
VDB from Polygon (功能待补充)
Volume Connectivity 获取 Volume 的连通性(慢)。
Volume Copy 拷贝 Volume。注意:建议使用内置的 Name 节点。
Volume Fade 输入 Volume 和 Polygon,返回在 Polygon 范围内带衰减的 Volume。
Volume Fit 将 Volume 属性的值重映射到新的范围。
Volume Get Minmax Average 获取 Volume 属性的最大、最小和平均值。
Volume in Bound 获取多边形(Polygon)范围内的 Volume。
Volume Normalize 对 Volume 属性进行归一化。
Volume Resample by Size 将 Volume 进行重采样。
Volume Transfer Volume 版本的 Attribute Transfer
Points From Voxels 从体素生成带属性的点。

分组 (Group)

节点名称 功能描述
Group Noise 使用噪声进行随机分组。

IO

节点名称 功能描述
Fbx Output 用于避免在某些情况下自带的 FBX 导出节点出错。
Save Node Parm as Json 将指定节点的参数保存为 JSON 文件。可配合右键菜单功能实现参数的保存与加载。

UV

节点名称 功能描述
UV Transfer 从一个几何体拷贝 UV 到另一个几何体。

虚幻引擎 (Unreal)

节点名称 功能描述
Build Unreal Static Mesh LOD 生成带 LOD 的静态模型,用于虚幻引擎。
Unreal Mesh Importer 导入虚幻引擎中的模型资产。

游戏 (Game)

节点名称 功能描述
Labs Vertex Animation Textures (Wrapped) ROP 节点。支持自定义分组、参考帧、UV通道、是否导出Bound Mesh等功能的 VAT 节点。

通用功能

快捷命令 (Ctrl+Space)

在网络编辑器中按下 Ctrl+Space,可以快速搜索并调用各种指令。

  • Node Count: 节点计数
  • Open SpreadSheet: 打开几何体表格
  • Open Python Shell: 打开 Python 命令行
  • ... 以及更多其他指令

右键菜单

为节点和参数的右键菜单添加了丰富的 “Dolag” 分类功能。

节点右键菜单

  • 常用操作
    • Duplicate Node as Reference: 以引用形式复制节点。
    • Copy Node Parms Reference: 拷贝节点参数的引用。
    • Delete Expression and Keys: 删除节点所有表达式和关键帧。
    • Copy Node Metadata Json to Clipboard: 将节点以 JSON 格式复制到剪贴板。
  • 整理节点
    • Vertical Compress Node Space Upward: 向上收缩节点垂直间距。
    • Vertical Compress Node Space: 收缩节点垂直间距。
    • Vertical Space Nodes: 垂直均分选中节点的间距。
    • Vertical Space Nodes Upward: 向上垂直均分选中节点的间距。
    • Wire Hub(s): 通过自动添加 dot 节点来整理节点连线。
  • 节点样式
    • Copy Node Shape: 拷贝节点形状。
    • Copy Node Color: 拷贝节点颜色。
    • Copy Node Style: 拷贝节点颜色和形状。
    • Preset Style: 应用预设的几种节点样式,用于标识不同功能的节点。

参数右键菜单

  • Ramp 参数
    • Subdivide Divide * n: 将 Ramp 细分 n 倍。
    • Randomize Ramp * n: 将 Ramp 的点值进行随机。
    • Randomize Interval * n: 将 Ramp 点的间距进行随机。
    • Smooth Ramp * n: 将 Ramp 进行平滑处理。
    • Set Ramp Interpolation: 批量设置 Ramp 所有点的插值方式。
    • Mirror Ramp: 镜像 Ramp。
  • 代码参数 (VEX/Python)
    • Edit in VSCode: 在 VSCode 中打开并编辑代码(注意:不会实时写回 Houdini)。
    • Save Snippet: 保存 VEX/Python 代码片段。
    • Import Snippet: 导入已保存的代码片段。
  • 按钮参数
    • Copy/Paste Button: 拷贝/粘贴按钮的点击事件脚本。
  • 全局随机种子
    • Copy/Paste Global Seed: 拷贝/粘贴随机种子。

主菜单

  • Visit Github: 在浏览器中打开项目 Github 页面。
  • Edit Configure Json: 编辑插件的 JSON 配置文件。
  • Open Plugin Folder: 打开插件所在的目录。
  • Open Doc: 在 Houdini 中打开此文档。
  • Open Doc Online: 在浏览器中打开在线文档。
  • Houdini Master AI: 内置的 ChatGPT,需要提供 API Key。
  • Python 相关 (不推荐直接使用)
    • Install Pip: 为 Houdini 内置的 Python 安装 pip。
    • Pip Install: 使用 pip 安装 Python 模块。
    • Add Tuna Mirror: 添加清华镜像源以加速 pip 下载。
    • Clear Python Cache: 清空插件的 Python 缓存(开发用)。

其他功能

  • Node Exchanger: 按住 Ctrl+AltShift+Ctrl 拖动节点连接线,可以移动或复制它们。
  • Emoji Sticker: (功能待补充)