0
我正在嘗試使用three.js創建類似於使用磁帶覆蓋的呼啦圈的效果。用螺旋包裹圓環
三維模型應該看起來像下圖。
我可以創建使用TorusGeometry
一起平移的能力,在三維空間中圈,但我沒有設法制定出如何獲得第二TorusGeometry
打入部分。
創建這種效果的最佳方式是什麼?
// hoop
hoop = new THREE.TorusGeometry(20, .5, 100, 50);
var hoopMaterial = new THREE.MeshPhongMaterial({
ambient: 0xffffff,
color: 0x028fde,
specular: 0x555555,
shininess: 0
});
hoopMesh = new THREE.Mesh(hoop, hoopMaterial);
hoopMesh.position.z = 0;
scene.add(hoopMesh);
hoopTape1 = new THREE.TorusGeometry(20.1, .6, 0, 50);
var hoopTapeMaterial = new THREE.MeshPhongMaterial({
ambient: 0xffffff,
color: 0xDE5102,
specular: 0x555555,
shininess: 0
});
hoopTape1Mesh = new THREE.Mesh(hoopTape1, hoopTapeMaterial);
hoopMesh.position.z = 0;
scene.add(hoopTape1Mesh);
jsfiddle帶有當前工作代碼。
反正有做的黑色部分紋理透明如讓第一個環面顯示在空隙中? –
我解決了它!我使用與上面完全相同的紋理,但用alpha圖層替換了黑色。 –
爲了好玩,請執行以下操作:使用'alphaMap:texture,alphaTest:0.5,side:THREE.DoubleSide,transparent:true'的原始紋理。 – WestLangley