Quanta potenza extra è richiesta per un gioco 3D stereoscopico?


12

Se utilizziamo Cryengine 3 per lo sviluppo del gioco e rendiamo il gioco 3D compatibile. Poiché il 3D invia due immagini, questo significa che hai bisogno di un computer con il doppio della "potenza"? Quindi se ottieni 30 fps quando giochi normale avrai bisogno di 60 fps per giocare con il 3D?

Risposte:


1

In breve, sì, dovrai avere 60 fps per avere l'effetto di 30 fps.


1
Sono confuso sul fatto che questa risposta sia la risposta "accettata", date le due risposte apparentemente contraddittorie anche qui.
jcurrie33,

2
Non so perché questa sia la risposta accettata, in quanto non corretta.
Attaccando

16

Non si perde metà delle prestazioni quando si accende stereo 3d. La logica dei giochi, l'IA, la fisica e tutto ciò che la CPU fa ancora viene eseguita solo una volta. Solo il rendering viene eseguito due volte, ed è efficiente, poiché la scheda ha tutto in memoria per quello che sarà ogni secondo fotogramma, quindi non utilizza alcuna larghezza di banda aggiuntiva.

L'unica situazione in cui ciò sarà vero è se tu avessi una scena 3d statica che era davvero complicata con la GPU che faceva tutto e la CPU era inattiva. E anche allora dubito che sarà un calo delle prestazioni del 50%

Ho testato molti giochi con nvidia 3d stereo e nessun gioco è mai sceso vicino al 50% delle prestazioni.


9

Soprattutto con CryEngine 3 questo non è vero. Sì, dimezza il framerate, ma l'attivazione del 3D non costa la metà dei fotogrammi (o è necessaria una potenza hardware doppia). Usano una cache di riproiezione e il buffer di profondità disponibile per ottenere la seconda immagine, quindi il calo delle prestazioni è del 5-10% quando si attiva il 3D. Lo chiamano "Stereo di ri-proiezione dello spazio dello schermo".


1
Sì, ma non è stereo completo.
samboush,

Lo citano in un commento degli sviluppatori di giochi da qualche parte, al momento non riesco a trovare il link.
David Young,

@samboush: Perché questo non è "full stereo"? Funziona con Nvidia 3D Vision e i soliti occhiali stereo.
Enrico,

@Enrico: se hai Screen con profondità, conosci le coordinate reali di ogni pixel. Quindi U può contare lo spostamento della scena normale per l'occhio sinistro e destro. Ma il vero stereo 3D è che disegni due scene: prima per l'occhio sinistro e seconda per l'occhio destro. Due scene complete. Quindi ci vuole 2 volte in più del tempo di disegno.
samboush,

Perché vuoi ridisegnare completamente ogni singolo con un leggero offset per il rendering stereo, quando hai già queste informazioni? La maggior parte dei pixel calcolati sarà corretta nella cache di riproiezione, non è necessario ricalcolarli. Ovviamente quelli che cambiano vengono ricalcolati - e voilà, hai uno stereo completo.
Enrico,

1

Direi non trascurabile affatto. È sia un problema di risorse hardware sia una sfida di sviluppo.

Il più delle volte non è possibile dividere il framerate tra i due occhi; se il tuo gioco di solito funziona a 60 fps, devi correre a 120 fps per lo stesso comfort visivo.

Tuttavia, molte cose possono essere fatte solo una volta per coppia stereo: abbattimento del frustum - al costo di un frustum leggermente più grande (vedi Impostazione delle telecamere 3D nell'ottimizzazione per la realizzazione di giochi 3D stereoscopici su PlayStation® ), abbattimento dell'occlusione, vertice e indicizza caricamenti di array, acquisizioni di scene e rendering su texture ...

Alcune parti della scena possono essere renderizzate una sola volta: ad esempio, un cielo complesso con nuvole, stelle, ecc. Di solito sarà all'infinito, quindi il costo del pixel shader è necessario solo una volta e il secondo rendering può essere una semplice ricerca di trama in il primo target di rendering. In realtà alcuni giochi stereo usano un metodo chiamato riproiezione che si basa su questo approccio per renderlo praticabile per l'intera scena: vedi questo thread su beyond3d per i puntatori a questa tecnica.

Per far fronte alla potenza di elaborazione aggiuntiva richiesta, è possibile ridurre la risoluzione. Dalla mia esperienza personale, è molto più accettabile farlo che ridurre il framerate. Non tentare di disabilitare l'antialiasing, tuttavia: come affermano gli ingegneri Sony nel documento sopra, il rendering su buffer a bassa risoluzione con AA sembra migliore rispetto ai buffer ad alta risoluzione senza AA .

Nota che ci sono altri approcci alla stereovisione nei giochi che non richiedono una TV 3D, come Trioviz . Non posso entrare nei dettagli qui, però (problemi NDA).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.