Berapa banyak daya ekstra yang diperlukan untuk permainan 3D stereoskopis?

12

Jika kita menggunakan Cryengine 3 untuk pengembangan game dan membuat game 3D kompatibel. Karena 3D mengirimkan dua gambar, apakah ini berarti Anda memerlukan komputer dengan "kekuatan" dua kali? Jadi, jika Anda mendapatkan 30 fps saat bermain normal, Anda akan membutuhkan 60 fps untuk bermain dengan 3D?

Tourrent
sumber

Jawaban:

1

Singkatnya, ya Anda harus mengeluarkan 60fps untuk memiliki efek 30fps.

SD021
sumber
1
Saya bingung tentang jawaban ini sebagai jawaban "diterima", mengingat dua jawaban yang tampaknya saling bertentangan juga di sini.
jcurrie33
2
Saya tidak tahu mengapa ini adalah jawaban yang diterima, karena faktanya salah.
AttackingHobo
16

Anda tidak kehilangan setengah kinerja Anda saat menghidupkan stereo 3d. Logika gim, AI, fisika, dan apa pun yang dilakukan CPU hanya berjalan sekali. Hanya rendering yang dilakukan dua kali, dan itu efisien, karena kartu memiliki semua yang ada di memori untuk setiap frame kedua, jadi tidak menggunakan bandwidth tambahan.

Satu-satunya situasi di mana ini akan menjadi kenyataan adalah jika Anda memiliki adegan 3d statis yang benar-benar rumit dengan GPU melakukan segalanya dan CPU duduk diam. Dan bahkan saya ragu itu akan menjadi penurunan kinerja 50%

Saya telah menguji banyak game dengan nvidia 3d stereo, dan tidak ada game yang turun mendekati kinerja 50%.

SerangHobo
sumber
9

Apalagi dengan CryEngine 3 ini tidak benar. Ya, itu membagi dua framerate, tetapi menyalakan 3D tidak dikenakan biaya setengah frame Anda (atau Anda membutuhkan daya perangkat keras dua kali lipat). Mereka menggunakan cache proyeksi ulang dan buffer kedalaman yang tersedia untuk mendapatkan gambar kedua, sehingga penurunan kinerja adalah 5-10% saat menghidupkan 3D. Mereka menyebutnya "Layar Proyeksi Ulang Ruang Stereo".

Enrico
sumber
1
Ya tapi itu bukan stereo penuh.
samboush
Mereka menyebutkan ini di komentar pengembang game di suatu tempat, tidak dapat menemukan tautan saat ini.
David Young
@samboush: Mengapa ini bukan "stereo penuh"? Ini bekerja dengan Nvidia 3D Vision dan Kacamata Stereo biasa.
Enrico
@ Enrico: Jika Anda memiliki Layar dengan kedalaman, Anda tahu koordinat nyata dari setiap piksel. Kemudian U dapat menghitung pergeseran adegan normal untuk mata kiri dan kanan. Tapi stereo 3D nyata adalah Anda menggambar dua adegan - menembak untuk mata kiri dan kedua untuk mata kanan. Dua adegan penuh. Maka dibutuhkan waktu menggambar 2 kali lebih banyak.
samboush
Mengapa Anda ingin menggambar ulang setiap single dengan sedikit offset untuk Stereo Rendering, ketika Anda sudah memiliki informasi ini? Sebagian besar piksel yang dihitung akan benar dalam cache proyeksi ulang, tidak perlu menghitungnya kembali. Yang berubah tentu saja dihitung ulang - dan voila, Anda memiliki stereo lengkap.
Enrico
1

Saya akan mengatakan tidak diabaikan sama sekali. Ini adalah masalah sumber daya perangkat keras dan tantangan pengembangan.

Sebagian besar waktu Anda tidak dapat membagi framerate antara kedua mata; jika game Anda biasanya berjalan pada 60fps, Anda harus berlari pada 120fps untuk kenyamanan visual yang sama.

Namun, banyak hal yang dapat dilakukan hanya satu kali per pasangan stereo: frustum culling - dengan biaya frustum yang sedikit lebih besar (lihat Menyiapkan Kamera 3D dalam Pengoptimalan untuk Membuat Game 3D Stereoscopic di PlayStation® ), oklusi culling, vertex dan mengunggah array array indeks, menangkap adegan dan merender ke tekstur ...

Beberapa bagian adegan hanya dapat dirender satu kali: misalnya, langit yang kompleks dengan awan, bintang, dll. Biasanya akan tak terhingga, sehingga biaya shader piksel hanya diperlukan satu kali, dan rendering kedua hanya berupa pencarian tekstur menjadi target render pertama. Sebenarnya beberapa permainan stereo menggunakan metode yang disebut proyeksi ulang yang dibangun berdasarkan pendekatan ini untuk membuatnya layak untuk seluruh adegan: lihat utas ini di luar3d untuk petunjuk teknik ini.

Untuk mengatasi kekuatan pemrosesan ekstra yang diperlukan, Anda dapat mengurangi resolusi. Dari pengalaman pribadi saya, jauh lebih bisa diterima daripada mengurangi framerate. Namun, jangan mencoba untuk menonaktifkan anti-aliasing: seperti yang dikatakan insinyur Sony dalam makalah di atas, rendering ke buffer resolusi lebih rendah dengan AA terlihat lebih baik daripada buffer resolusi tinggi tanpa AA .

Perhatikan bahwa ada pendekatan lain untuk stereovision dalam game yang tidak memerlukan TV 3D, seperti Trioviz . Saya tidak bisa masuk ke detail di sini, (masalah NDA).

sam hocevar
sumber