下面的这个返回被定义为高斯衰减。我没有看到 e 或 2 的幂,所以我不确定这与高斯衰减有何关系,或者它是否是我用来在网格上获得良好平滑变形的错误类型的衰减:
Mathf.Clamp01 (Mathf.Pow (360.0, -Mathf.Pow (distance / inRadius, 2.5) - 0.01))
其中Mathf.Clamp01
返回一个介于 0 和 1 之间的值。
inRadius
是失真的大小,由下式distance
确定:
sqrMagnitude = (vertices[i] - 位置).sqrMagnitude; // 如果太远就提前退出 if (sqrMagnitude > sqrRadius) 继续; 距离 = Mathf.Sqrt(sqrMagnitude);
vertices
是网格顶点的列表,position
是网格操作/变形的点。
我的问题是两个部分:
1)以上实际上是高斯衰减吗?它是指数的,但似乎没有关键的 e 或 2 的幂...(更新 - 我看到图形似乎以类似高斯的方式平滑地减小。也许这个函数不是问题 2 的原因以下)
2)我的网格变形不够平滑 - 鉴于上述参数,您会推荐不同的高斯衰减吗?