锁子甲 bulid+sim

锁子甲 bulid+sim_第1张图片

链接: youtube

分析:洒一堆点——copy 模型——点和模型符合一定规律
锁子甲 bulid+sim_第2张图片
点和点的距离符合上述图中的关系 (横纵)

横向

锁子甲 bulid+sim_第3张图片
但是我们要横向10个点够了: 用modulo 除余

锁子甲 bulid+sim_第4张图片

纵向
这里用除法+向上取整 /10 eg : 0-9 得0 10-19 得1 以此类推
锁子甲 bulid+sim_第5张图片

错开

我们要纵向奇数得点错开 h(size个单位)
锁子甲 bulid+sim_第6张图片

每隔一个rot一下
锁子甲 bulid+sim_第7张图片

sim
思路是解算一个差不多得面片 通过uv映射过去

解算略过了注意面片要带uv

锁子甲 bulid+sim_第8张图片

vector uvpos = set(@P.x, @P.z, 0);
vector pos = uvsample(1, "P", "uv", uvpos);
vector normal = uvsample(1, "N", "uv", uvpos);
@P = pos+(normal*@P.y);

uvsample VEX 函数
使用 UV 属性在特定 UV 坐标处插入属性值。

此函数使用 UV 属性中的 UV 指定位置。要使用固有原始 UV,请改用primuv。

uvsample(geometry, string attr_name, string uv_attr_name, vector uvw)

[] uvsample(geometry, string attr_name, string uv_attr_name, vector uvw)

uvsample(geometry, string primgroup, string attr_name, string uv_attr_name, vector uvw)

[] uvsample(geometry, string primgroup, string attr_name, string uv_attr_name, vector uvw)

显示/隐藏参数

当在节点上下文中运行时(例如 wrangle SOP),此参数可以是一个整数,表示要从中读取几何图形的输入编号(从 0 开始)。

.bgeo或者,参数可以是指定要从中读取的几何文件(例如,a)的字符串。在Houdini里面跑的时候,这个可以参考一下op:/path/to/sop。

primgroup

原始组的名称或生成原始组的模式。使用与 SOP 组相同的语义,因此空字符串将匹配所有原语。@Cd.x>0也可以使用像这样的属性组,但请注意,可能需要在Snippet VOP@中使用反斜杠进行转义。

attr_name

要采样的点或顶点属性的名称。对于图元属性,值取自给定 UV 下的图元。对于点和顶点属性,给定 UV 坐标处的值将从周围的点/顶点进行插值。这些值取自具有此名称的属性存在的“最低”级别。

这必须是一个 3-float 属性。

uv_attr_name

包含 UV 的点或顶点属性的名称。Houdini 创建的默认 UV 位于名为uv. 命名属性可以是任何矢量类型中的 2D (UV) 或 3D (UVW)。

uvw

对属性进行采样的 UV(W) 空间中的位置。

你可能感兴趣的:(Entagma_learn,vellum,hair,fur,houdini)