自己怎么做优惠搜网站,白云区网站建设公,富锦建设局网站,wordpress 头像设置如有错误#xff0c;可在评论区指正。 1、全局变量
wrangles中可用的变量。类型指示器不是必需的#xff0c;但包含在内作为提醒。
// 在所有 SOP wrangles 中可用
fFrame //当前浮动帧号#xff0c;相当于 $FF Hscript 变量 fTime //当前时间#xff08;以秒为单位可在评论区指正。 1、全局变量
wrangles中可用的变量。类型指示器不是必需的但包含在内作为提醒。
// 在所有 SOP wrangles 中可用
fFrame //当前浮动帧号相当于 $FF Hscript 变量 fTime //当前时间以秒为单位相当于 $T Hscript 变量 iSimFrame //整数模拟时间步数 ($SF)仅出现在 DOP 上下文中。 fSimTime //以秒为单位的模拟时间$ST仅存在于 DOP 上下文中。 fTimeInc //当前用于模拟或回放的时间步长。
// 可在 Attribute Wrangle 中使用点、顶点、图元和细节 vP // 当前元素的位置。 iptnum //附加到当前处理元素的点号。 ivtxnum //当前处理顶点的线性数。 iprimnum //附加到当前处理的元素的原始编号。 ielemnum //当前处理元素的索引号。 inumpt //几何中的点总数。 inumvtx //当前处理元素的图元中的顶点数。 inumprim //几何体中图元的总数。 inumelem //正在处理的元素总数。
// 在 Volume Wrangle vP 中可用// 当前体素的位置。 fdensity //当前体素位置的密度场值。 vcenter //当前体积的中心。 vdPdx, vdPdy, vdPdz //这些向量存储 x、y 和 z 体素索引中发生的 P 变化。 iix, iiy, iiz //体素索引。对于密集体积非 VDB这些范围从 0 到分辨率-1。 iresx, iresy, iresz //当前volume的分辨率 (或者理解为长宽高)。 2、常见几何属性
// Int id // 在整个模拟过程中保持不变的唯一编号。
// float pscale // 粒子半径大小。统一尺度。将显示粒子设置为“光盘”以进行可视化。 width // 曲线的厚度。在对象节点上启用“在视口中对开放曲线进行着色”以进行可视化。 Alpha // Alpha 透明度覆盖。视口使用它来设置 OpenGL 几何体的 Alpha。 Pw // 样条权重。
// Vector3 P // 点位置。用它来在 3D 空间中布置点。 Cd // 漫反射颜色覆盖。视口使用它来为 OpenGL 几何体着色。 N // 曲面或曲线法线。如果此属性不存在Houdini 将计算法线。 scale //矢量比例。允许定向缩放或拉伸沿一个方向。 rest // 由程序图案和纹理用于粘贴在变形和动画表面上。 up // 向上向量。局部空间的向上方向通常为 (0, 1, 0)。 uv // 该点/顶点的 UV 纹理坐标。 v // 点速度。移动的方向和速度以每秒为单位。
// Vector4 orient // 点的局部方向表示为四元数。 rot // 在 orient、N 和 up 属性之后应用附加旋转。
// String name // 一个唯一的名称用于标识哪些基元属于哪个部分。也用于标记卷。 instance // 在渲染时实例化的对象节点的路径。 3、指定VEX数据类型
float fname // 浮点标量值。 vector2 uname // 两个浮点值。可用于存储 2D 位置。 vector3 vname // 三个浮点值。通常是位置、方向、法线、UVW 或颜色。 vector4 pname // 四个浮点值。通常是旋转四元数或颜色和 Alpha (RGBA)。 int iname // 整数值VEX 使用 32 位整数。 Matrix2 2name // 四个浮点值表示一个 2D 旋转矩阵。 Matrix3 3名称 // 表示 3D 旋转矩阵或 2D 变换矩阵的九个浮点值。 Matrix4 4name // 代表 3D 变换矩阵的十六个浮点值。 string sname // 字符串。 4、Channel快捷语法
ch( flt1 ); // 浮动 chf( flt2 ); // 浮点数 chi( int ); // 整数 chv( vecparm ); // 向量 3 chp( quat ); // 向量 4 / 四元数 ch3( m3 ); // 3x3 矩阵 ch4( m4 ); // 4x4 矩阵 chs( str ); // 字符串 chramp( r , X; // 样条斜坡 vector(chramp(c X)); // RGB 渐变 5、DOP粒子属性
粒子系统由属性驱动以下是使用的一些属性。
fage // 自粒子诞生以来的时间以秒为单位。 flife // 允许粒子存活的时间以秒为单位。当fageflife时idead将被设置为1。 fnage //标准化年龄fage除以flife。隐式属性您无法写入此属性。 idead // 粒子是活的 (0) 还是死的 (1)。死粒子在收割阶段被删除。 iid // 粒子的唯一 ID在一次模拟中保持不变。
istopped // 粒子是移动 (0) 还是停止 (1)。 istuck // 粒子是自由的 (0) 还是被卡住的 (1)。 isliding // 粒子是自由的 (0) 还是沿着表面滑动 (1)。 fcling // 向内滑动粒子的力根据碰撞的表面法线。 spospath // 粒子碰撞对象的路径。 iposprim // 我们希望引用路径几何中哪个碰撞基元的位置。 vposuv // 碰撞基元上的参数化 uv。
ihittotal // 粒子所有命中的累积总数每个时间步仅递增一次。 ihas_pprevious // 如果 vpprevious 包含有效值则该值设置为 1。 vpprevious // 存储粒子在前一帧上的位置。用于碰撞检测。 ihitnum // 上次 POP Collision Detect 中粒子碰撞的次数。 shitpath // 被击中的对象的路径。磁盘上文件的路径或 op: 路径。 ihitprim // 原始命中。如果碰撞检测器无法找出哪个 prim则可能为 -1。 vhituv // 基元上的参数化 UV 空间。 vhitpos // 实际发生命中的位置。如果碰撞物体正在移动则很有用。 vhitnml // 碰撞时表面的法线。 vhitv // 碰撞时表面的速度。 fhittime // 碰撞发生时可能发生在帧内。 fhitimpulse // 记录碰撞解决所需的脉冲量。随时间步长变化。 fbounce // 当粒子从另一个物体反弹时这控制它们保留多少能量。 fbounceforward // 控制它们在切线方向上保留多少能量。 ffriction // 当粒子弹跳时它们的速度会根据撞击的力度成比例地减慢。 scollisionignore // 匹配此模式的对象不会发生碰撞。
fforce // 此帧中粒子上的力。 fmass // 粒子的惯性。 vspinshape // 将其乘以 fpscale 以确定旋转惯性粒子的形状。 fdrag // 粒子受风效应影响的程度。 fdragexp // 范围从 1 到 2默认值在求解器上设置。用于角度和线性阻力。 vdragshape // 粒子在其每个局部轴上被拖动的程度。 vdragcenter // 如果指定阻力也会在粒子上产生扭矩。 vtargetv // 当地风速。被认为是粒子的目标或目标速度。 fairresist// 匹配风速有多重要。空气的厚度。 fspeedmin // 粒子可以移动的最小速度以每秒单位为单位。 fspeedmax // 粒子可以移动的最大速度以每秒单位为单位。
porient // 粒子的方向。用于计算“本地/local”力量。 vw // 粒子的角速度。给出旋转轴的向量。 vtorque // 相当于旋转的力。不支持惯性张量相当于质量。 vtargetw // 该粒子的目标旋转方向和速度。 fspinresist // 匹配目标有多重要w。 fspinmin // 粒子可以旋转的最小速度以弧度每秒为单位。 fspinmax // 粒子可以旋转的最大速度以弧度每秒为单位。 6、DOP Grains属性
POP Grains 控制下的粒子的“ispbd”属性设置为 1。这会导致它们绕过 POP Solver 中的运动更新因为实际的运动更新是由 POP Grains 节点完成的。
iispbd // 值为 1 会使粒子表现为颗粒。 fpscale // 用于确定每个粒子的半径。 frepulsionweight // 粒子碰撞力的加权量。 frepulsionstiffness // 粒子保持分离的强度。值越高弹性排斥力越小。 fattractionweight // 粒子靠近时会自然粘在一起的程度。 fattractionstiffness // 附近粒子相互粘附的强度。 vtargetP // 粒子被限制在这个位置。 ftargetweight // vtargetP 约束的权重。 ftargetstiffness // 粒子固定到其 vtargetP 属性的刚度。
frestlength // 由折线连接的粒子将被迫保持这个距离prim 属性。 fconstraintweight // 缩放基于约束力的每个粒子。 fconstraintstiffness // 这控制每个粒子的刚度。 fstrain // 这个原始属性记录约束被拉伸的程度。 fstrength // 如果 fstrain 超过此原始属性则约束将被删除。 7、DOP Packed RBD属性
Bullet Solver 使用多个点属性来存储打包对象的每个部分的属性。
iactive // 指定该对象是否能够对其他对象做出反应。 ianimated // 指定是否应在每个时间步从其 SOP 几何体更新变换。 ideforming // 指定是否应在每个时间步从其 SOP 几何体重建碰撞形状。
fbounce // 物体的弹性。 ibullet_add_impact // 模拟期间发生的影响将记录在影响或反馈数据中。 ibullet_ignore // 指定 Bullet 解算器是否应完全忽略该对象。 fbullet_angular_sleep_threshold // 物体角速度的休眠阈值。 fbullet_linear_sleep_threshold // 物体线速度的睡眠阈值。 ibullet_want_deactivate // 禁用对不移动对象的模拟直到该对象再次移动。 icomputecom // 指定是否应根据碰撞形状计算质心。 icomputemass // 指定是否应根据碰撞形状和密度计算质量。 fcreationtime // 存储创建对象的模拟时间。 idead // 指定在下一次求解期间是否应删除该对象。 fdensity // 物体的质量等于其体积乘以密度。 ffriction // 物体的摩擦系数。 finertialtensorstiffness // 旋转刚度。应用于惯性张量的比例因子。 iinheritvelocity // SOP 几何体中的 v 和 w 点属性将覆盖初始速度。 fmass // 物体的质量。 sname // 对象的唯一名称。由约束网络使用。 porient // 对象的方向。 vP // 物体质心的当前位置。 vpivot // 方向适用的枢轴。如果 icomputecom 非零则这是自动计算的。 vv // 物体的线速度。 vw // 物体的角速度以弧度每秒为单位。
ibullet_adjust_geometry // 缩小碰撞几何体。 ibullet_autofit // 使用长方体、胶囊体、圆柱体、球体或平面的对象边界。 fbullet_collision_margin // 碰撞形状之间的填充距离。 sbullet_georep // 可以是凸包、凹面、盒子、胶囊、圆柱体、复合体、球体或平面。 ibullet_groupconnected // 创建每组连接基元的凸包。 fbullet_length // Capsule 或 Cylinder 碰撞形状在 Y 方向的长度。 vbullet_primR // 盒子、胶囊、圆柱体或平面碰撞形状的方向。 vbullet_primS // 盒子碰撞形状的大小。 vbullet_primT // 长方体、球体、胶囊体、圆柱体或平面碰撞形状的位置。 fbullet_radius // 球体、胶囊体或圆柱体碰撞形状的半径。 fbullet_shrink_amount // 指定收缩碰撞几何体完成的大小调整量。
sactivationignore // 不会因与任何匹配此模式的对象发生碰撞而被激活。 scollisiongroup // 指定该对象所属的碰撞组的名称。 scollisionignore // 该对象不会与任何匹配此模式的对象发生碰撞。 fmin_activation_impulse// 导致对象从非活动状态切换到活动状态的最小脉冲。
fspeedmin // 粒子可以移动的最小速度以每秒单位为单位。 fspeedmax // 粒子可以移动的最大速度以每秒单位为单位。 fspinmin // 粒子可以旋转的最小速度以弧度每秒为单位。 fspinmax // 粒子可以旋转的最大速度以弧度每秒为单位。 faccelmax // 限制由于强制约束而导致的对象速度变化。 fangaccelmax // 限制由于强制约束而导致的对象角速度的变化。
fairresist// 指定匹配目标速度 (vtargetv) 的重要性。 fdrag // vtargetv 和 fairresist 属性对对象的影响程度。 fdragexp // 范围从 1 到 2默认值在求解器上设置。用于角度和线性阻力。 vforce // 指定将施加到对象质心的力。 fspinresist // 指定匹配目标角速度 (vtargetw) 的重要性。 vtargetv // 物体的目标速度。与 fairresist 属性结合使用。 vtargetw // 物体的目标角速度。与 fspinresist 属性结合使用。 vtorque // 指定将应用于对象的扭矩。
ibullet_autofit_valid // 存储解算器是否已经计算碰撞形状属性。 ibullet_sleeping // 跟踪对象是否已被解算器置于睡眠状态。 fdeactivation_time // 速度低于线性阈值或角度阈值的时间量。 ifound_overlap // 求解器使用它来确定是否执行了重叠测试。 iid // 对象的唯一标识符。 inextid // 存储求解器将分配给下一个新对象的 iid。 8、DOP RBD约束属性
几何体上的属性可自定义每个约束行为和类型。如果存在与约束属性例如阻尼damping同名的基本属性则属性值将与约束子数据的值相乘。
sconstraint_name // 按名称指定一段关系数据例如“Glue”或“Spring”。 sconstraint_type // 指定约束是否影响“位置”、“旋转”或“所有”自由度。 frestlength // 指定要强制执行的约束的所需长度。 fwidth // 每条边的宽度。 fdensity // 每个点的密度。 porient // 每个点的初始方向。以四元数形式存储的值。 vv // 每个点的初始速度。 vw // 每个点的初始角速度以弧度每秒为单位测量。 ffriction // 每个点的摩擦力。 fklinear // 定义导线抵抗拉伸的强度。 fdamplinear // 定义导线抵抗拉伸力引起的振动的强度。 fkangular // 定义电线抵抗弯曲的强度。 fdampangular // 定义导线抵抗弯曲力引起的振动的强度。 ftargetstiffness // 定义导线抵抗动画位置变形的强度。 ftargetdamping // 定义导线抵抗拉伸力引起的振荡的强度。 fnormaldrag // 垂直于导线方向的拖动分量。 ftangentdrag // 与导线相切方向的拖动分量。 inocollide // 禁用边缘的碰撞检测仅在碰撞处理为 SDF 时使用。 vrestP // 每个点的静止位置。 prestorient // 每个点的静止方向。 igluetoanimation // 使点的位置和方向受到输入几何体的约束。 ipintoanimation // 使点的位置受限于输入几何体。 vanimationP // 每个点的目标位置。 panimationorient // 每个点的目标方向。 vanimationv // 每个点的目标速度。 vanimationw // 每个点的目标角速度。 iindependentcollisionallowed // 切换外部碰撞仅限非 SDF 几何碰撞。 iindependentcollisionresolved // 未解决的外部碰撞仅限非 SDF 几何碰撞。 icodependentcollisionallowed // 切换软体碰撞仅限非 SDF 几何碰撞。 icodependentcollisionresolved // 未解决的切换软体碰撞仅限非 SDF 几何碰撞。 iselfcollisionallowed // 切换自碰撞仅限非 SDF 几何碰撞。 iselfcollisionresolved // 未解决的切换自碰撞仅限非 SDF 几何碰撞。 ipropagate_rate // 指定碰撞产生的脉冲如何在约束网络中传播。 ipropagationiterations // 指定胶合的冲击传播迭代次数。 9、DOP FLIP属性
FLIP 求解器包含嵌入式 POP解算器因此上面列出的所有 POP 属性都适用。
fpscale // 粒子尺度 vv // 粒子速度 fviscosity // 流体的“厚度”。 fdensity //单位体积的质量。 ftemperature // 流体的温度。 fvorticity // 测量流体中的循环量。 fdivergence // 正值导致粒子散开负值导致粒子聚集在一起。 vrest // 用于跟踪流体随时间的位置。 vrest2 // 用于混合双重休息属性避免拉伸。 fdroplet // 识别与流体主体分离的颗粒。 funderresolved // 网格上尚未完全解析的粒子。 iballistic // 指定流体求解将忽略的粒子。 vLx // 角动量 X 轴 vLy // 角动量 Y 轴 vLz // 角动量 Z 轴 10、DOP Vellum Point属性
//Vellum几何体也被视为粒子因此上面列出的所有 POP 属性都适用。
iisgrain // 值为 1 时粒子表现为颗粒值为 0 时粒子表现为布料。 fattractionweight // 粒子在接近时会自然粘在一起的程度零会禁用结块。 ffriction // 静摩擦力的缩放比例。 fdynamicfriction // 动摩擦缩放多少。 finertia // 粒子对旋转约束的阻力。如果为零粒子将不会旋转。 vv // 点速度。 pw //头发或电线角速度。 porient //头发或金属丝方向。 istopped // 用于固定点0自由1无运动2无旋转3无旋转或移动。 ipintoanimation // 如果为 1固定点的位置将更新以匹配目标点。 igluetoanimation // 如果为 1则位置和方向都会更新 starget_path // 任何引脚的目标路径当 Target 参数在 Vellum Source 中设置时 itarget_pt // 任何引脚的目标点编号当Target 参数在 Vellum Source 中设置 ftargetweight // 使用 0..1 权重值影响固定点的强度。 iweld // 将此点焊接到一个点号。如果有id属性则指向一个点id。 ibranchweld // 当被迫分割点进行头发模拟时由头发约束构建。 icollisionweld // 根据需要生成为缠结算法提供单个焊缝。 fbreakthreshold // 断裂焊缝和分支焊缝的阈值 sbreaktype // stretchstress、bendstress、stretchdistance、stretchratio 或bendangle。
// 碰撞 fpscale // 用于确定布料的厚度或每个粒子的半径。 foverlap_self // 存储原始 pscale 的重叠量。 foverlap_external // 存储原始 pscale 的重叠量。 ilayer // 表示属于不同的布料层。数字越大表示层数越高。 idisableself // 值为 0 表示该点将使用自碰撞。 idisableexternal // 值为 0 表示该点将使用外部碰撞。 scollisionignore // 存储对象和碰撞组不发生碰撞的模式。 scollisiongroup // 给出该点所属的碰撞组。
// 内部工作变量保留以避免每帧删除/添加属性 vpprevious // 对于一阶积分前一帧位置时间步的开始。 vplast // 对于二阶积分是前两帧的位置。 vvprevious // 对于一阶积分前一帧速度时间步长的开始。 vvlast // 对于二阶积分前两帧的速度。 porientprevious // 对于一阶积分前一帧方向时间步长的开始。 porientlast // 对于二阶积分前两帧的方向。 pwprevious // 对于一阶积分前一帧角速度时间步长的开始。 pwlast // 对于二阶积分前两帧的角速度。 fdP // 约束位移。可能是最后一次迭代。 fdPw // 约束权重。可能是最后一次迭代。 spatchname // 标识模拟中生成的每个补丁以便可以更新/替换它。 // 当点是压力约束的一部分时这些属性保存在约束更新期间计算的值。 vPressureGradient // 沿着最大体积增益方向向外指向的向量。 i[]volumepts // 包含计算体积属性所需的点的数组。 ivolume // 与压力约束的剩余长度值进行比较。 11、DOP Vellum约束属性
约束有多种类型因此这些变量的含义通常取决于约束类型。它们通常在primitive。
stype // 约束的类型。 stype distance // 显示几何图形中的每条边都转换为保持该边长度的距离约束。 stype stitch // 使用距离约束将同一几何体中的点缝合在一起。这些点实际上不需要通过几何图形连接。这对于保持夹克闭合或防止口袋摆动很有用 stype branchstitch // stype ptprim // stype bend // 每对三角形或隐含三角形如果输入为四边形或更高创建一个保持三角形之间初始二面角的约束。trianglebend // 每对三角形如果输入是四边形或更高则为隐含三角形都会创建一个约束以维持三角形之间的初始二面角。 angle tetvolume pressure // 由 Define Pieces 参数确定的每个部件都存储其原始体积并构建多点约束来维护它。执法是全球性的因此压扁一个地方就会膨胀另一个地方就像气球一样。 Attach, pin AttachNormal Pinorient Bendtwist StretchShear TetFiber Triarap Tetarap* fstiffness // 约束的刚度控制约束拉动的强度。 frestlength frestlengthorig fdampingratio // 评估约束时阻尼通过释放能量来减少抖动。阻尼太大会导致约束无法得到满足。必须使用小于 1 的值。 fstress // 约束所做工作的估计由 Vellum 求解器更新。 sconstraint_tag // 创建约束的节点的名称。 12、KineFX属性
KineFX 层次结构或骨架由多边形线连接的点的集合表示。层次结构中关节之间的父子关系由顶点顺序决定。
sname // 关节名称属性 3transform // 点的世界空间 3×3 变换旋转、缩放和剪切。 4localtransform // 点相对于其父点的变换。 iscaleinheritance // 确定点如何从其父点继承局部比例。 13、View port显示属性
覆盖viewport显示模式
igl_wireframe // 细节属性强制线框 (1) 或阴影 (-1) igl_lit // 细节属性使用照明 (1) 或无照明 (0) 绘制 igl_showallpoints // 细节属性均匀绘制点如果连接到几何体 fvm_cuspangle // 细节属性用于生成尖角法线的角度 igl_spherepoints // 细节属性(1) 导致未连接的点绘制为球体 igl_xray // 细节属性(1) 几何体即使隐藏在其他几何体后面也可见 vCd // 颜色漫反射 fAlpha // 表面不透明度 vN // 光照的表面法线 fwidth // 曲线宽度 fpscale // 如果不存在 pscale则视口默认为 1.0而 Mantra 默认为 0.1 sspritepath sshop_materialpath igroup__3d_hidden_primitives // 将图元添加到该组将它们从 3D 视口中隐藏 fintrinsic:volumevisibledesired // 控制体积不透明度的原始内在属性。 fvolvis_shadowscale // 控制体积阴影强度的详细属性。 14、复制和实例化属性
当复制或实例化时Houdini 会查找这些点属性来转换每个副本/实例。
porient // 副本的方向。 fpscale // 统一比例。 vscale // 非均匀缩放。 vN // 正常Z 轴副本如果没有 porient。 vup // 副本的向上向量副本的 Y 轴如果没有 porient。 vv // 副本的速度运动模糊如果没有 porient 或 vN则用作 Z 轴。 prot // 附加旋转在上面的方向属性之后应用。 vP // 副本的翻译。 vtrans // 除了 vP 之外还翻译了副本。 vpivot // 副本的本地枢轴点。 3transform 或 4transform // 变换矩阵覆盖除 vP、vpivot 和 vtrans 之外的所有内容。 sshop_materialpath // 实例化对象使用此材质。 smaterial_override // 将材质参数名称映射到值的序列化 Python 字典。 sinstance sinstancefile // 指示要实例化的几何体的文件路径。 sinstancepath // 实例的几何图形。这是磁盘上文件的路径或 op: 路径。 15、访问其它输入
此语法用于引用连接到争论输入的节点或网络中的其他节点。
// opinput:X 是最清晰且始终有效的第一个输入是输入 0。 point( opinput:0 , P , iptnum) point( opinput:1 , P , iptnum) point( opinput:2 , P , iptnum) point( opinput:3 , P , iptnum)
// 整数输入数第一个输入为 0。有些函数不支持此功能但它很容易输入。 point( 0 , P , iptnum) point( 1 , P ,, iptnum) point( 3 , P , iptnum)
// OpInputX 也可以工作但要小心因为它不是基于 0 的而是从 1 开始这很令人困惑 point(OpInput1, P , iptnum) point(OpInput2, P , iptnum) point(OpInput3, P , iptnum) point(OpInput4, P , iptnum)
// vopinputX_* 从编号输入上的同一元素读取属性第一个输入是输入 0。 vopinput0_P vopinput1_P vopinput2_P vopinput3_P
// 到其他节点的绝对路径和相对路径如下所示。 point(op:/obj/geo1/OUT, P, iptnum) point(op:../../OUT, P, iptnum) 16、For循环元数据
详细属性您可以通过“获取元数据”Block Begin 节点获取此信息。
inumiterations // 预期的迭代总数
iiteration // 当前迭代次数始终从 0 开始每次循环加 1。
fvalue // 在分段循环中这是属性的当前值
iivalue // 在简单重复中这是 value 的整数版本。