Three.js의 방향 표시등이 켜져 이상한 효과가 나타납니다 (이상하게 보입니다 만 잘 모르겠습니다).Three.js 방향 표시등이 점등처럼 보입니다.
라이트 설치 카메라 단순 부착이다
dirLight = new THREE.DirectionalLight(0xffffff, 1);
dirLight.position.set(0, 0, 1);
camera.add(dirLight);
메쉬 바로 현장에서 원점 위치 (0, 0, 0). 빛의 표적은 동일합니다. 메쉬의 재질은 MTL 파일에서 가져옵니다.
newmtl mat_1
Ka 0.140196 0.147059 0.171569
Kd 0.560784 0.588235 0.686275
Ks 0.950000 0.930000 0.880000
Ns 750.000000
음영이 기본값입니다. 물리적으로 올바른 조명 옵션을 사용할 수 있습니다 (그러나 결과는 물론 장애인을위한 동일) 표준 물질과 결과
: 0에서 1
THREE.MeshStandardMaterial({ color: 0x0033ff, roughness: 0.4, metalness: 0.5 })
변경 거칠기 (metalness 여기 0) :
나는 빛이 전체 페이지에 걸쳐 균일하게 분포되어야한다고 생각메쉬 레인. 그러나 그것은 한 지점에 집중되어있는 것처럼 보입니다. 무엇이 잘못 될 수 있습니까?
나는 이것에 대한 내 자신의 쉐이더를 작성해야 :
나는 다음과 같은 동작을 얻으려고?
어떤 유형의 재료입니까? 'THREE.MeshStandardMaterial()'이라면'.roughness'와'.metalness' 매개 변수를 재생할 수 있습니다. – prisoner849
@ prisoner849, 첫 번째 자료는 MTL에서 제공되며 OBJ 로더에 추가됩니다. 나는 또한 기본 OBJ 로더 자료 (다른 자료는 설정하지 않았다)와 표준 자료 (그 그림을 게시물에 첨부)로 시도했다. 모든 경우에 표시등이 똑같아 보입니다. – Akdez
절망적 인 옵션으로,'THREE.MeshLambertMaterial()'을 사용하지만, 여러 광원의 그림자 문제가있을 수 있습니다. – prisoner849