2017-03-18 4 views
0

physijs를 사용하여 프로젝트를 개발하려고합니다.phys.js 및 ammo.js를로드하는 중 오류가 발생했습니다.

  • NetworkError :

error_log

에서 작업자 스크립트를로드하지 못했습니다 "JS/libs와/ammo.js"나는 '나는 (모질라 파이어 폭스 콘솔에서) 이러한 유형의 오류가 발생했을 그것을 고치려고했지만 결과가 없습니다.

<script src="build/three.js"></script> 
<script src="js/libs/physi.js"></script> 
<script src="js/controls/OrbitControls.js"></script> 
<script src="js/Detector.js"></script> 

<script> 

    'use strict'; 

    Physijs.scripts.worker = 'js/libs/physijs_worker.js'; 
    Physijs.scripts.ammo = 'js/libs/ammo.js'; 

모든 자바 스크립트 파일 (빌드 디렉토리에있는) Three.js를 구축 파일을 제외하고, JS 디렉토리에 있습니다 :이 physijs 설정에 내 코드입니다. 필자는 코드에서 무엇이 잘못되었는지 전혀 알지 못합니다. 라이트,지면 (Physijs 규칙에 따른 컴 포드 모양) 및 가방 (원뿔 트위스트를 적용하고 싶지만 이전의 이유로 작동하지 않습니다) 만 만듭니다.

function createScene() { 

      var container = document.getElementById('container'); 

      //stats = new Stats(); 
      //container.appendChild(stats.dom); 

      camera = new THREE.PerspectiveCamera(60, window.innerWidth/window.innerHeight, 0.1, 1000); 
      camera.position.x = 0; 
      camera.position.z = 17; 
      camera.position.y = 12; 

      //scene = new THREE.Scene(); 
      scene = new Physijs.Scene; 
      scene.setGravity(new THREE.Vector3(0, -10, 0)); 


      renderer = new THREE.WebGLRenderer(); 
      renderer.physicallyCorrectLights = true; 
      //renderer.gammaInput = true; 
      //renderer.gammaOutput = true; 
      renderer.shadowMap.enabled = true; 
      //renderer.shadowMapType = THREE.PCFSoftShadowMap; 
      //renderer.toneMapping = THREE.ReinhardToneMapping; 
      renderer.setPixelRatio(window.devicePixelRatio); 
      renderer.setSize(window.innerWidth, window.innerHeight); 
      container.appendChild(renderer.domElement); 


      var controls = new THREE.OrbitControls(camera, renderer.domElement); 
      controls.target.set(0, 0, 0); 
      controls.noPan = true; //disable panning of orbit control 
      controls.noKeys = true; //disable arrow keys of orbit control 
      controls.update(); 

      window.addEventListener('resize', onWindowResize, false); 
      window.addEventListener('keydown', onKeyDown, false); 
      window.addEventListener('keyup', onKeyUp, false); 

     } 

가 어떻게이 문제와 수입 올바르게 Physi.js을 수정할 수 있습니다

은 내가 (경우에 뭔가 문제가있는 경우) 장면을 초기화하는 데 사용하는 경우에도 코드를 추가?

답변

0

내가 로컬 웹 서버 (Three.js's reference)를 사용 해결이 변경 :

Physijs.scripts.worker = 'js/libs/physijs_worker.js'; 
Physijs.scripts.ammo = 'ammo.js';