Mengapa pengembang game konsol menggunakan file besar untuk menyimpan data game, bukan file kecil seperti di PC? Lebih sedikit stream dalam memori? Perlu mengakses pohon file berkali-kali? Alasan lain?
Mengapa pengembang game konsol menggunakan file besar untuk menyimpan data game, bukan file kecil seperti di PC? Lebih sedikit stream dalam memori? Perlu mengakses pohon file berkali-kali? Alasan lain?
Jawaban:
Memiliki satu file besar memiliki beberapa manfaat untuk kinerja, apa pun platformnya. Banyak game PC juga menggunakan file besar.
Anda dapat secara manual men-cache offset dari setiap file dalam file besar, untuk menghindari keharusan membaca entri direktori sistem file (yang dapat melibatkan beberapa pencarian per file yang dibuka jika Anda melewatkan cache).
Anda mendapatkan kontrol penuh atas urutan data di dalam file, sehingga Anda dapat mengaturnya untuk meminimalkan kebutuhan akan pencarian yang lambat.
Kompresi data umumnya lebih efektif pada satu file besar, daripada pada file individual.
Perhatikan bahwa menghindari pencarian sangat efektif untuk mempercepat waktu muat. Hard drive biasa mungkin memiliki waktu pencarian 10 ms, dan kecepatan transfer 100MB / s. Katakanlah Anda perlu memuat 100 file shader dengan ukuran total 1MB. Jika Anda harus melakukan pencarian untuk masing-masing itu akan membutuhkan satu detik untuk memuat semuanya. Dengan pencarian tunggal Anda sedang mencari 20 ms untuk memuat semuanya.
Tentu saja tidak semua konsol memiliki hard drive, dan drive optik memiliki kinerja pencarian yang lebih buruk, sehingga shader mungkin memerlukan waktu 5 atau lebih detik untuk memuat DVD ketika mencari. Konsol juga memiliki lebih sedikit memori untuk digunakan sebagai cache daripada PC, jadi mereka cenderung memuat data lebih sering.
Terlepas dari jawaban yang sangat bagus yang diberikan oleh Adam, saya juga ingin menunjukkan beberapa faktor penting lainnya:
Semakin sedikit file yang Anda miliki, semakin mudah penyebaran aplikasi Anda. Ini terutama benar jika Anda ingin menggunakan aplikasi Anda pada platform seluler, seperti iOS, Android atau Windows Phone. Bahkan jika dalam kasus Windows Phone Anda masih dapat memiliki banyak file seperti yang Anda inginkan, karena XAP-file, yang digunakan untuk penyebaran, hanyalah arsip zip, itu adalah
Memiliki semua aset Anda dalam satu file tunggal memastikan bahwa semuanya sudah diunduh / baca "dalam keadaan utuh" . Banyak gamer akan memaafkan Anda penundaan yang nyata untuk mengunduh aset atau membongkarnya sebelum permainan dimulai, tetapi mereka tidak akan menuruti asalkan mereka menghadapi jeda yang bahkan halus selama permainan. Tentu saja Anda dapat melakukan pra-cache sumber daya Anda dalam RAM, tetapi memuatnya "secara terpisah" masih lebih mudah untuk tujuan ini daripada memuatnya berdasarkan per file.