Saya ingin menghasilkan dunia yang sepenuhnya unik dengan bioma (seperti apa yang dilakukan Minecraft dan game sejenis). Saya tidak mengerti bagaimana mereka menghasilkan seluruh dunia ini dari satu nomor "seed". Bisakah seseorang memberikan gambaran umum dasar teknik ini?
32
Jawaban:
Bagaimana Anda menghasilkan X acak dari sebuah benih? nilai seed adalah keadaan awal dari generator angka acak. Di sebagian besar bahasa pemrograman, Anda dapat mengatur seed ini. Misalnya, C menggunakan
srand()
. Jika Anda tidak menentukan seed tertentu untuk memulai, biasanya nilai cap waktu digunakan sebagai seed. Dengan begitu, setiap kali Anda berlari, angka acak berbeda.Seperti yang Anda lihat, setiap kali Anda seed dengan nilai tertentu (saya menggunakan 1 sebagai seed), angka acak yang dihasilkan adalah sama.
Bagaimana Anda membuat dunia minecraft berdasarkan nomor acak? Notch memiliki pos tentang ini. Anda juga dapat melihat tutorial orang lain tentang "dunia mirip minecraft". Saya menikmati yang ini, misalnya: rendering mirip Minecraft di OpenGL 4 . Ide dasarnya adalah menggunakan Perlin noise (atau simplex noise). Berikut adalah pertanyaan bagus tentang fungsi kebisingan: Memahami Perlin Noise
sumber