Sahte 3D örnekleri


17

Herkes 2D 3D sahte herhangi bir iyi örnekleri biliyor mu (mutlaka kod değil, ben bakmak oyunları)? Oyuncu ekrana 'gireceği' ve onlara bir şeyler çıktığı perspektifine sahip. Şu anda, 2D düşmanları, yaklaştıklarına dair yanılsamayı vermek için ölçeklendiriyorum, ancak yine de oldukça düz geliyor. Gerçekten bir 3D motoru kullanmadan daha fazla 3D yanılsaması vermenin herhangi bir ipucu var mı?

Düzenleme : Sadece 'Mode7' terimi ve anlamaya çalıştığım hemen hemen bu videoyu gösteren bu video geldi . (özellikle 0:13 ve 1:03'teki oyunlar). Böyle bir şeyi uygulamanın iyi bir yolu nedir?


1
90'lı yılların ortalarından önce birçok bilgisayar oyunu "sahte" 3d ve beşinci nesil döneminden hemen önce tüm konsol oyunlarını (Playstation / N64) yaptı. Şu anda bir ekran görüntüsü ya da başka bir şeyle ne yaptığınızı açıklığa kavuşturmak yardımcı olabilir ...
thedaian

1
Yayını yeni bulduğum bir videoyla güncelledim.
XSL

2
Bilgisayar oyunlarındaki tüm 3D sahte 3D'dir. Bunların hiçbiri gerçekten yok! (Bu, bir oyunda 3D'nin herhangi bir 'taklitinin' düşündüğünüzün sadece 'gerçek' bir akrabası olması anlamına gelir. Mode7, aralarında sadece orta bir zemin. Aynı temel matematik.)
DampeS8N

Yanıtlar:


13

En sevdiğim klasik arcade oyunlarından biri de sahte 3D: Space Harrier

Bu videoda kullandıkları birkaç hileyi görebilirsiniz, ancak en etkili görsel efektlerden biri o kadar sorunsuz ki, bunun gerçekleştiğini bile fark etmeyebilirsiniz: oyuncu (veya önemli olarak kamera) hareket ettiğinde, nesneleri vermek için paralaks kullanırlar. sahne derinlik hissi.

Yani, daha yakın nesneler uzaktaki nesnelerden daha hızlı yan yana hareket eder. Paralaksın klasik örneği hareketli bir arabanın penceresinden dışarı bakmaktadır: sokak işaretleri gibi yakındaki şeyler bulanıklaşır, ağaçlar daha yavaş hareket eder, dağlar gibi uzak şeyler zar zor hareket ediyor gibi görünür.

Ayrıca, nesneler yaklaştıkça doğrusal olarak ölçeklenmez. Yani, nesneler çok uzaktayken biraz ölçeklenir ve yakınken daha hızlı ölçeklenir; doğrusal olarak ölçeklendirme, tüm zaman boyunca aynı oranda ölçeklendirilmeleri olabilir. Nesnelerin yaklaştıkça zaten ölçeklendiğini söylüyorsun, ancak onları doğrusal olarak ölçeklendiriyor olabilirsin ve bu düz görünüyor.

İLAVE: Afterburner , aynı grafik numaralarını kullanan başka bir klasik arcade oyunudur.


1
Gölgeler, şeylerin '3D' görünmesini sağlamanın çok önemli parçalarıdır. Oyun stiline bağlı olarak, bu kadar kolay olabilir veya olmayabilir, karakteriniz yere gölge düşürebilir mi yoksa geminiz bir gezegene gölge düşürecek kadar büyük mü? Bu, tümsek veya normal haritalamanın ardındaki genel kavramdır. (Üst düzey bir örnek olarak bunun yapılmasını önermez) Karakterinizin gölgesi arka planda hafifçe ağaç üzerinde ilerliyor, ancak uzaktaki tepe yolu değil sadece aradığınız bir kenar ekleyebilir.
James

6

Bu oyunların çoğu ünlü "Mod 7" numaralarını kullanıyor. Sadece bir rotozoom. Bu işlem konsoldaki yardımcı işlemci tarafından yapıldı, bu nedenle bu donanımlarda çok hızlıydı. Gerçek 3d operasyonlar çok maliyetliydi. Ancak gerçek donanımla, gerçek 3D ile simüle etmek daha kolaydır.

Bir rotozoom, bir hareketli grafiğin dönüşü ve yakınlaştırmasıdır. Bu açıklamaya veya bu SDL uygulamasına bakın .

Örnekleri ve kodu bulmak için Google "MODE-7 kat haritası" nda arama yapın.

F-Zero Mode 7 , snes'de ilk kullanan oyunlardan biriydi.


5

Birkaç yıl önce örnekler ve açıklamalar ile bu tekniklerin harika bir incelemesini buldum. Sorunuz beni tekrar aramamı istedi: Lou'nun Yalancı 3d Sayfası . Çalışan bir Outrun motoruna sahipti ama bir nedenden dolayı onu kaldırdı ( arkadaşınız buradaysa Wayback Machine )

Sorunuzu daha fazla yanıtlamak için, sayfasındaki oyunların bir listesi:

  • Street Fighter II (çarşı) (dojo katındaki "raster efektleri")
  • Outrun (çarşı)
  • Uzay Harrier (çarşı)
  • Süper Hang-on (çarşı)
  • Enduro (Atari 2600)
  • Kutup Konumu (çarşı, Atari 2600)
  • Yol Döküntüsü (3DO)
  • Güç Kayması (çarşı)
  • Racin 'Force (çarşı)
  • Hydra (çarşı)
  • Outrunners (çarşı)
  • Turbo (çarşı)
  • Spy Hunter II (çarşı)
  • Pitstop II (Commodore 64)
  • Enduro Racer (çarşı)
  • Lotus (Commodore Amiga)
  • Test Sürüşü II (Commodore Amiga?)
  • Hız Buggy

Yine listem değil, tüm krediler harika araştırması için Louis Gorenfeld'e gitmeli .


4

Tüm 3d oyunlar sahte 3d: P Şaka yapıyorum, 'sahte 3d' ile ne demek istediğini biliyorum.

8 / 16bit, paralaksı taklit etmek için farklı hızlarda hareket eden katmanlarda arka planı sunmak için çok yaygın bir tekniğin birkaç örneğine sahiptir. Bunu görmek de çok yaygındı. Aslında, bu konsollar için yapılan herhangi bir yarış oyununa bakmak açıklamaktan daha kolay.

Aynı senaryoda flaş senaryosunda yeni şeyler görüyorum. Füze Oyunu 3d bir göz atın .

Bu efekti elde etmek için hangi yolu kullanmak istediğinizi bilmiyorum, ancak bazı programlamaya başladığınızı ve grafiklere (bir API, belki?) Erişmenizi öneriyor gibi görünüyor. Bu nedenle, ekranın ve ölçeğin hareketi için zamanın bir fonksiyonu olarak doğru parametreleri bulmak önemlidir. Bunun için belirli denklemler bulacağınızı düşünmüyorum, çünkü muhtemelen oyununuzun özel durumuna (olağan hız, yarış, uçaklar, tüneller vb.) zamana göre ekranda fonksiyon ölçeği ve yörüngesini bulmak için en iyi seçimdir.


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.