Karena saya sedang dalam proses membuat game 3D c ++ dan saya bertanya-tanya apa yang akan lebih bermanfaat ketika berhadapan dengan aset game terkait dengan penyimpanan. Saya telah melihat beberapa permainan memiliki satu file aset terkompresi dengan semua yang ada di dalamnya dan lainnya dengan banyak file terkompresi kecil.
Jika saya memiliki banyak file individual saya tidak perlu memuat file besar sekaligus dan menggunakan memori tetapi kode harus pergi tentang mencari file ketika level memuat untuk menemukan semua file yang benar diperlukan.
Tidak perlu mencari file ketika berurusan dengan satu file besar, tetapi sekali lagi, bagaimana dengan semua aset yang saat ini tidak diperlukan yang akan dimuat dengan satu file?
Saya juga bisa memiliki file aset untuk setiap level, tetapi kemudian bagaimana cara saya berurusan dengan aset bersama
Ini telah mengganggu saya untuk sementara waktu, jadi beri tahu saya apa kelebihan dan kekurangan lain dari kedua cara itu dalam melakukan sesuatu.
sumber
Jawaban:
Dari titik kinerja dan penyimpanan, file sumber daya tunggal adalah solusi yang lebih menguntungkan (namun dalam praktiknya tidak selalu benar-benar terlihat). Kekurangannya adalah lebih sulit untuk memperbarui dan mengelola.
IMO itu tidak begitu penting biasanya, cukup gunakan yang lebih nyaman bagi Anda, itu benar-benar hanya detail teknis yang tidak boleh dipertimbangkan sampai Anda benar-benar melihat beberapa masalah dengan itu.
sumber
File yang dibongkar memudahkan pengguna untuk mengedit dan mengganti file, membuat game ini lebih ramah modding. Ini bisa dilihat sebagai keuntungan atau kerugian, tergantung pada sikap Anda terhadap modding.
Dari perspektif kinerja: Memuat banyak file kecil dari hard drive dapat menjadi jauh lebih lambat daripada yang besar, karena defragmentasi sistem file biasanya akan mencoba untuk menghindari pemecahan file besar, tetapi banyak file kecil di direktori yang sama dapat tersebar di seluruh disk. Jadi ketika Anda memuat ribuan file kecil, drive mungkin harus melakukan banyak pencarian. Namun di sisi lain, menggunakan arsip mungkin membuatnya lebih mahal untuk mendapatkan file individual dari dalam arsip (tergantung pada bagaimana arsip Anda terstruktur secara internal), jadi Anda harus mencoba mengelompokkan file yang biasanya dibutuhkan bersama.
Dari perspektif perawatan: Kecuali Anda memiliki alat untuk melakukan pembaruan tambahan untuk file paket Anda, tambalan Anda akan menjadi jauh lebih besar ketika Anda harus mengganti seluruh paket untuk menambal satu file individual.
sumber
Biasanya sebuah paket akan lebih cepat, namun itu tidak selalu nyaman, seperti kata Petr. Salah satu cara untuk memerangi itu adalah membuat mesin Anda dapat memuat file yang longgar dan mengemas file. Kemudian, dalam mode debug, muat file yang longgar, dan dalam mode rilis, muat dari sebuah paket
sumber