2017-09-13 7 views
0

Ich verwende Three.js in Kombination mit Nvidias 3D Vision Shutter-Technologie. So wie ich das Rendering zu tun ist, wie es folgt:Three.js - Höhere Bildrate

// Init 3D Vision Camera (Shutter Glasses) 
var eye_separation = 0.03; // adjust to the distance of your eyes 
var cam_toggle = true; 

function animate() { 

    // Enable 3D Vision 
    if (cam_toggle) { 
     camera.position.x += eye_separation; 
     cam_toggle ^= 1; 
    } else { 
     camera.position.x -= eye_separation; 
     cam_toggle ^= 1; 
    } 

    renderer.render(scene, camera); 
    requestAnimationFrame(animate); 
} 

Basicly, was ich herausgefunden habe, ist, dass die Frame-Aktualisierungsrate der GPUs gleich ist und wie die Shutter-Brille synchronisiert. Um den stereoskopischen Effekt zu erzeugen, schalte ich die Kamera einfach zwischen einer bestimmten Ansicht um, die sich in diesem Beispiel auf der x-Achse ändert. Das funktioniert sehr gut! Nvidia beschreibt in seiner Dokumentation, einen Frame-Buffer zu verwenden, um die zwei verschiedenen Ansichten umzuschalten, was ich nicht tue. Das Problem ist, dass ich nur 60 fps bei max. Aber ich benutze einen 120 Herz Projektor. Wie kann ich das Rendern für jede Ansicht auf bis zu 60 fps beschleunigen, so dass ich 120 in Kombination bekomme?

Antwort

0

Entsprechend dieser answer here und its source here läuft die Animation-Schleife bei 120Hz sollte funktionieren, wenn der Monitor bei 120Hz läuft.