本 Wiki 开启了 HTTPS。但由于同 IP 的 Blog 也开启了 HTTPS,因此本站必须要支持 SNI 的浏览器才能浏览。为了兼容一部分浏览器,本站保留了 HTTP 作为兼容。如果您的浏览器支持 SNI,请尽量通过 HTTPS 访问本站,谢谢!
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
vfx:houdini:miscs:tips [2020/04/19 12:15] – [density gradient based velocity field(SOP)] codinghare | vfx:houdini:miscs:tips [2023/02/23 08:28] (当前版本) – [Houdini TIPS] codinghare | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ======Houdini TIPS====== | + | ======Houdini TIPS====== |
- | Ver.18.0\\ | + | //Houdini 使用相关 Tips//\\ |
- | Houdini 使用相关 Tips | + | //Ver 19.5// |
- | ===== ===== | + | ---- |
====UI==== | ====UI==== | ||
===同时查看三个目标=== | ===同时查看三个目标=== | ||
行 23: | 行 23: | ||
ch(' | ch(' | ||
</ | </ | ||
+ | <WRAP center round box 100%> | ||
+ | 新版本 houdini 中可以使用 '' | ||
+ | </ | ||
+ | ===反选 Group 中的元素=== | ||
+ | **问题描述**:选择不属于 group 中的元素。 | ||
+ | \\ | ||
+ | \\ | ||
+ | //How to Fix//: | ||
+ | * 使用 '' | ||
+ | * 使用 '' | ||
===将一组属性 Remap 到 [0,1]=== | ===将一组属性 Remap 到 [0,1]=== | ||
**问题描述**:如何将一组属性 Remap 到 $[0,1]$? | **问题描述**:如何将一组属性 Remap 到 $[0,1]$? | ||
行 61: | 行 70: | ||
<WRAP center round download 100%> | <WRAP center round download 100%> | ||
**<color # | **<color # | ||
+ | </ | ||
+ | ===拷贝物体(随机大小)=== | ||
+ | **问题描述**:在使用 copyToPoints 的时候,如何使被拷贝物体的大小随机? | ||
+ | \\ | ||
+ | \\ | ||
+ | //How to Fix//: | ||
+ | * 如果只是需要 Uniform scale 的话,使用 '' | ||
+ | * 如果需要三维均随机,则需要使用 '' | ||
+ | * 配合 '' | ||
+ | ===拷贝物体(随机旋转)=== | ||
+ | **问题描述**:在使用 copyToPoints 的时候,如何使被拷贝物体的方向随机? | ||
+ | \\ | ||
+ | \\ | ||
+ | <WRAP center round box 100%> | ||
+ | 点拷贝的过程中,几何体的旋转方向由两个因素决定: | ||
+ | * 方向的确定:由 '' | ||
+ | * 方向的指向: '' | ||
+ | </ | ||
+ | <WRAP center round tip 100%> | ||
+ | 以 houdini 自带的猪头为例子。默认情况下,猪头的鼻子是朝着 '' | ||
+ | 如果此时需要指定旋转,那么必须加入 '' | ||
</ | </ | ||
- | + | //How to Fix//: | |
+ | 通常情况下有两种解决方案: | ||
+ | * 如果需要几何体的位置与拷贝点位置的关系固定,那么用 '' | ||
+ | * 如果只需要旋转随机,那么使用 '' | ||
+ | <WRAP center round box 100%> | ||
+ | '' | ||
+ | </ | ||
+ | Ref: | ||
+ | ===改变多边形的面数=== | ||
+ | **问题描述**:如何改变几何体的面数?\\ \\ | ||
+ | //How to Fix//: | ||
+ | ==将临近的点合并== | ||
+ | 使用 '' | ||
+ | ==按照百分比减少几何体的面数== | ||
+ | 使用 '' | ||
+ | ==重建几何体面数== | ||
+ | 使用 '' | ||
+ | * 如果希望在不改变几何体形状的前提下提升细节,选择 '' | ||
+ | * 多个几何体同时存在的情况下,可以使用体积的方式重建几何体,使用 '' | ||
+ | ==筛选复杂几何体中的指定部分== | ||
+ | * 可以使用 '' | ||
====Vop / VEX==== | ====Vop / VEX==== | ||
===如何利用 ptnum 生成圆=== | ===如何利用 ptnum 生成圆=== | ||
行 70: | 行 119: | ||
\\ | \\ | ||
\\ | \\ | ||
- | 原理就是利用极坐标系中坐标的定义($(cos(\theta), | + | 原理就是利用圆的定义($(cos(\theta), |
\\ | \\ | ||
\\ | \\ | ||
行 86: | 行 135: | ||
==pieces jittering in RBD== | ==pieces jittering in RBD== | ||
将场景 scale 放大,解算后再缩小,可以解决大部分的碰撞 jittering. | 将场景 scale 放大,解算后再缩小,可以解决大部分的碰撞 jittering. | ||
- | ====Volume==== | ||
行 98: | 行 146: | ||
//sample volume in relation to Point positions, store result. | //sample volume in relation to Point positions, store result. | ||
float volume = volumesample(1, | float volume = volumesample(1, | ||
- | //test to see if points are inside or outside the volume | + | //check weather the points are inside or outside the volume |
if(volume< | if(volume< | ||
- | //if the value of the volume sample we stored is less | + | //if the value of the volume sample we stored is less than the threshold channel |
- | //than the below threshold channel then they will be removed | + | |
removepoint(0, | removepoint(0, | ||
} | } |