将脚本更新到较新的three.js,并遇到ParametricGeometry问题。我不断收到错误消息:“ THREE.ParametricGeometry:函数现在必须将Vector3修改为第三个参数。”以下是我所拥有的:
var restDistance = 20;
var xSegs = 15;
var ySegs = 10;
var clothFunction = plane(restDistance * xSegs, restDistance * ySegs, zSegs);
var cloth = new Cloth(xSegs, ySegs);
clothGeometry = new THREE.ParametricGeometry( clothFunction, cloth.w, cloth.h, true );
我假设错误中提到的功能是clothFunction。我已经试过了,但是有同样的错误-我不明白什么?
var clothFunction = function (u, v) {
return new THREE.Vector3(restDistance * xSegs, restDistance * ySegs, 1);
};
答案 0 :(得分:1)
这里已经问过类似的问题:https://discourse.threejs.org/t/parametricgeometry-problem-with-parametric-function/3169
简而言之:参数函数现在需要代表您的计算结果的第三个参数(target
)。这种方法避免了new THREE.Vector3()
不必要的对象创建。