2017-02-02 4 views
3

Gibt es eine Möglichkeit der Kameradrehung in this demo haben durch mobile Gerät Bewegung Bewegung sowie Maus gesteuert werden, wie es derzeit ist? Dies wurde für mobile here implementiert, aber nicht zusammen mit der Maus. Dies ist, was zur Zeit Kamerarotation für Maus steuert:three.js - Link Kameradrehung auf das mobile Gerät Bewegung innerhalb div

function render() { 
     var timer = -0.0002 * Date.now(); 
     camera.position.x += (mouseX - camera.position.x) * .05; 
     camera.position.y += (- mouseY - camera.position.y) * .05; 
     camera.lookAt(scene.position); 
     pointLight.position.x = 1500 * Math.cos(timer); 
     pointLight.position.z = 1500 * Math.sin(timer); 
     renderer.render(scene, camera); 
    } 

Das Ziel ist es, in einem div auf einer Seite zu setzen, die gescrollt werden können - ich habe dies in einer einzigen Vollbildfenster Seite implementiert gesehen, aber nicht als ein Element in einer längeren Seite

Antwort

1

Sie können zunächst prüfen, ob es sich um ein mobiles Gerät ist oder nicht. Wenn es ist: Verwenden Sie DeviceOrientation ... else: Verwenden Sie den Code für die Maus geschrieben.

zu überprüfen, ob es mobil ist:

functionisMobile() { 

    if (navigator.userAgent.match(/Android/i) 
     || navigator.userAgent.match(/webOS/i) 
     || navigator.userAgent.match(/iPhone/i) 
     || navigator.userAgent.match(/iPad/i) 
     || navigator.userAgent.match(/iPod/i) 
     || navigator.userAgent.match(/BlackBerry/i) 
     || navigator.userAgent.match(/Windows Phone/i) 
    ) { 
     return true; 
    } 
    else { 
     return false; 
    } 
}