本文主要是介绍POP —— Attributes,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
粒子系统首先是由属性驱动的,以下是解算器可以理解的属性;可使用POP VOP和POP Wrangle创建属性;
State age | float | 年龄,单位秒 |
nage | float | @age/@life,隐式属性,不可写入 |
life | float | 生命,单位秒 |
id | int | 粒子唯一的标识号,使用findattribval()查找id对应的点号 |
Linear Physics force | float | 该帧的力 |
mass | float | 质量默认为1.0 |
spinshape | vec3 | 与@pscale相乘,以确定粒子旋转的大致形状,默认(1,1,1) |
targetv | vec3 | 粒子目标速度 |
airresist | float | 空气阻力,匹配目标速度 |
speedmin, speedmax | float | 速度限制,单位秒 |
drag | float | 粒子拖拽默认1.0 |
dragexp | float | 1~2的值,默认在解算器上设置,用于角度和线性拖拽 |
dragshape | vec3 | 粒子在其每个局部轴上的拖动量,默认(1,1,1) |
dragcenter | vec3 | 会与质心间的差产生扭矩,此为局部偏移,默认(0,0,0) |
dragnomal | float | 如没有dragshape或dragnomal不为1,局部形状会被自动计算,默认1 |
dragtangent | float | 当自动计算局部dragshape时,与dragnomal一起使用,默认1 |
Angular Physics p@orient | vec4 | 粒子方向,默认(0,0,0,1) |
w | vec3 | 粒子角速度,方向为旋转轴,大小为旋转强度 |
torque | vec3 | 等价于旋转的力 |
targetw | vec3 | 粒子目标旋转速度 |
spinresist | float | 空气阻力,匹配目标旋转速度 |
speedmin, speedmax | float | 旋转速度限制,单位秒 |
State dead | int | 粒子是否死亡 |
stopped | int | 粒子是否停止,会保留速度,但不在更新位置、方向、速度等 |
stuck | int | 粒子是否卡住,会机场速度 |
sliding | int | 粒子是否沿曲面滑动 |
cling | float | 滑动粒子向内应用力(根据表面法线),有助于弯曲表面停留 |
pospath | string | 存储一对象路径 |
posprim | int | 路径几何体prim,默认-1 |
posuv | vec3 | prim上的参数化uv |
Collisions hittotal | int | 粒子碰撞累计次数,子步内可能碰撞多次但此属性只计算一次;如其他Compute Hit Total开启,可能重复计算; |
hitnum | int | 粒子是否碰撞 |
hitpath | string | 存储碰撞对象的路径 |
hitprim | int | 碰撞面号,默认-1 |
hituv | vec3 | 碰撞面的参数化uv |
hitnml | vec3 | 碰撞表面的法线 |
hitv | vec3 | 碰撞表面的速度 |
hittime | vec3 | 碰撞发生的时间 |
hitimpulse | float | 由Gas Impact to Attributes创建,记录碰撞impulse,需在解算器上勾选Add Impact Data; |
has_pprevious | int | 如@pprevious值有效,此属性为1; |
pprevious | vec3 | 存储上一帧的粒子位置,用于碰撞检测; |
bounce | float | 弹力,默认由POP Object上参数控制 |
bounceforward | float | 弹力切线方向保持的能量,默认由POP Object上参数控制 |
friction | float | 摩擦力,默认由POP Object上参数控制 |
collisionignore | string | 匹配的对象(包括对象名字或id)将不会碰撞,不影响碰撞检测,默认"" |
Misc s@instancepath | string | 复制到粒子上的几何体,可是磁盘上的路径或op:path(Instance SOP) |
nearest | int | 最近粒子的@id,如没有id也可能是@ptnum,由Proximity POP创建,默认-1 |
nearestdist | float | 最近粒子的距离,由Proximity POP创建,默认-1 |
numproximity | int | 指定范围内的粒子数,由Proximity POP创建,默认0 |
这篇关于POP —— Attributes的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!