Video oyunu fiziği, sıklıkla kabul ettiğimiz bir şeydir. Avatarınızı atlarsanız, aşağı inmesini ve uzaya ateş etmemesini beklersiniz. Yine de, Skyrim'i yeterince uzun süre oynadıysanız, bunun yine de olabileceğini biliyorsunuz. Bununla birlikte, gerçek dünyayı taklit etmeyen aksaklıklar, tuhaflıklar veya kasıtlı oyun fiziğinin yanı sıra oyun içi nesnelerin mantıklı bir şekilde davranmasını bekliyoruz, bu nedenle bu yasaların pişirilmesi gerektiği gerçeğini düşünmüyoruz oyuna.
Fiziği bir oyuna programlamak, her biri birkaç satır kod içeren bir veya iki rutin kadar basit veya tamamen ayrı bir fizik motoru gerektirecek kadar karmaşık olabilir. Havok or PhysX milyonlarca kod satırı ile. Karmaşıklıktan veya oyun motorunun hesaplamaları işlemek için ara katman yazılımı gerektirip gerektirmediğine bakılmaksızın, oyun fiziği iki geniş kategoriye ayrılır - katı gövde ve yumuşak gövde.
Katı cisim fiziği genellikle katı bir cisme etkiyen kuvvetler olarak tanımlanır. Çoğu 2D ve 3D oyun için gereklidir. Yumuşak vücut fiziği, bir bayrak gibi deforme olabilen bir kütleye fiziksel kuvvetler uyguluyor. Yumuşak vücut simüle etmek çok daha karmaşıktır. Bu nedenle, çok daha az kullanılır ve oyuna bağlı olarak, hiç gerekli olmayabilir.
Bu yazıda, bu iki tür fiziğe biraz daha derinlemesine bakacağız ve video oyunlarında nasıl ve neden kullanıldıklarını araştıracağız. Şimdilik derin teknik dalıştan kaçınacağız, ancak gelecekteki bir taksitte karmaşıklıkları daha da araştırabiliriz.
Oyun Fiziğinin Önemi
Geliştiriciler oyunlarda fiziği çeşitli nedenlerle uygularlar, ancak dikkate alınması gereken en önemli faktör sezgisellik ve eğlenceli faktördür. Bir oyundaki bir nesne tahmin edilebilir bir şekilde davranmazsa, oyuncunun nasıl oynayacağını anlaması zor olur.
Örneğin, bir FIFA 20 maçı başlattıysanız ve top çimin üzerinde rastgele bir yöne çarptığında, sahadan aşağıya ve hedefe nasıl ulaşacağını bulmak imkansız değilse çok zor olurdu. Bu nedenle, oyun yapımcıları topun yörünge, hız ve diğer gerçek dünya faktörlerine göre nasıl sıçrama yapacağını simüle etmeye çalışırlar, böylece oyuncu sezgisel olarak topu veya başka bir nesneyi nasıl manipüle edeceğini bilir. İronik olarak, FIFA 20 acı kötü kullanıcıların bir kısmı tam olarak inceliyor çünkü fiziği hayranların beklediği gibi çalışmıyor.
Ancak bu, oyunların fiziğin doğal yasalarına kesinlikle uyması gerektiği anlamına gelmez. Aslında, çoğu geliştirici eğlence uğruna kuralları bükmektedir. Sonuçta oyun oynamak zevkli olmalı. Fiziksel kuvvetler çok gerçekçi ise, eğlence faktörünü bozabilir. Örneğin, oynamanın nasıl bir şey olacağını hayal edin Büyük Araba Hırsızlığı V affetmez fizik ile - orada bunun için bir mod bu arada.
Yüksek hızda başka bir nesneyle hafif bir çarpışma bile, bir enkaz oyuncunun kaçışını mahveder. Çok eğlenceli değil.
Bu yüzden bir oyunu oynamayı eğlenceli hale getirmek ve fiziksel olarak gerçekçi olmak arasında ince bir çizgi var. Genellikle hedefledikleri demografiye bağlı olan uygun dengeyi bulmak geliştiricilerin sorumluluğundadır. Yarışçılar buna iyi bir örnektir.
Çoğu oyuncu, bir korkuluk kazımak veya çok hızlı bir köşe almak için onları sert bir şekilde cezalandırmayan Need For Speed gibi arcade tarzı yarışçıların tadını çıkarır. Daha küçük bir demografik özellik, Gran Turismo gibi gerçeğe daha yakın olan sim yarış oyunlarını tercih ediyor. Daha küçük bir pazarı tatmin etmek için sims oluştururken bile, oyun üreticileri diğer oyuncuları cezbetmenin bir yolunu bulmak zorundalar, aksi takdirde oyun çok kötü bir performans sergileyecektir. Gran Turismo başlangıçta fotogerçekçilik bir ölçüde çalışan diğer oyuncuları cezbetmek. Yine de, Polyphony Digital sonunda daha geniş bir pazara hitap etmek için seriye bir arcade modu ekledi.
Artık oyun tasarımcılarının neden fizik kullandığını bildiğimize göre, iki türe daha yakından bakalım, nasıl kullanıldıklarına ve geliştiricilerin gerekli hesaplamaların işleme yeteneklerini aşmasını önlemek için neler yaptıklarına bakalım.
Katı Cisim Fiziği
Video oyunu fiziğini düşündüğümüzde, genellikle katı vücut fiziğini (RBP) düşünüyoruz, çünkü bu muhtemelen en önemlisidir ve çoğu oyunun bir şekilde uygulaması gereken bir şeydir. Katı cisim fiziği, katı kütleler üzerindeki fiziksel yasaların simülasyonu ve canlandırılmasıyla ilgilenir. Örneğin, yukarıdaki FIFA 20 kutusundaki top, oyun fiziği tarafından harekete geçirilen sert bir gövdedir.
İster Pong gibi bir 2D oyun, ister Skyrim gibi bir 3D oyun olsun, çoğu video oyunu doğrusal sert vücut fiziği ile ilgilenir.
2D Video Oyun Fiziği
Tekrar tekrar birbirleriyle çarpışan iki sert gövde (top ve kürek) Pong'a kadar gidelim. Gee, bu şekilde koyduğunuzda, kulağa hiç eğlenceli gelmiyor. Video oyunlarının büyükbabası gerçek dünya fiziğini gerçekçi bir şekilde modellemedi. Birincisi, programcıları yerçekimi, sürtünme ve ataleti içeren hesaplamaları görmezden geldi. Sadece sabit bir hızda ileri geri giden bir toptu.
İkincisi, küreklerden topun geri sekme açısı doğru olarak hesaplanmadı. Topun sıçraması yansıma yasasını tamamen görmezden geldi. Bu yasa, spin gibi diğer faktörleri göz ardı ederek, belirli bir açıda bir yüzeye çarpan bir topun eşit bir açıyla geri döneceğini belirtir.
Pong'da yansıma açısı, darbenin kürek merkezine yakın olmasıyla belirlendi. İlk yörüngesinden bağımsız olarak, topun yansıması, raketin merkezinden ne kadar uzağa vurduğuna dayanıyordu. Böylece oyuncular, gelen vektörden bağımsız olarak topun momentumunu tamamen tersine çevirebilirler.
Açısal yörünge, daha sonraki iterasyonlar ve Breakout gibi diğer kürek oyunlarıyla daha fazla devreye girecekti. Bununla birlikte, o zaman bile, sayılar genellikle geçiştirildi. Her şey eğlenceli faktöre geri dönüyor. Sapmayı gerçeğe çok yakın olarak taklit etmek daha az eğlenceliydi ve oynaması daha zordu.
Topçu oyunları, yerçekimi ve direnç gibi faktörleri mekaniğe dahil eden ilk kişilerdi. Hatırlamak için çok genç olanlar için topçu oyunları, oyuncuların sırayla top mermileri, oklar veya rakiplerinin tabanını yok etmeye çalışan diğer mermileri ateşleyeceği yerdi. Bu oyunlar, fırlatma açısı, yerçekimi, rüzgar direnci ve ilk hız gibi şeyleri dikkate alan yarı gerçekçi balistikleri kullandı. Yine, tasarımcılar oyunları çok gerçekçi hale getirmedi. Hedef kitleleri balistik uzmanları değil ortalama bir joe idi.
Topçu oyunlarındaki katı cisimler, özellikle mermiler, çeşitli kuvvetler tarafından harekete geçirildi ve animasyonlar buna göre ayarlandı. Oklar veya füzeler bu oyunlarda katı bir cismi canlandırmanın iyi bir örneğidir. Merminin düzlemi uçuş sırasında değişirken, okun kendisi düz kalır. Arkını tamamladığı için bükülmedi, bu da beklediğimiz şeydi. Bu örnek sezgiselliği nedeniyle aşırı basitleştirilmiş gibi görünebilir, ancak yumuşak vücut dinamiklerinden ayırt ederken anlamak önemlidir. Rijit bir cisim sistemindeki bir cisim üzerindeki herhangi iki nokta daima birbirinden aynı mesafede kalacaktır.
Donkey Kong gibi oyunlar ve daha sonra Mario Bros oyunları, fiziğin 3D oyunları nasıl etkileyeceğine dair sahneyi hazırladı.
İyi tesisatçımız Mario, en eski oyunlarda bile yerçekimi, momentum ve atalet gibi çok genel fiziksel yasalara uydu. Zıplama birincil oyun tamircisiydi ve o zamandan beri asla gitmeyecek bir elyaf haline geldi. Atlama ve yerçekimi ile uğraşırken, sezgisel olarak neyin yukarı çıktığını, aşağı inmesi gerektiğini biliyoruz.
Soru şu ki, ne kadar yükseliyor ve ne kadar hızlı düşüyor? Bu, geliştiricilerin oyun tasarımlarında dikkatle düşünmeleri gereken bir şeydir; Oyunun gerçekliğinin ne kadar gerçek olması gerekir?
Mario gerçek dünya yasalarına uymak zorunda kalsaydı, muhtemelen hiçbir zaman birinci seviyeyi geçemezdi. Bu nedenle, geliştiriciler, oyuncuların Mario'nun dünyasında nasıl davranması gerektiği konusunda sezgisel beklentileri korurken oyunu oynanabilir hale getirmek için bu dengeyi bulmak zorundaydı. Daha sonraki oyunlar çift atlamayı getirerek sınırları daha da gerecekti. Super Mario 64, önceki oyunlarda kullanılmasına rağmen serideki çift atlamayı uygulayan ilk oyundu. Ejderha Avcısı 1984'te.
Çift atlama, oyuncuların boşlukları temizlemek veya çıkıntılara ulaşmak için daha yüksek dikey veya yatay mesafeler atlamasına izin verdi. Oyun tamircisi platformlarda neredeyse aşırı kullanım noktasına kadar popüler oldu. Hala birçok modern platform oyununda bir elyaftır, ancak Devil May Cry ve Unreal Tournament gibi 3D oyunlarda da görülür ve bu da bizi 3D dünyasına getirir.
3D Video Oyun Fiziği
3D oyunlarda kullanılan fizik, geliştiricilerin 2D kuzenlerinde kullandıklarından çok farklı değildir. Daha önce de belirtildiği gibi, bazı 3D oyunlarda çift atlama bile var. Temel fark, üçüncü bir boyuta (z ekseni) eklerken hesaplamaların karmaşıklığı ve birden fazla rijit gövdeden oluşan nesnelerdir.
Çoğu 2D oyunda, geliştiriciler bir seferde sadece birkaç katı nesnenin çarpışmasını tespit etmekle uğraşmak zorundadır. Örneğin, Mario bir Koopa'nın üstüne iniyor. Mario'nun herhangi bir bölümü Koopa'nın herhangi bir bölümüne dokunabilir. Bu temasın nasıl gerçekleştiği, Koopa'nın çarpık olup olmadığını veya Mario'nun hayatını kaybedip kaybetmediğini belirler. Her iki durumda da, bu sadece bir çarpışmadır.
Çoğu 3B başlıkta birbiriyle etkileşen birden fazla katı nesne bulunur. Uncharted serisini örnek olarak alalım. Drake bir uçurum kenarını ölçeklendirdiğinde, program en azından elleri ve ayakları olan, hepsi de katı rijit bedenler olan çarpışmalar arar. Atlar ve sadece bir el bir çıkıntı yakalarsa, animasyon her ikisinin de bağlanmasından farklı olacaktır.
Her uzvun ayrı bir rijit gövde olduğunu söyleyen 3D oyunlar (ve bazı 2D), eklemlerde bir arada tutulan birden fazla rijit gövdeye sahip modellere sahiptir. Başka bir deyişle, bir insan modelinin kolunda, el ve kolun üst koluna bağlı olan bir ön kol bulunabilir. Bu yapıya ve nasıl davrandığına “ragdoll fiziği” denir.
Ragdoll fiziği, hepsi olmasa da, çoğu oyuncu veya NPC modelinde kullanılır. Uzuvları oluşturan çeşitli rijit gövdelerin bağlantıları oyun motorunun iskelet animasyon sistemi. Her katı cisim hareket ederken gerçekçi görünmek için bir dizi kural altında hareket etmelidir.
Bu hareketleri hesaplamak için programcılar çeşitli teknikler kullanırlar. En yaygın olanı Featherstone’un algoritmasıBu, bazen hala komedi etkisine rağmen, uzuvların uçak sahne gibi uçmasını engelleyen kısıtlanmış katı bir vücut yaklaşımıdır.
Ragdoll işleme yaklaşımlarının diğer türleri arasında Verlet entegrasyonu (Hitman: Kod adı 47), ters kinematik (Hale: Gelişen ve Yarı Ömürle Mücadele), harmanlanmış ragdoll (Haritasız: Drakes Fortune ve diğerleri) ve yordamsal canlandırma Onur Madalyası dizisi.
Tüm bu teknikler, bir vücudun çok hızlı gidip eklemleri bu şekilde giderken yere buruşup gitme sorununu çözmeye çalışır ve bunun gibi - bir bez bebek. Bir model oluşturan katı cisimler, oyunun fiziği tamamen gerçekliğe dayanmasa bile, öngörülebilir bir şekilde davranmaları için hareketlerinde kısıtlanırlar.
Tıpkı 2D oyunlarda olduğu gibi oyun yapımcıları da gerçekçilik ve eğlence arasında bir denge bulmak zorunda. Bu nedenle, oyun içindeki fiziksel kuvvetleri hesaplarken, hesaplamalar genellikle tamamen doğru değildir; yani “oyun hileleri”.
Sniper Elite serisini örnek olarak alalım. Gerçek dünyada, askeri keskin nişancılar her şutu saymak zorundadır, bu yüzden bir hedefi sıralarken oldukça az sayıda faktörü göz önünde bulundururlar. Rüzgar hızı, rüzgar yönü, menzil, hedef hareket, serap, ışık kaynağı, sıcaklık, barometrik basınç ve coriolis etkisi sadece gerçek hayattaki çatlak atışlarının konumlarını ve hedeflerini hesaba katmaları gereken bir avuç değişken.
Eğer İsyan otantik bir keskin nişancı simülasyonu yapma yoluna gitmeyi seçerse, oyun çoğu oyuncu için çok zor olmazdı, hesaplamaların sayısı ve dolayısıyla programlama ve işleme gücü önemli ölçüde artardı. Bu değişkenleri kırmak bugünün işlemcileri için vergilendirilmiyor, ancak ortalama bir oyuncu, oynarken bile bu faktörleri hesaplamak istemiyor, hatta onları anlamak bile. Bu nedenle, oyuncunun hedefleri artı işaretlerinde sıraya koymasına ve tercihen bir slo-bullet kamıyla bir vuruş yapmasına izin vermek çok daha basit (ve karlı).
Bu, oyunların keskin nişan almayı daha karmaşık hale getirmeye çalışmadığı anlamına gelmez. Call of Duty: Modern Warfare, uzun mesafeden bir hedef çıkarmayı içeren bir kampanya düzeyine sahiptir. Oynatıcı Coriolis efekti ve rüzgar hızı / yönü ile mücadele etmelidir (yukarıda). Görev sinir bozucu derecede zor, sonunda onu indirip başka bir şey oynadım. Bu, bazı oyuncuların bu meydan okumayı sevmediği anlamına gelmez. Bazıları bunu oyundaki en iyi görev olarak adlandırdı. Bunun için sabrım yok.
Yarışçılar, katı cisimler ve kendilerine uygulanan kuvvetler hakkında birçok hesaplamanın yapıldığı bir başka türdür. Lastik yolla buluşur, şasi tekerleklere bağlanır, arabaları birbirine çarptırır ve diğer birçok katı nesnenin aktif ve pasif olarak çarpışmalara hesaplanması gerekir.
Virajlarda arabaları iten fiziksel kuvvetler, özellikle arcade yarışçılarında genellikle sürüklenir, sürüklenmeyi gerçek hayata kıyasla son derece kolay hale getirir, ancak oyunculara zor bir manevra çıkardıklarında başarı hissi verecek kadar zorlayıcıdır.
Gran Turismo veya Assetto Corsa gibi sim yarışçılarında arabalara etkiyen kuvvetler daha gerçekçi ve arcade yarışçılarının göz ardı ettiği çeşitli faktörleri göz önünde bulunduruyor. Assetto Corsa Competizione (sürüm 1.0.7), örneğin, tanıtılan oyuna beş noktalı bir lastik modeli.
Bu beş noktalı fizik modeli, lastik ayak izinin ön kenarında, ikisi arkada ve biri ortada olmak üzere iki temas noktasından oluşur. Diğer yarışçıların çoğu, her lastik üzerinde tek bir temas noktasına sahiptir. Bölgelerin her biri birbirine bağlı bir rijit cisim görevi görür. Kuvvetlere ve yüzey temasına bağımsız olarak tepki vererek üç boyutta hareket edebilir ve esneyebilirler. Bu sofistike model, otomobiller, örneğin bir kaldırıma çarptığında veya kenara çıktığında çok daha gerçekçi reaksiyonlara izin verir.
Bununla birlikte, ekstra temas fizik motoru tarafından yapılan hesaplamaları önemli ölçüde işaret eder. Neyse ki, ACC’in mühendisleri, hesaplama performansını oyun performansını olumsuz yönde etkileyecek kadar arttırmadan bunu yapmanın bir yolunu bulmuşlardır.
Muhtemelen anlayacağınız gibi, 3D oyunlardaki fizik modelleri 2D meslektaşlarından çok daha karmaşık olabilir. Fiziği düz bir omurgada tutmak için çok daha fazla değişken ve çarpışma izlenmelidir. Bununla birlikte, çoğu hesaplama hala doğrusaldır ve bu nedenle yumuşak vücut fiziği modellerinden daha basittir.
Yumuşak Vücut Fiziği
Yumuşak vücut fiziği (SBP) deforme olabilen nesnelerle ilgilenir ve RBP'den çok daha karmaşıktır, bu yüzden onu en son olarak kurtardık. Ayrıca, gerçekçi bir şekilde simüle etmesi gereken büyük hesaplama sayısından dolayı, video oyunlarında katı vücut muadilinden daha az kullanılır ve daha basittir. Bu nedenle, video oyunlarındaki tüm yumuşak vücut modelleri, işleme sınırlamaları nedeniyle bir şekilde yönetilebilir bir seviyeye getirilir.
Bazı yumuşak vücut fiziği örnekleri kumaş, saç ve duman veya sis gibi parçacıkların toplanması olabilir. Herhangi iki noktanın birbirinden aynı mesafede kaldığı sert bir gövdeden farklı olarak, yumuşak gövdeler dönüşebilir ve vücuttaki iki noktanın birbirine daha yakın veya daha fazla hareket edebilmesi için hareket edebilir.
Yumuşak Vücut Katıları
Yumuşak bir cisimdeki hareket miktarı üzerinde birçok kısıtlama olabilir veya hiçbiri olamaz. Örneğin, bir bayrağa bakalım. Bayrağın tüm noktaları o bayrağın üzerinde kalmakla sınırlıdır - sadece uzaya uçamazlar. Ancak, bayrak hareket ettikçe, iki nokta arasındaki mesafe değişebilir. Birbirlerine uzağa veya birbirlerine doğru hareket edebildikleri aralık, bayrak düz olduğunda aralarındaki mesafeye bağlıdır.
Başka bir deyişle, bitişik noktalar bitişik kalmakla sınırlandırılırken, uzaktaki noktalar bitişik olacak kadar yakın hareket edebilirler, ancak düz durum aralıklarından daha uzak olamazlar. Sonlu olsa da, bayraktaki tüm noktaların yapılandırma sayısı hala şaşırtıcıdır.
Bir SBP modeli kullanarak bir dalgalanan bayrağı simüle etmek için gereken hesaplamalar, tek işlemcili CPU'ların ve GPU'ların yeteneklerini fazlasıyla aşmaktadır. Bu nedenle, geliştiriciler genellikle rüzgarda esen bir bayrağın rastgele hareketini taklit etmek için kısayollara güvenir. Manuel bir döngü animasyonu basit bir yöntemdir, ancak bir süre sonra konserve görünebilir, bu nedenle en iyi bayrak dikkatin merkezi olmadığı yerlerde kullanılır.
Giyim, yumuşak vücut özelliklerinde bir bayrakla neredeyse aynı olsa da, hem oyuncu için bir odak noktası olduğu hem de oyuncu girişi açısından genellikle daha dinamik olduğu için fizik uygulamak daha zordur. Batman’ın Arkham oyunlarındaki pelerinleri mükemmel bir örnek.
Tasarımcılar Batman'ın pelerini için döngüsel animasyonlar kullanamazlar çünkü dönüşümü oyuncunun nasıl hareket ettiğine bağlıdır. Sadece bir bayrak gibi rastgele dolaşamaz çünkü doğru görünmez. Oyuncu sola hareket ederse, pelerin, üzerine etkiyen atalet ve hava direncini gerçekçi bir şekilde simüle etmek için sağa hareket etmesi gerekir.
Bu karmaşık değişkenlerle başa çıkmak için, oyun yapımcıları, kendileri için iş yapmak için fizik motorları kullanırlar. Batman'da: Arkham Knight, geliştirici Rocksteady APEX Cloth PhysX'i kullandı. Bu araç, tasarımcıların bez gövdeleri için bir maske oluşturmasına ve nasıl hareket etmesi gerektiğine ilişkin parametreleri ayarlamasına olanak tanır. Nasıl yapılandırıldığına bağlı olarak, ipekten çuvallamaya kadar her şey simüle edilebilir.
Parametre ayarları ayrıca programcıların daha iyi performans için kumaş üzerindeki doğal kuvvetleri sınırlamalarına izin verir. Örneğin, "Rüzgar Yöntemi" "Doğru" veya "Eski" olarak ayarlanabilir. Legacy, sürükle ve kaldır özelliğini yok sayar, böylece yapılması gereken hesaplamaları azaltır.
Ek olarak, bir kumaş parçasındaki tüm noktalar faktör değildir. Bunun yerine, bölümler birlikte gruplandırılır ve hesaplanması gereken köşelerin sayısı milyonlardan onbinlere indirilir. O zaman bile, bu gruplamaların hepsi gerçek bir yumuşak vücut sisteminde olduğu gibi birbirleriyle etkileşime girmez. Temelde sadece yakın noktalarla etkileşime girerler, bu da yapılan matematiksel hesaplamaların sayısını çok yönetilebilir bir seviyeye getirir.
Yumuşak Vücut Parçacık Sistemleri
Kumaş veya saçın aksine, duman veya bulutlar gibi parçacıklar simüle etmek için çok daha karmaşıktır. Parçacık halindeki bir nesne içindeki herhangi iki nokta doğrusal olmayan bir şekilde hareket edebilir. Yumuşak bedenin sınırlarıyla sınırlandırılmazlar, yani bir veya daha fazla nokta nesnenin sınırları olarak kabul edilebilecek şeyin ötesine geçebilir ve hatta diğer yumuşak bedenleri bile oluşturabilir.
Manuel animasyonlar kullanıldığı için patlamalar, ateş, duman veya tozun gerçekçi görünmediği oyunları bulmak için o kadar geriye bakmak zorunda değilsiniz. Bazı çağdaş başlıklar bile parçacık fiziğine çok az odaklanıyor çünkü işlemciye çok zor ve vergilendiriyor.
Bununla birlikte, fizik motorları yıllar boyunca parçacık sistemlerini büyük ölçüde geliştirmiştir. Sadece gerçekçi duman yanılsamalarının nasıl olduğunu görmek için Skyrim'in başlık ekranına bakın (aşağıda).
Genel olarak, yumuşak bir vücut sistemindeki her bir parçacığın statik bir ömrü vardır. Bu dönem, ortaya çıktığı zamandan, parçacığın kaynağından yeniden doğmadan önce kaybolduğu zamana kadar gider. Bu süre zarfında, ayarlanan parametrelere göre nokta hareket edecektir.
Örneğin, bir kamp ateşinden duman alın. Her parçacık, genellikle kaynaktan (ateş) uzakta ve uzakta olan bir yörünge ile canlandırılır. Parçacıklar doğrusal olarak düz bir şekilde ilerlemez, aksine girdaplar ve 3B uzaydaki konumlarını rastgele değiştirir. Bunu, ömürlerine bağlı olarak simülasyondan kaldırılıncaya kadar yaparlar.
Kullanım ömrü, parçacık sisteminin ne kadar gerçekçi göründüğünü kabaca belirler. Uzun bir ömür, çok gerçekçi bir kamp ateşi dumanı yaratma eğilimindedir, ancak işlemciler için vergilendiriyor. Kısa bir ömür hesaplama açısından daha affedicidir, ancak kaybolmadan önce ateşten biraz uzaklaşan parçacıklarla sonuçlanır.
Skyrim başlık ekranı örneğine geri dönersek, buradaki duman efekti çok gerçekçi görünüyor çünkü ekranda minimum CPU döngüsü gerektiren menü seçimi dışında başka bir şey yok. Böylece CPU ve GPU'nun tam gücü, çok uzun ömürlü duman parçacıklarını simüle etmeye ayrılabilir. İzledikçe, parçacıkların yeniden doğmadan önce buharlaştığını görebilirsiniz.
Gerçek oyuna geçtiğinizde, yangınların etrafındaki dumanın gerçekçi bir görünüm olmadığını fark edeceksiniz. Hala oldukça ikna edici, ancak bir süre izlenmesi, bir parçacık sistemini çoğaltmak için kısayollara dayandığını ortaya çıkaracak. Geliştiriciler bunu bir parçacığın simülasyonda kaldığı süreyi kısaltmak da dahil olmak üzere çeşitli şekillerde yapabilirler, ancak başka numaralar da kullanabilirler. Bir dizi statik duman katmanının karıştırılması yaygın bir yöntemdir.
Kısacası, tüm oyunlarda yumuşak vücut fiziği sınırlıdır. Birincisi, genellikle estetik için olduğu için SBP'yi tamamen simüle etmek gerekli değildir. İkincisi, yumuşak bir vücut sistemini doğru bir şekilde çoğaltmak, çok fazla beygir gücü gerektirir, bu da oyun sistemlerine uygulanmasını pratik hale getirir. Tam SBP simülasyonları en iyi fizik laboratuvarlarında bırakılır.
Ne Öğrendik
Video oyunu fiziği, geliştiricilerin gerçekçilik ile hesaplama sınırlamaları tarafından belirlenen uzlaşmalar arasında bir denge bulmaları gereken karmaşık bir alandır. Kısayollar bulmak ve fizik motorlarına güvenmek, programcıların gerçek dünya fiziğini hızlı ve verimli bir şekilde taklit etmelerini sağlar, böylece oyunun mekanik gibi daha kritik yönlerine odaklanabilirler.
Sonuçta eğlenceli hale getirmektir. Gerçekçilik, ilgi çekici bir oyun deneyimine karşı durur. Bu oyun fiziğinin isteğe bağlı olduğu anlamına gelmez. Aksine, tasarımcılar bunu bir şekilde kullanmalıdır, aksi takdirde oyun sezgisel kurallar olmadan kaotik olacaktır. Ayrıca, oyunu daha eğlenceli ve ödüllendirici hale getirmek için, örneğin çift atlama yeteneği de dahil olmak üzere doğal yasaları bükebilirler.
Video oyunu fiziğinin daha teknik noktaları ve oyun yapımcılarının fizik motorlarını kullanma şekli ile ilgileniyorsanız, başlamanız için birkaç kaynak vardır. Fizik bölümüne göz atın. Unity kılavuzu ya da Lumberyard eğiticileri. Gelecek bir makalede konuyu daha ayrıntılı olarak ele alabiliriz.
Bu arada, bir sonraki video oyununuzu oynarken tartıştığımız şeyleri düşünmek eğlenceli olabilir. Tıpkı nasıl olduğunu açıkladığımız gibi 3D render işleri video oyunlarında, geliştiricilerin kullandıkları kısayolları tespit edebilir veya oyunu geliştirecek şekilde fizik kullandıkları yenilikçi yolları bulabilir misiniz? Bir deneyin ve bize bildirin.