Eski 3D oyunların neden “gergin” grafikleri vardı? [kapalı]


15

Son zamanlarda "MediEvil" oynuyorum ve merak ettim: eski 3D oyunların bazılarının hareket ederken "akan" grafiklere sahip olmasına ne sebep oluyor? "Final Fantasy VII" , "MediEvil" gibi oyunlarda mevcut ve "Dungeon Keeper 2" nin zum modunda aynı şeyi olduğunu hatırlıyorum . Ancak, "Quake 2" gibi örneklerde bu "sorun" yoktu ve bu da eskisi kadar eski. Çözünürlük sorun gibi görünmüyor, hareketsiz durduğunuzda her şey mükemmel şekilde işleniyor. Oyun yavaş mı yenileniyor, yoksa tamponlama ile mi ilgili?


5
Bahsettiğiniz etkiyi gösteren bir videoya bağlantı verebilir misiniz?
John Calsbeek

1
Örneğin, youtube.com/watch?v=H-M6EPgs1JY&t=1m20s , kamera her ekranı hareket ettirdiğinde çıldırıyor, garip görünüyor, PS'nin düz bir çizgi oluşturma sorunları yok gibi görünüyor, bu yüzden sanmıyorum sadece
pixelation

1
Hiçbir şey göremiyorum ... belki o zaman oyun oynamaya o kadar alışkındım ki sorunları fark etmiyorum. Ama ilk düşüncem belki de Mike'ın cevabında belirtilen afin doku dönüşümünü görüyordunuz, bu da şeylerin bakış açısına göre garip bir şekilde gerilmesini sağlayabilir.
Kylotan

@Kylotan daha yavaş kamera hareketlerinde özellikle dikkat çekiyor (örneğin, dreta'nın YouTube bağlantısında yaklaşık 16 yaşında, zeminde ve duvarlarda fark etmelisiniz.) Sanırım PS oyunları neredeyse her oyunda çok hızlı kameralara sahipti :)
kaoD

1
Bu soruyu konu dışı olarak kapatmak için oy kullanıyorum çünkü geniş bir video oyununun neden bu şekilde davrandığını soruyor. Bu sorular genel olarak konu dışı, en azından şimdi, geliştiricilerin yaptıklarını gerçekten nasıl yaptıkları üzerine spekülasyonlara dayanıyorlar. Bu soruları sık sık "bunu kendi oyunumda nasıl yaparım" şeklinde bir revizyonla geliştirebiliriz, ama bu gerçek niyet gibi görünmüyor.
Gnemlock

Yanıtlar:


27

Bunun için sadece en tuhaf alıntılara sahibim , ancak orijinal PlayStation'da görünüyor, vektör birimi (genellikle köşeleri dönüştürmek için kullanıldı) sabit nokta işlemlerini yapabiliyordu ve rasterleştirici de sabit nokta matematik kullanıyordu, ancak ikisi arasında sadece tamsayılar geçirilebilir. Böylece nicemleme artefaktları görüyorsunuz: çokgen köşeleri en yakın ızgara noktasına tutturuluyor. Hareketsiz bir sahne için mükemmel derecede kararlı, ancak hareket halinde oldukça rahatsız edici.

Biraz ek araştırmadan, orijinal PlayStation'ın rasterleştiricinin çalışabileceği farklı çözünürlüklere sahip olduğu görülüyor, 256x224'ten 740x480'e. Böylece, daha iyi doldurma oranı elde etmek için daha düşük çözünürlükler seçebilirsiniz, ancak düşük çözünürlükteki ızgara çıplak gözle kolayca tespit edilebilecek kadar kaba olduğundan, bu tür eserler görürsünüz.


PC'de IIRC (mesh animasyonları ile ilgili) GPU üzerinde kayan nokta hesaplamaları ile ilgili bazı sorunlar vardı (oldukça yakın zamanda aslında, 2000-2005 civarında düzeltildi) - Tam sorunun ne olduğunu hatırlayamıyorum ama çok sonuçlandı " karakter animasyonları. Yıldız Savaşlarını hatırlıyorum Phantom Menace bu davranışı oldukça sert bir şekilde sergiledi.
Jonathan Dickinson

@JonathanDickinson Eklemler üzerindeki "şeker sarma" etkisini düşünmüyorsunuz, değil mi? isg.cs.tcd.ie/projects/DualQuaternions
John Calsbeek

Hayır, hatırlayamadığım nedenlerden dolayı ortaya çıkan bazı yanlışlıklar oldu.
Jonathan Dickinson

9

Quake 2'yi yazılım modunda oynarsanız, aslında bahsettiğiniz sorunların bir kısmı vardır. Quake 2'de certian modellerine keskin açılarda bakarsanız, "yüzme" dokularını göreceksiniz. Bunun nedeni, kullanılan ilk 3D motorların çoğunun afin doku eşleştirmesidir . Bu, perspektif doğru doku eşlemesi sağlayan pahalı piksel başına bölünmeyi kurtarır, ancak dokularınız keskin açılarla çarpıldığında çarpılacağı anlamına gelir.

Ayrıca, birçok erken 3D oyun (Quake 2 dahil) , iskelet animasyonunun aksine modellerini canlandırmak için basit tepe dönüşümü kullandı . Köşeler, doğrusal enterpolasyonlu ana kareler arasında doldurulur. Doğal olarak, bu köşeler arasındaki mesafeleri çok iyi korumaz, bu yüzden jöle tepe sendromu ile sonuçlanırsınız - modeller canlandıkça biraz sallanır!


2
Doğru ve kafeslerin çözünürlüğü sadece 256x256 idi, bu nedenle köşelerin hareketi düz olmayan çizgilerle enterpole edildi. Piksel sanatında sorunsuz bir kılıç kılıcı çizmeye çalışmak gibi.
Myrddin Emrys

Evet, MD2 biçiminde yalnızca bir 3 Bayt / tepe noktası vardı.
Tili

1
Quake 2 aslında perspektifi doğru doku eşlemesi yaptı, ancak her 16 (veya bir kullanıcı seçeneği ile 8) pikselde düzeltildi.
Maximus Minimus

1
Bunu Q2 ile ilgili ifadelere doğru yapmak için: Quake 2, seviye geometrisi için (16 doğru hesaplanan her piksel için doğrusal enterpolasyon) ve hareketli nesneler için afinasyonu için perspektif doğru txt eşlemesini kullanır
Peter Parker
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.