在使用 Houdini 构建自己的 HDA 工具的时候经常会需要通过 Input 传入基础几何体信息。而我们又希望在无输入的情况下能有个默认值效果。经过几个 HDA 工具的开发,自己简单总结成了以下两步:
利用 switchif 做默认值切换
这里选择 switchif 而不是 switch 是因为 switchif 是在 0 和 1 之间切换,而 switch 可以不止两个输入。在节点的表述性上更加直观。其次 switchif 内置选项中集成了 npoints
功能(虽然手写个表达式就多敲7个字母的问题而已,不过等节点多起来脑子要判断这个框里写的啥还是要想一下)。
switchif 需要注意两点:节点选择 0 还是 1 分别对应断言的 false 和 true,与断言语义无关。还可以利用 spare input 将非输入节点引入断言。
利用 disable when 禁用默认配置
在连接了 Input 以后我们希望能够把默认配置的选项都禁用掉,这时就需要用到 disable when 的语法:
这里的语法在官方文档有比较全面的参考
示例 HDA 下载地址