Я пытаюсь создать эффект, похожий на обруч обруча, покрытый лентой, используя three.js.Обертывание тора со спиралью
Эта 3d модель должна выглядеть примерно так, как показано ниже.
Я могу создать обруча в 3D пространстве, используя 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 с действующим рабочим кодом.
есть в любом случае, чтобы сделать черную часть из прозрачная текстура, например позволяя показывать первый тор в пробелах? –
Я справился! Я использовал ту же текстуру, что и выше, но заменил черный на альфа-слои. –
Для удовольствия сделайте это: используйте оригинальную текстуру с помощью 'alphaMap: texture, alphaTest: 0.5, side: THREE.DoubleSide, transparent: true'. – WestLangley