“Dinamik üretim” ve “prosedürel üretim” arasındaki fark nedir?


15

Dinamik olarak oluşturulmuş bir oyun düşündüğümde, rastgele oluşturulan seviyeleri olan Diablo gibi şeyleri düşünüyorum. Prosedürel olarak oluşturulmuş bir oyun düşündüğümde, Flappy Bird ve diğer sonsuz koşucular gibi şeyleri düşünüyorum.

Ancak bunların her ikisi de bir seviyeyi rastgele seçer. Prosedürel olarak üretilen oyunların sürekli üretildiği ve dinamik olarak üretilen oyunların hepsi ön tarafta mı üretildi? Yoksa bu terimler değiştirilebilir mi?

Dinamik olarak oluşturulmuş bir oyun ile prosedürel olarak oluşturulmuş bir oyun arasındaki fark nedir ?

Yanıtlar:


21

"Yordamsal" bazı algoritmaların içeriği oluşturduğu anlamına gelir. Bu, bir insan tarafından elle oluşturulan içeriğe karşıdır.

"Dinamik", içeriğin zaman içinde değiştiği anlamına gelir. Bu, oluşturulduktan sonra değişmeyen "statik" içeriğe veya yalnızca anahtar çerçeveli karakter animasyonu gibi önceden tanımlanmış şekillerde değişikliklere karşıdır.

Ayrıca, oyuncu tarafından oluşturulan oyun içeriğiniz de olabilir. Bu, oyuncuların oyunu modifiye etmek için harici araçlar kullanmak yerine oyun sırasında seviyeleri veya oyunu değiştirmelerini sağlayan bir oyun özelliğidir. Sonraki birkaç paragraf uğruna, oynatıcı tarafından oluşturulan içerikten bahsetmediğimizi varsayıyorum.

Hiçbir zaman değişmeyen bir şey üretmek için kodu kullanabilirsiniz; bu tür içerik prosedürel olmasına rağmen statik değildir ve dinamik değildir. Tüm dinamik içerik yordamsaldır, ancak tüm prosedür içeriği dinamik değildir.

Manuel, yordamsal, statik ve dinamik içeriği de her şekilde karıştırabilirsiniz. Örneğin, bir sanatçı manuel olarak bir bina modeli oluşturabilir, model için çeşitli doku haritalarını prosedürel olarak oluşturmak için bir araç kullanabilir ve daha sonra binayı dinamik olarak yok etmek ve oyun sırasında statik kalıntıları ortaya çıkarmak için fizik veya oyun sistemleri için veri ayarlayabilir.

Not : bu tanımlar resmi değildir . Sonsuza dek bu kelimelerle ilgili anlambilim tartışabilirsiniz. Muhtemelen bu kelimelerin farklı tanımlarına sahip insanlarla karşılaşırsınız ve hiçbirimiz mutlaka yanlış olmaz. Teknoloji jargonu bile biz programcı tiplerinin tercih ettiğimizden çok daha akıcı. :)


1
"Tüm dinamik içerik prosedüreldir" - Diğer oyuncuların eylemlerinden oluşturulan içerik ne olacak? Örneğin Eve Online'da tamamen oyuncu yapımı olan sürekli değişen yörünge karakolları var.
Mołot

1
@ Moo: ve son paragrafımın ilk örneği var. :) Sanırım bu cevap için geliştirici tarafından yayınlanan içeriği gerçekten düşünüyordum ve geliştirici ile oynatıcı tarafından oluşturulan içeriğin dinamik / statik veya manuel / prosedür dışında bir başka eksen olduğunu düşünebilirsiniz. Örneğin, birçok oyunda, oyuncular bir bina modunda yapılar inşa edebilir, ancak harita oyunun geri kalanı için statiktir, böylece statik oynatıcı tarafından oluşturulan içeriğe sahip olabilirsiniz. Ama yine de, terminoloji konusunda aşırı derecede özel değilim. :)
Sean Middleditch

4

"Dinamik"

"(bir süreç veya sistemin) sürekli değişim, aktivite veya ilerleme ile karakterize edilir."

(google diyor.)

Bu iki terimi birbirinden ayırmak için, tam zamanında, anında oynarken "dinamik nesil" anlamı "ile giderdim" ...

"Prosedürel üretim", algoritmik olarak üretilen, yani önden ya da anında.


1
İlk düşüncemin tam tersi mi?
Evorlor

2
@Evorlor: Bunu söylerdim. "Yordamsal" sadece bazı algoritmaların içeriği oluşturduğu anlamına gelir. "Dinamik", içeriğin zaman içinde değiştiği anlamına gelir. Kodu yalnızca bir kez oluşturmak için kullanabilirsiniz, böylece statik değil dinamik olur. Tüm dinamik içerik yordamsaldır, ancak tüm prosedür içeriği dinamik değildir. İkisini de her türlü şekilde karıştırabilirsiniz; örneğin, yordamsal olarak kendisini statik içerikle dolduran dinamik bir seviye. :)
Sean Middleditch

@SeanMiddleditch cevaplamak için lütfen dönüştürün :-)
Evorlor

@Evorlor: bitti, ama david van brink'in zaten yaptıklarından daha fazlasını söylediğimden emin değilim.
Sean Middleditch

@SeanMiddleditch belki değil, ama açıklamanız bana daha açıktı. Teşekkürler!
Evorlor

1

İşte kısa bir genel bakış.

  • Dinamik Nesil

'Dinamik' kelimesi değişmek demektir. 'Nesil' kelimesi şeylerin yaratılması anlamına gelir, dolayısıyla 'dinamik nesil' nesli değiştirir. Bu nedenle 'dinamik üretim' sürekli değişen içeriği ifade eder.

  • Usul Üretimi

'Prosedürel' kelimesi, bir insan değil, bir bilgisayar algoritması tarafından oluşturulan içeriği ifade eder. Oluşturduğumuz gibi 'nesil' yaratma anlamına gelir, bu nedenle 'prosedürel nesil' bir bilgisayar algoritması yoluyla üretilen içeriği ifade eder.

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.