赞
踩
做项目过程中需要用到一些物理效果,最终找到了OBI物理插架系列,在这里做一个使用记录。
一、OBI-Rope绳索插件(版本3.2)
Rope插件提供了很强大的绳子物理模拟效果,具体的案例可以参考插件里面的实例场景了解,这里为了帮助更好的了解Rope插件,做一个参数详细介绍:
使用Rope绳索,首先需要在Hierarchy面板创建一个Rope,右键 --> 3D Object --> obi -->obiRope (fully set up),创建出一个绳索,此时观察obiRope的属性面板,里面包含ObiPinConstraints(引脚约束),ObiTetherConstraints(系绳约束),ObiBendingConstraints(弯曲约束),ObiDistanceConstraints(距离约束)以及一个ObiRope组件和ObiCatmullRomCurve组件。
ObiDistanceConstraints(距离约束组件):在官网上,这个组件的介绍很详细,组件的作用是将粒子对连接在一起,迫使他们保持一定的距离,这个距离就是约束的“休息长度”,这个组件是对边缘或绳索的每个部分创建拉申约束,所以对于布料和绳索的外观很重要。
参数:
- Stretching Scale:伸展比例,距离约束的比例,任何距离约束的初始化长度都是使用它来设置固定值,该值 > 1 会增加距离,< 1 会缩小距离,效果如下图:
- 分别是0.75 1 1.25
- Stiffness : 刚体 ,用来控制多少约束可以延伸到其余长度,值较低的话拉伸几乎没有阻力,布料看起来会有弹性,高值的话很难拉申。效果如下图:
- 分别是0.7 1
- Slack : 松弛,压缩比
ObiBendingConstraints(弯曲约束):限制由3个粒子定义的线段的弯曲量,常用于将布料或者绳索变得更加坚硬。
参数:
1. Max Bending : 最大弯曲,值越低,弯曲越硬,值越大 弯曲角度越大。效果如下图:
0 0.02 0.04
2. Stiffness:刚体,与其他的一样,控制拉伸程度。
ObiPinConstraints(引脚约束):简单来讲就是在绳索中常用的就是使用这个约束来制作尾端吊着的东西,在编辑模式下使用。
ObiTetherConstraints(系绳约束): 减少过度拉伸。
参数:
Tether Scale : 系绳秤,值 > 1 延长系绳 值 < 1 缩短系绳。效果如下:
1 1.2 2
二、obiSolver
这个是Obi物理插件中非常重要的组成部分,负责模拟粒子物理和强制约束,有三点需要重点关注:
- 可以添加到场景中的任何GameObject上,并且同一个场景可以同时使用多个ObiSolver
- 每个ObiActor都需要有ObiSolver,并更新模拟,每个ObiActor都有一个Solver属性。
- 每个ObiSolver完全独立,所以由不同的ObiSolver更新的是不会相互交互和碰撞的,只有在同个ObiSolver中的ObiActor才会相互反应。
参数:
(顺序解答属性)
- MaxParticles(最大粒子数):为粒子池分配的内存,ObiActor会在需要时借用粒子,如果此时值为5000,每个ObiActor使用1000个粒子,则这个ObiSolver最多可以模拟 5 个角色。
- SubSteps(分步骤):表示Obi在每个物理步骤中更新多少次,增加值会更准确的模拟,但是对性能产生负面影响。通常使用1,需要更高的精度时,使用2,3,4.该参数非常适用于布料和绳索,如果绳索或者布料太松弛,可以减少距离约束迭代的数量并改为增加分步骤,场景中碰撞过多的话,可以尝试减少分步骤。但是这个参数是之前旧版本的,在当前版本是没有的。
- Simulate With Invisible( 隐形时模拟 ): 当所有相机看不见时,这个ObiSolver是否应该保持模拟?
- Simulate In Local Space(在当地空间模拟):切换局部和世界空间。
- Simulate Order(模拟选择):选择在哪个函数里更新该物理模拟。
Parameters参数设置:
1) Mode:模型类型(3D,2D)
2) Interpolation:有无差值(没有,有)
3) Gravity:重力(设置XYZ三轴向上的重力值)
4) Damping:阻尼系数(0-1)//控制绳索柔软度
5) Advection Radius:平流半径
6) Sleep Threshold:睡眠阈值//控制绳索的灵活度,后节与前节之间的动作连接幅度强度,值越小绳子越灵活,值越大绳子越硬
约束参数:每个约束都有相同的4个参数
- Enabled 功能为是否启用,用来判断是否更新和与该约束相关的物理模拟,默认是开启的
- Evaluation Order 选择模式,顺序和并行
- Iterations 迭代,每个子步骤应该执行多少次该物理模拟 值越大物理模拟越精细。
- SOR Factor SOR代表连续过度放松。当试图满足约束时,改善收敛的一种方法是“过度放松”约束。也就是说,如果向左移动粒子2个单位将满足现在的约束,为什么不将它移动3个单位呢?这正是这个因素的用途。1是默认值,根本不执行过度放松。2是最大值,允许您在约束条件下执行两倍的松弛。高值可用于帮助加速两种模式(顺序或并行)中的任何一种的收敛,但请记住,模拟稳定性可能会降低。
Distance Constraint Parameters:距离约束参数
Bending Constraint Parameters:弯曲约束参数(子列表同上)
Particle Collision Constraint Parameters:粒子碰撞约束参数(同上)
Collision Constraint Parameters:碰撞约束参数(同上)
Skin Constraint Parameters:皮肤约束参数(同上)
Volume Constraint Parameters:体积约束参数(同上)
Tether Constraint Parameters:系绳约束参数(同上)
Pin Constraint Parameters:销约束参数(同上)
Density Constraint Parameters:密度约束参数(同上)
Chain Constraint Parameters:链约束参数(同上)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。