2017-03-19 15 views
0

Hackatonの場合、キーボードとカメラの管理で動きを使用する必要があります。 私は文書で、両方を使用する可能性を見つけられませんでした。 (のみデモ用)の問題を解決するためにa-frame:camera + look-controls &&キーボードコントロール

私はこのようなキーイベントを自分自身をキャッチ:

<!--html--> 
    <a-entity camera id="camera" look-controls position="0 1.764 0"> 
     <a-entity id="cursor" cursor="fuse: false; fuseTimeout: 500" position="0 0 -1" 

        geometry="primitive: ring; radiusInner: 0.01; radiusOuter: 0.02;" material="color: #CCC; shader: flat;"> 

     </a-entity> 
    </a-entity> 


//javascript 
    priv.bindEvent = function(evt) { 
      var el = document.getElementById('camera').getAttribute('position'); 
      var element = document.getElementById('camera'); 
      switch(evt.key) { 
       case "z": 
        el.z -= 0.2; 
        element.setAttribute('position', el.x+" "+el.y+" "+el.z); 
        break; 
       case "q": 
        el.x -= 0.2; 
        element.setAttribute('position', el.x+" "+el.y+" "+el.z); 
        break; 
       case "d": 
        el.x += 0.2; 
        element.setAttribute('position', el.x+" "+el.y+" "+el.z); 
        break; 
       case "s": 
        el.z += 0.2; 
        element.setAttribute('position', el.x+" "+el.y+" "+el.z); 
        break; 
       default: 
        break; 

      } 
     }; 

我々はこの素晴らしいライブラリを発見されており、この機能を使用するには、他の方法であるかどうか、私は尋ねます。事前

答えて

0

これを行うためのデフォルトの方法で

おかげで、あなたがすでにやっているようキーボード用wasd-controlsとともに、look-controlsを使用することです。

例:

<a-entity camera look-controls wasd-controls></a-entity> 

あなたはそれをフォークと異なるレイアウトに変更を加える必要がある場合にも、source code for wasd-controlsを調べることができます。

+0

偉大な答え、ありがとう – user3279327

関連する問題