2014-03-25 2 views
0

저는 ThreeJS를 처음 접했고 우리 모델 중 하나를 보여주는이 예제를 만들었습니다. http://petrie3dtesting.museums.ucl.ac.uk/3DFootCover/index.htmlThreejs objmtlloader 검정색 모델

Petrie3Dviewer를 만들고 HTML 페이지에서 .obj 및 .mtl 파일을 입력으로받는 뷰어 개체를 만들었습니다. 이상하게도 tho, 개체가 검은 색으로 표시되면 상호 작용하기 시작하면 텍스처가 나타납니다. 내가 생각했던 모든 것을 시도했다 : 다양한 브라우저, 텍스처를 더 작게, 다른 컴퓨터로, 나는 무작위적인 행동을 항상 얻지 못한다. 나는 주로 FIREfox, Chrome에서 시도했다. 일단 obj 파일이로드되었지만 OBJMTLLoader.js가 어떤 이벤트도 제공하지 않으면 강제로 렌더링해야하는 것처럼 보입니다.

정말 많은 도움에 감사드립니다. 최고, GC

답변

0

Animate 함수에서 this.DoRender을 호출하여 프레임을 렌더링해야합니다.

this.Animate = function() { 
    this.orbitControls.update(); 
    this.Animate(); 
    requestAnimationFrame(this.Animate.bind(this)); 
} 

사용자가 OrbitControls으로 원근을 변경할 때만 렌더링 기능을 호출합니다. 텍스처가 비동기 적으로로드되기 때문에 프레임을 렌더링 할 때 처음에는 준비가되지 않습니다.