Bagaimana prosedur yang diikuti oleh pemrogram game untuk menyimpan dan melanjutkan status game? seperti file / pemetaan. Saya ingin menyimpannya untuk game menara pertahanan dan saya menggunakan mesin game unity3D.
unity
tower-defense
savegame
Syed
sumber
sumber
Jawaban ini spesifik untuk Unity3d .
Di Unity, sebagian besar kelas bisa serial, ini artinya Anda bisa melakukan streaming objek Unity ke disk. Kode UnityScript berikut adalah cara untuk membuat serialisasi objek, menyimpannya ke disk memuatnya lagi (setelah memuat Anda harus melemparkan objek):
sumber
Untuk TD saya mungkin akan menyimpan secara eksklusif di antara gelombang. Dengan begitu semua yang harus Anda pikirkan adalah menara. Letakkan beberapa titik penyimpanan otomatis di level-level tersebut, tidak lebih dari 10 menit, tetapi mungkin lebih sedikit.
Tentu saja jika level Anda cukup singkat, Anda hanya dapat menyimpan apa pun selain status kampanye.
sumber
Ketika saya merujuk pada kondisi saat ini dari permainan saya merujuk snapshot memori pada saat menyimpan. Anda harus dapat membuatnya kembali dari data yang akan Anda simpan pada HDD Anda.
Cara termudah adalah dengan membuat serial semua kelas Anda yang memiliki data yang perlu persisten dan membuangnya ke HDD, yang pada dasarnya melakukan dump memori. Masalah dengan hal ini adalah bahwa mengubah kelas Anda akan mengubah jumlah / jenis nilai serial dan menghancurkan penyimpanan lama. Juga karena Anda menyimpan semua itu meningkatkan waktu pemuatan. Lebih efisien untuk menandai masing-masing bidang yang sebenarnya diperlukan untuk membangun kembali "snapshot memori" saat ini dengan sistem atribut apa pun yang digunakan oleh serializer / IDE Anda. Kemudian buat kembali "snapshot memori" dari data yang disimpan.
Juga saya belum pernah menggunakan Unity sebelumnya sehingga mungkin ada sesuatu yang tertanam di dalamnya. Namun, ini adalah pendekatan yang khas.
sumber