Medan prosedural dalam 3D: apa yang telah dilakukan? Apakah ada algo dan / atau teori umum tentang hal itu? [Tutup]

10

Selain pemrograman, memodelkan lingkungan membutuhkan banyak waktu.

Saya tidak tahu tentang waktu kerja yang terlibat, misalnya, di level WoW dungeon, atau kota yang indah, lingkungan masa depan, hutan, fantasi, dll., Tetapi jenis pekerjaan ini dibuat dari awal oleh seniman.

Apa saja teknik yang terlibat dalam randomizer level TorchLight, dan apakah judul lain memiliki kesamaan dengan ini? Apakah ada nama keluarga untuk teknik seperti itu?

jokoon
sumber
Saya pikir peta Torchlight adalah 2D, dengan grafik 3D. Saya tidak ingat memiliki area peta 3D seperti WoW's Blackrock Spire, di mana terowongan berada di atas atau di bawah satu sama lain. Anda mungkin dapat menggunakan generator ruang bawah tanah 2D dari Roguelikes ( pcg.wikidot.com/pcg-algorithm:dungeon-generation ).
amitp
Referensi yang menyenangkan, demo 4 KB ini: youtube.com/watch?v=_YWMGuh15nE
Oskar Duveborn
Pembuatan ruang bawah tanah 2D telah dibahas di gamedev.stackexchange.com/questions/2663/… .

Jawaban:

8

Roguelikes telah melakukan hal semacam ini sejak ditemukan, dan mereka adalah "seed" Torchlight (dan Diablo) mendapatkan ide-ide mereka.

Saya tidak tahu tentang Torchlight secara khusus, tetapi secara umum, apa yang Anda cari disebut "Generasi Tingkat Prosedural".

Fuel secara prosedural menghasilkan zona yang sangat tebal sehingga tidak muat di DVD game. Saya sangat menikmati membaca seri Shamus Young .

Contoh lain yang menarik dari konten yang dihasilkan secara prosedural adalah game Introversi yang belum dirilis, yang disebut Subversion . Lihat Bagian 12 pada halaman itu; itu sangat menarik.

Berbicara tentang kota yang dihasilkan secara prosedural, ada juga beberapa middleware di sekitar - lihat http://www.procedural.com/ .

Untuk lebih banyak game / middleware, lihat halaman Wikipedia Generasi Prosedural dan Wiki Generasi Prosedural .

egarcia
sumber
2

(Dikutip Link dalam tautan pastebin: http://pastebin.com/PpJknMuT )

Bisa dibilang ada 2 macam. Tergantung apa yang Anda inginkan. Sebagai contoh jika kita mengambil game GTA baru-baru ini, 100 seniman digunakan untuk membuat kota dan mempersonalisasikannya. Generasi prosedural dapat digunakan di sini, tetapi akan digunakan sebagai alat artis alih-alih sesuatu yang berjalan pada mesin game karena kami tidak terlalu menginginkan tata kota yang berbeda dengan setiap game.

Jadi disertasi sarjana saya tentang generasi kota prosedural dengan zonasi kota: [1]

Alat ini digunakan oleh seniman untuk membuat kota sementara memungkinkan kontrol atas berbagai aspek jika mereka membutuhkannya. Generasi kota mirip dengan L-sistem seperti yang terlihat oleh karya Pascal Mueller: [2] Zonasi kota berfungsi sebagai peta gambar yang mengambil probabilitas zona (komersial, perumahan, industri) dari data pixel rgb. Dimungkinkan untuk mengotomatiskan generasi jika Anda menginginkannya, tetapi untuk membuat kota-kota terlihat dapat dipercaya algoritme harus jauh lebih kompleks menggunakan mekanika populasi AI daripada L-System dan algoritma noise.

Generasi cepat dapat dilihat pada [3] atau saya kira contoh paling sederhana adalah helikopter: [4]

Sesuatu yang mirip dengan Torchlight adalah Infinity: Quest for Earth [5]

Di Infinity, galaksi dan segala yang ada di dalamnya dihasilkan dengan nilai seed yang kemudian menciptakan semua variabel lain yang digunakan untuk menghasilkan semua yang terkandung dalam galaksi (planet, matahari, dll.) Tautan ini berbicara tentang cara kerjanya secara lebih rinci.

Sycren
sumber
Ya, saya mengerti: seseorang tidak selalu ingin memiliki level acak dengan generasi dari sebuah seed atau lainnya. Masalahnya, hal yang kita inginkan untuk dilakukan oleh generasi level adalah hanya untuk memudahkan pekerjaan seorang desainer level sehingga dia tidak perlu membuat segalanya dengan maya atau maks. Level generation tidak selalu dirancang untuk hanya menghasilkan level, itu juga dapat membuat perangkat lunak menghasilkan potongan geometri dengan cepat, alih-alih memimpin file besar yang berisi semua geometri, seperti peta ketinggian, tetapi untuk set level tertentu, seperti hutan, kantor, atau kota: Kami hanya meminta artis untuk melakukan tekstur dan beberapa
jokoon
dan beberapa potongan umum geometri yang ingin kami ulangi. Saya tidak berbicara tentang level prosedural saja, tetapi untuk dunia besar besar, ini adalah suatu keharusan untuk menghemat memori.
jokoon
Lingkungan permainan seperti apa yang Anda inginkan? Maksud saya jika Anda memiliki kota maka hanya bangunan yang akan diulang dalam orientasi yang berbeda .. Bentang alam seperti yang Anda katakan jauh lebih mudah dihasilkan dengan cepat .. Ini benar-benar tergantung pada permainan yang ingin Anda buat, jadi apakah itu seperti Morrowind / Oblivion atau GTA atau yang lainnya?
Sycren
1

Minecraft menggunakan noise Perlin 2D untuk menghasilkan medan luar. Ini bisa memiliki level yang hampir tak terbatas (Anda akan mati karena usia tua sebelum mencapai tepi) yang dihasilkan saat pemain menjelajah. Itu (mungkin) juga menggunakan noise 3D Perlin untuk menghasilkan gua bawah tanah.

pengguna253751
sumber
Secara teknis ujung dunia Minecraft tidak dapat dijangkau - karena Anda mendapatkan sekitar sepertiga (IIRC) dari perjalanan ke sana, gim ini mulai menangkap dan menghemat setiap detik dan tidak dapat dimainkan. ;-)
Bebek Komunis
-1

Apa saja teknik yang terlibat dalam randomizer level TorchLight.

Mereka hanya akan menjadi angka acak yang dimasukkan ke dalam algoritma level di sana.

dan apakah judul lain memiliki kesamaan dengan ini?

Wikipedia .

Meskipun debatable Left 4 Dead menggunakan teknik serupa di sana AI Director.

Apakah ada nama keluarga untuk teknik seperti itu?

Fraktal, Rekursi, sistem-L dan algoritma lama yang sederhana. Masing-masing dikombinasikan dengan angka acak.

PhilCK
sumber