Prosedürel nesil -Procedural generation

Prosedürel oluşturmanın bir örneği, burada gerçekçi görünen ağaç modelleri oluşturmak için L sistemlerini kullanıyor . Hem deterministik parametreler hem de rastgele bir tohum değiştirilerek farklı modeller üretilebilir.

Bilgi işlemde , prosedürel üretim (bazen proc-gen olarak kısaltılır ) , tipik olarak bilgisayar tarafından oluşturulan rastgelelik ve işlem gücü ile birleştirilmiş insan tarafından oluşturulan varlıklar ve algoritmaların bir kombinasyonu yoluyla, manuel olarak değil algoritmik olarak veri oluşturma yöntemidir . Bilgisayar grafiklerinde , genellikle dokular ve 3B modeller oluşturmak için kullanılır . Video oyunlarında, bir oyunda otomatik olarak büyük miktarda içerik oluşturmak için kullanılır. Uygulamaya bağlı olarak, prosedürel oluşturmanın avantajları arasında daha küçük dosya boyutları, daha büyük miktarda içerik ve daha az tahmin edilebilir oyun için rastgelelik yer alabilir. Prosedürel üretim, medya sentezinin bir dalıdır .

genel bakış

Terragen'de işlenen prosedürel bir manzara

Prosedürel terimi, belirli bir işlevi hesaplayan süreci ifade eder. Fraktallar , genellikle prosedürel olarak üretilebilen geometrik desenlerdir. Sıradan prosedürel içerik, dokuları ve kafesleri içerir . Ses genellikle prosedürel olarak da üretilir ve hem konuşma sentezinde hem de müzikte uygulamaları vardır. " Üretken müzik " terimini popülerleştiren Brian Eno gibi sanatçılar tarafından çeşitli elektronik müzik türlerinde besteler oluşturmak için kullanılmıştır .

Prosedürel olarak oluşturulmuş dokular .

Yazılım geliştiricileri yıllardır prosedürel üretim tekniklerini uygularken, çok az ürün bu yaklaşımı kapsamlı bir şekilde kullandı. Prosedürel olarak oluşturulmuş öğeler daha önceki video oyunlarında ortaya çıktı: The Elder Scrolls II: Daggerfall, Britanya Adaları'nın gerçek boyutunun kabaca üçte ikisini veren, çoğunlukla yöntemsel olarak oluşturulmuş bir dünyada geçiyor . Raven Software'den Soldier of Fortune, düşman modellerini detaylandırmak için basit rutinler kullanırken, devamında rastgele oluşturulmuş bir seviye modu bulunuyordu . Avalanche Studios, Just Cause için geniş ve çeşitli ayrıntılı tropik adalar grubu oluşturmak için prosedürel oluşturmayı kullandı . Oyun stüdyosu Hello Games tarafından geliştirilen bir oyun olan No Man's Sky , tamamen prosedürel olarak oluşturulmuş öğelere dayanmaktadır.

Modern demoscene, çok sayıda görsel-işitsel içeriği nispeten küçük programlara paketlemek için prosedürel oluşturmayı kullanır.

IEEE Hesaplamalı Zeka ve Oyunlar Konferansı ve AAAI Yapay Zeka ve Etkileşimli Dijital Eğlence Konferansı gibi konferanslarda her yıl yeni yöntemler ve uygulamalar sunulmaktadır .

Özellikle, yüksek düzeyde yeniden oynanabilir olması amaçlanan video oyunlarıyla yöntemsel oluşturma uygulamasında, yöntemsel sistemlerin keşfedilecek sonsuz sayıda dünya üretebileceğine, ancak bunlara rehberlik edecek yeterli insan rehberliği ve kuralları olmadan sahip olabileceğine dair endişeler vardır. Sonuç, yazar Kate Compton tarafından icat edilen bir terim olan "prosedürel yulaf ezmesi" olarak adlandırıldı, çünkü prosedürel üretimle matematiksel olarak binlerce kase yulaf ezmesi üretmek mümkün olsa da, bunlar kullanıcı tarafından aynı olarak algılanacak ve eksik olacak. prosedürel bir sistemin hedeflemesi gereken algılanan benzersizlik kavramı.

Çağdaş uygulama

Masaüstü rol yapma oyunları

Oyunlarda prosedürel nesil kullanmanın kökenleri masa üstü rol yapma oyunu (RPG) mekanındaydı. Önde gelen masa üstü sistem Advanced Dungeons & Dragons , "zindan ustasına" rastgele kalıp rulolarını kullanarak zindanlar ve arazi oluşturma yolları sağladı ve sonraki sürümlerde karmaşık dallanma prosedürel tablolarla genişletildi. TSR lisansı altındaki Strategic Simulations , yayınlanan bu tablolara dayalı olarak zindanlar oluşturan bir bilgisayar programı olan Dungeon Master's Assistant'ı piyasaya sürdü . Flying Buffalo tarafından yayınlanan Tunnels & Trolls , öncelikle tek başına oyun etrafında tasarlandı ve zindanları için benzer prosedürel nesil kullandı. Diğer masa üstü RPG'ler, çeşitli dünya unsurları için prosedürel üretimde benzer kavramları ödünç aldı.

Dungeon Masters için birçok çevrimiçi araç, artık prosedürel oluşturmayı farklı derecelerde kullanıyor.

Video oyunları

Erken tarih

NetHack video oyununda prosedürel olarak oluşturulmuş bir zindan haritası

Grafik yönelimli video oyunlarından önce, solitaire oyunu için benimsenen Dungeons & Dragons'tan doğrudan ilham alan bir tür olan roguelike oyunlar , masa üstü sistemlerin yaptığı gibi prosedürel nesilden yoğun bir şekilde yararlanıyordu. Bu tür ilk oyunlar arasında Beneath Apple Manor (1978) ve türün adaşı Rogue (1980) yer alır. Roguelike'lerdeki prosedürel üretim sistemi, ASCII'de zindanlar veya normal karo tabanlı sistemler yaratır ve oyuncuya meydan okumak için odalar, koridorlar, canavarlar ve hazineler tanımlar. Roguelike'lar ve roguelike konseptlerine dayalı oyunlar, bir oyun dünyasını yaratmak için aşırı zaman harcamak zorunda kalmadan karmaşık oynanışın geliştirilmesine olanak tanır.

1978'de Atari VCS için Maze Craze, her oyun için rastgele, yukarıdan aşağıya bir labirent oluşturmak için bir algoritma kullandı.

Bazı oyunlar sözde rasgele sayı üreteçleri kullandı . Bu PRNG'ler , önceden hazırlanmış gibi görünen çok büyük oyun dünyaları oluşturmak için genellikle önceden tanımlanmış çekirdek değerlerle kullanıldı . Sentinel'in yalnızca 48 ve 64 kilobaytlarda depolanan 10.000 farklı düzeyi olduğu varsayılıyor. Uç bir örnek , başlangıçta her biri 256 güneş sistemi olan toplam 2 48 (yaklaşık 282 trilyon) galaksi içermesi planlanan Elite idi. Ancak yayıncı, bu kadar devasa bir evrenin oyuncularda güvensizliğe neden olacağından korkuyordu ve son versiyon için bu galaksilerden sekizi seçildi. Diğer dikkate değer erken örnekler arasında , yabancı bir gezegenin sarp dağlarını gerçek zamanlı olarak prosedürel olarak oluşturmak için fraktalları kullanan 1985 oyunu Rescue on Fractalus ve lineer bir geri bildirim kaydırma yazmacı tarafından oluşturulan sözde rasgele bir sayı dizisini kullanan 1982 Activision oyunu River Raid yer alır. kayan bir engel labirenti oluşturmak için.

modern kullanım

Modern bilgisayar oyunları, önceki oyunların sahip olduğu aynı bellek ve donanım kısıtlamalarına sahip olmasa da, her oyunda benzersiz olan rastgele oyunlar, haritalar, seviyeler, karakterler veya diğer yönler oluşturmak için prosedürel oluşturma kullanımı sıklıkla kullanılır.

2004 yılında, bir Alman demo grubu tarafından .kkrieger adlı bir PC birinci şahıs nişancı piyasaya sürüldü. Tamamı , çalıştırıldığında yüzlerce megabayt 3B ve doku verisi oluşturan Microsoft Windows için yürütülebilir 96 kilobaytlık bir dosyada bulunur . Programcılardan birine göre, "oyun tarafı söz konusu olduğunda tam bir başarısızlıktı (çoğunlukla dahil olan hiç kimse bu yönü gerçekten çok önemsemediği için)."

Naked Sky'ın RoboBlitz'i, Xbox Live Arcade için 50 MB'tan daha az indirilebilir bir dosyada içeriği en üst düzeye çıkarmak için prosedürel oluşturmayı kullandı . Will Wright'ın Spore'u da yöntemsel sentezden yararlanır.

Prosedürel nesil, genellikle aksiyon rol yapma oyunları ve devasa çok oyunculu çevrimiçi rol yapma oyunları gibi görev odaklı oyunların yağma sistemlerinde kullanılır . Görevler sabit ödüller sunsa da, oyuncu karakterinin düzeyine, görevin düzeyine, görevdeki performanslarına ve diğer rastgele faktörlere bağlı olarak oyuncu için silahlar ve zırh gibi başka ganimetler üretilebilir. Bu genellikle, prosedürel üretim sistemi ortalamadan daha iyi niteliklere sahip bir öğe ürettiğinde yansıtmak için uygulanan bir nadirlik kalitesine sahip ganimetlere yol açar. Örneğin, Borderlands serisi, bir milyondan fazla benzersiz silah ve başka ekipman yaratabilen prosedürel üretim sistemine dayanmaktadır.

Birçok açık dünya veya hayatta kalma oyunu, rastgele bir tohumdan veya oyuncu tarafından sağlanan bir oyun dünyasından prosedürel olarak bir oyun dünyası yaratır, böylece her oyun farklı olur. Bu üretim sistemleri, kaynakların, nesnelerin ve yaratıkların dağılımıyla çok sayıda piksel veya voksel tabanlı biyom oluşturur . Oyuncu, bir dünyadaki su kapsamı miktarını belirlemek gibi bazı üretim parametrelerini sık sık ayarlama yeteneğine sahiptir. Bu tür oyunlara örnek olarak Dwarf Fortress ve Minecraft verilebilir .

Prosedürel nesil, uzay keşfi ve ticaret oyunlarında da kullanılır. Elite: Dangerous , dünya temeli olarak Samanyolu Galaksisinin bilinen 400 milyar yıldızını kullanarak , bu güneş sistemlerindeki gezegenleri simüle etmek için prosedürel üretimi kullanır. Benzer şekilde, Star Citizen, el yapımı evreni arasında sorunsuz bir şekilde yüklenen gezegen boyutunda gezegenlerden oluşan bir koleksiyon oluşturmak için gezegenleri için teknolojiyi kullanıyor. I-Novae Infinity, oyuncunun uzay gemileri aracılığıyla aralarında seyahat edebileceği, prosedürel olarak oluşturulmuş çok sayıda gezegen içerir. Outerra Anteworld, Dünya gezegeninin gerçek ölçekte sanal bir kopyasını oluşturmak için prosedürel oluşturma ve gerçek dünya verilerini kullanan, geliştirilmekte olan bir video oyunudur.

No Man's Sky , prosedürel nesil kullanarak, tüm galaksilerde 18 kentilyon tam boyutlu gezegenden oluşan bir evren içeren tarihin en büyük video oyunudur ve bu galaksiler santim santim uçuş sırasında veya bir sonraki uçuştan sonra yürüyerek keşfedilebilir. iniş. Gezegenlerin hepsinin kendine özgü çeşitlilikte arazisi, hava durumu, florası ve faunasının yanı sıra uzay yolculuğu yapan bir dizi yabancı türü vardır. Aynı içerik, tüm oyuncular için aynı yerlerde bulunur ( belirleyici motorlarına tek bir rastgele tohum numarası sayesinde

Film

Video oyunlarında olduğu gibi, görsel olarak ilginç ve doğru alanları hızlı bir şekilde oluşturmak için filmde prosedürel oluşturma sıklıkla kullanılır. Bu, çok çeşitli uygulamalarda gelir.

Bir uygulama , sanatçıların hızla birçok benzer nesneyi oluşturabildiği kusurlu fabrika olarak bilinir . Bu, gerçek hayatta hiçbir iki nesnenin asla tam olarak aynı olmadığı gerçeğini açıklar. Örneğin, bir sanatçı bir bakkal rafı için bir ürün modelleyebilir ve ardından rafı dolduracak birçok benzer nesne üretmek için kusurlu bir fabrika yaratabilir.

MASSIVE , film ve televizyon için kalabalıkla ilgili görsel efektler oluşturmak için kullanılan üst düzey bir bilgisayar animasyonu ve yapay zeka yazılım paketidir. Peter Jackson'ın Yüzüklerin Efendisi filmleri için otomatik olarak yüzbinlerce askerden oluşan savaş orduları oluşturmak için geliştirilmiştir .

Tutarlı gürültü, filmdeki prosedürel iş akışı için son derece önemli olabilir. Tek yönlü gürültü genellikle daha az yapıyla daha hızlıdır, ancak Perlin gürültüsü adı verilen daha eski bir işlev de kullanılabilir. Tutarlı gürültü, bu durumda, n boyutta düzgün sözde rastgelelik oluşturan bir işlevi ifade eder .

Ayrıca bakınız

Referanslar

daha fazla okuma