2014-06-24 14 views
0

저는 학생 프로젝트를하고 있습니다. 주변 조명과 스포트라이트가있는 장면이 있습니다.임포트 된 three.js 블렌더 모델에서 MeshPhongMaterial의 ambient 속성을 false로 설정할 수 있습니까?

"colorAmbient": [0.6400000190734865, 0.6400000190734865, 0.6400000190734865], JSON 파일에서

I 라인이있는 블렌더 모델을 가져온.

MeshPhongMaterial에서이 속성을 해제하여 주위 조명이 아닌 스포트라이트에만 반응하도록하는 방법이 있습니까?

줄을 지우고 0으로 설정하려고 시도했지만 아무 효과가 없습니다. 이 속성을 해제 할 수 있습니까? 또는 장면에서 주변 조명을 제거하고 방향성과 같은 다른 유형을 사용해야합니까?

도움 주셔서 감사합니다.

+0

당신이 할 수있는'material.ambient.set (0x000000에서)를' . (실제로는 앰비언트 반사율은 일반적으로 재질'color'와 일치해야합니다.) 다음과 같이하면됩니다 : ambientLight.color.set (0x000000);'다른 것처럼 들리네 ... – WestLangley

+0

감사합니다. 내 문제를 해결 했어! 블렌더의 재질을로드하기를 원하지 않았습니다. 그런 다음 일단 기하를로드하고 로더 함수에서 색상을 설정하면 주변 속성에 대한 기본 회색 블렌더 설정이 있다고 생각합니다. material.ambient.set을 사용하여 모델에 대해 선택한 동일한 색상으로 색상을 설정했습니다. 그것은 완벽하게 작동합니다. – KayM

답변

0

실제로는 재료의 주변 반사율은 일반적으로 확산 반사율이라고도하는 재료 색상과 일치해야합니다. 이렇게하면 모델이 더 좋아 보이게됩니다.

예를 들어, 당신이 할 수있는이

material.ambient.copy(material.color); 

또는

material.ambient.set(0xff0000); 

three.js를 r.67