実行時に TubeGeometry に基づいてメッシュの半径を動的に変更する方法。
メッシュの作成方法は次のとおりです。
var points = new THREE.SplineCurve3([
new THREE.Vector3(source.x, source.y, source.z),
new THREE.Vector3(target.x, target.y, target.z)
]);
var geometry = new THREE.TubeGeometry(points, 10, 1, 10, false, false);
geometry.dynamic = true;
var material = new THREE.MeshLambertMaterial({color:0x0000cc});
var mesh = new THREE.Mesh(geometry, material);
そして、ここでチューブの半径を更新しようとする方法:
var geometry = mesh.geometry;
geometry.radius = 200;
geometry.verticesNeedUpdate = true;
mesh.updateMatrix();
残念ながら、チューブの半径は更新されません。それはどのように正しく行われますか?それはまったく可能ですか?