jsonloader 및 three.js를 사용하여 여러 메쉬를 표시하는 WebGL 스크립트를 작성했습니다. 이제 MouseOver 및 onClick 이벤트를 추가하려고합니다. 마우스로 가리킬 때이 중 첫 번째는 단순히 메시의 색상을 변화 :세 개의 j에서 마우스 오버를 사용하여 메쉬의 색을 변경합니다.
function render() {
requestAnimationFrame(render);
mesh.rotation.z += 0.090;
raycaster.setFromCamera(mouse, camera);
var intersects = raycaster.intersectObjects(scene.children);
for (var i = 0; i < intersects.length; i++) {
intersects[i].object.material.color.set(0xff0000);
}
renderer.render(scene, camera);
}
기능을 렌더링 위의 나를 위로 마우스를 가져 가면 빨간색으로 어떤 메쉬의 색상을 변경할 수 있습니다. 여러개의 if/else 변종을 시도해 보았습니다.이 효과는 마우스가 메쉬 위에있을 때만 작동하지만 작동시키지 못하면 그냥 빨간색으로 유지됩니다. 누구든지 내 스크립트를 수정하는 방법을 제안 할 수 있습니까?
감사합니다. 당신은 다시 자동으로 수행되지 않습니다 마우스 아웃의 원래 색상에 색상을 설정해야
왜 모든 행 사이에 공간을 배치해야합니까? 그리고 왜 탭을 사용합니까? –
그건 내가 습득 한 나쁜 습관이야, 미안해. 때로는 다른 파일에서 코드의 일부를 복사하여 붙여 넣고 내가 추가 한 비트를 식별 할 수있는 공간을 남겨 둡니다. –