Prosedürel araziler 3B: ne yapıldı? Bununla ilgili ortak algo ve / veya teoriler var mı? [kapalı]


10

Programlamanın yanı sıra, bir ortamı modellemek çok zaman alır.

Örneğin, bir WoW zindan seviyesinde ya da diğer güzel şehir benzeri, gelecekteki çevre, ormanlar, fantezi vb.

TorchLight seviye randomizatörüne dahil olan teknikler nelerdir ve diğer başlıkların bununla benzerlikleri var mı? Bu tekniklerin soyadı var mı?


Bence Torchlight'ın haritaları 2D, 3D grafikler. WoW'un Blackrock Spire gibi tünellerin birbirinin üstüne veya altına gittiği 3D harita alanlarına sahip olduğunu hatırlamıyorum. Muhtemelen Roguelikes'den 2D zindan jeneratörlerinden herhangi birini kullanabilirsiniz ( pcg.wikidot.com/pcg-algorithm:dungeon-generation ).
amitp

Eğlenceli referans, bu 4 KB demosu: youtube.com/watch?v=_YWMGuh15nE
Oskar Duveborn

2D zindan üretimi zaten gamedev.stackexchange.com/questions/2663/… adresinde ele alınmıştır .

Yanıtlar:


8

Roguelikes icat edildiğinden beri bu tür bir şey yapıyorlar ve onlar da "tohum" Torchlight (ve Diablo) 'dan fikirlerini aldılar.

Özellikle Torchlight'ın özelliklerini bilmiyorum, ancak genel olarak aradığınız şeye "Prosedür Seviyesi Üretimi" denir.

Yakıt prosedürel olarak o kadar öfkeli bir bölge üretir ki oyunun geldiği DVD'ye sığmaz. Özellikle Shamus Young'ın dizisini okumaktan zevk aldım .

Prosedürel olarak oluşturulan içeriğin bir başka ilginç örneği, Introversion'un Subversion adı verilen henüz yayınlanmamış oyunudur . Bu sayfada Bölüm 12'ye bakın; özellikle sulu.

Prosedürel olarak oluşturulmuş şehirler hakkında konuşmak gerekirse, bazı ara katman yazılımları da var - http://www.procedural.com/ adresini ziyaret edin .

Daha fazla oyun / ara katman yazılımı için Yordam Üretimi Wikipedia sayfasına ve Yordam Üretimi Wiki'sine bakın .


2

(Hamur bağlantısında atıf yapılan bağlantılar: http://pastebin.com/PpJknMuT )

2 çeşit olduğunu söyleyebiliriz. Ne istediğine bağlı. Örneğin, yakın zamanda bir GTA oyunu alırsak, şehri yapmak ve kişiselleştirmek için 100'den fazla sanatçı kullanıldı. Prosedür oluşturma burada kullanılabilir, ancak her oyunda özellikle farklı bir şehir düzeni istemediğimiz için oyun motorunda çalışan bir şey yerine bir sanatçı aracı olarak kullanılır.

Bu yüzden lisans tezim şehir imarıyla prosedürel şehir üretimi üzerineydi: [1]

Bu araç, sanatçı tarafından bir şehir oluşturmak için kullanılırken, ihtiyaç duymaları halinde farklı yönleri kontrol etmeyi sağlar. Şehir kuşağı, Pascal Mueller'in çalışmasıyla görülen L sistemlerine benzer: [2] Şehir imar, piksel rgb verilerinden bölgelerin (ticari, konut, endüstriyel) olasılıklarını alan bir görüntü haritası olarak çalışır. İsterseniz jenerasyonu otomatikleştirmek mümkün olabilir, ancak şehirleri inandırıcı görünmesi için algoritmanın L-Sistemi ve gürültü algoritmaları yerine popülasyon AI mekaniği kullanılarak çok daha karmaşık olması gerekir.

Sinek kuşağında [3] görülebilir veya sanırım en basit örnek helikopter olurdu: [4]

Torchlight'a benzer bir şey Infinity: Quest for Earth [5] olurdu.

Infinity'de galaksi ve içindeki her şey, daha sonra galakside bulunan her şeyi (gezegenler, güneşler vb.) Üretmek için kullanılan diğer tüm değişkenleri yaratan bir tohum değeri ile üretilir. Bağlantı, bunun nasıl daha ayrıntılı çalıştığından bahseder.


Evet, anlıyorum: bir tohumdan ya da başka bir üründen her zaman rastgele seviyelere sahip olmak istemezdim. Mesele şu ki, seviye üretiminin yapmasını istediğimiz şey, sadece bir seviye tasarımcısının işini kolaylaştırmaktır, böylece maya veya max ile her şeyi yapmak zorunda kalmazdı. Seviye üretimi her zaman sadece seviyeler oluşturmak için tasarlanmamıştır, aynı zamanda bir yükseklik haritası gibi tüm geometrileri içeren büyük bir dosyaya yönlendirmek yerine yazılımın anında geometri parçaları oluşturmasını sağlayabilir, ancak orman, bir ofis ya da bir şehir: Biz sadece sanatçıdan dokuları ve bazılarını
yapmasını

ve tekrarlamak istediğimiz bazı ortak geometri parçaları. Sadece prosedürel düzeylerden bahsetmiyorum, ama büyük büyük dünya için, hafızadan tasarruf etmek için bu bir zorunluluktur.
jokoon

Ne tür bir oyun ortamı istiyorsunuz? Eğer bir şehir varsa, o zaman sadece binalar farklı yönlerde tekrar olurdu .. manzaralar anında üretmek için çok daha kolay dediğim gibi .. Bu gerçekten yapmak istediğiniz oyuna bağlıdır, yani böyle bir şey olurdu Morrowind / Oblivion veya GTA ya da başka bir şey?
Sycren

1

Minecraft , dış mekan arazisi oluşturmak için 2D Perlin gürültüsünü kullanır. Oyuncular keşfettikçe üretilen neredeyse sonsuz seviyelere sahip olabilirsiniz (kenara çıkmadan önce yaşlılıktan ölürdünüz). Muhtemelen yeraltı mağaraları oluşturmak için 3D Perlin gürültüsü kullanır.


Teknik olarak Minecraft dünyasının kenarına ulaşılamaz - orada yolun yaklaşık üçte birini (IIRC) elde ettiğinizde, oyun yakalamaya başlar ve her saniyeyi kaydeder ve oynanamaz. ;-)
Komünist Ördek

-1

TorchLight seviye randomizatörüne dahil olan teknikler nelerdir.

Onlar sadece seviye algoritmaları içine koymak rastgele sayılar olacak.

ve diğer başlıkların bununla benzerlikleri var mı?

Wikipedia .

Tartışmalı Left 4 Dead, AI Director'da benzer teknikler kullanmasına rağmen.

Bu tekniklerin soyadı var mı?

Fraktallar, Özyineleme, L sistemleri ve düz eski algoritmalar. Her biri rastgele sayılarla birleştirildi.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.