3 puan yazan GN⁺ 2024-02-27 | 1 yorum | WhatsApp'ta paylaş

Dosya sistemi yapılandırması

  • Wolfenstein 3D kaynak kodunu derlemek için DOS sürücülerinin gerektirdiği iki klasörü oluşturma.

İndirme

  • Borland C++ 3.1 derleyicisini, Wolfenstein 3D kaynak kodunu ve VGA dosyalarını indirme.

Arşivden çıkarma

  • İndirilen dosyaları arşivden çıkarma.

DosBox

  • DosBox'ı indirip başlatma.

Dosya sistemi bağlama

  • Dosya sistemini bağlayarak her sürücüye klasör atama.

Derleyici kurulumu

  • Borland C++ 3.1 kurulum sürecini yürütme.

Wolfenstein 3D kaynak kodu kurulumu

  • Derleyicinin kurulu olduğu sistemde kaynak kod arşivini açma.

Derlemeyi başlatma

  • Borland C++ 3.1'i başlatıp projeyi açtıktan ve dizinleri ayarladıktan sonra derlemeyi deneme.
  • TASM çalıştırılabilir dosyasının eksik olduğu hatasının ortaya çıkması; PATH ayarlandıktan sonra yeniden derleme.
  • Linkleme başarısızlığı hatasını çözmek için projedeki nesne dosyası yolunu düzeltme ve ardından başarıyla derleme.

Varlıkları edinme

  • Oyun varlıkları için Wolfenstein 3D'nin shareware sürümünü indirme veya tam sürümü satın alma.
  • DosBox içinde oyunu kurduktan sonra derlenen çalıştırılabilir dosyayı oyun klasörüne kopyalama.

Oyunu çalıştırma

  • Oyunu çalıştırmayı deneme; grafik dosyası indeksleme sorunu nedeniyle görüntünün bozuk çıkması.
  • Sorunu çözmek için VGA varlık dosyalarını, kaynak koda uygun şekilde yeniden üretilmiş dosyalarla değiştirme.

VGA framebuffer ve ekran en-boy oranı

  • DosBox'ın ekran en-boy oranı seçeneğini ayarlayarak görüntüyü 1992'deki özgün oyun ekranıyla aynı hale getirme.

GN⁺ görüşü

  • Bu yazı, klasik oyun Wolfenstein 3D'nin modern sistemlerde derlenme sürecini anlatıyor. Bu, retro oyun geliştirmeyle ilgilenen giriş seviyesindeki yazılım mühendisleri için ilgi çekici olabilir.
  • Yazı, eski bir derleyici ve emülatör kullanarak eski kodu yeniden çalıştırma yöntemini gösterirken yazılımın tarihsel değerini korumanın ve bundan öğrenmenin önemini vurguluyor.
  • Modern geliştiricilere geçmişteki yazılımları anlama ve buradan bugünün teknolojik ilerleyişine dair içgörü kazanma fırsatı sunuyor.
  • Eleştirel açıdan bakıldığında bu süreç zaman alıcı olabilir ve bazen modern geliştirme ortamlarıyla uyumluluk sorunları yaşatabilir.
  • Bu yaklaşımı uygulamak için klasik oyun kaynak kodunu anlayıp değiştirebilme becerisi gerekiyor.
  • Bu yaklaşımın getirisi geçmiş oyun geliştirme tekniklerini öğrenebilmek; götürüsü ise modern geliştirme ortamlarıyla uyumluluk sorunlarını çözmek zorunda olmak.

1 yorum

 
GN⁺ 2024-02-27
Hacker News görüşleri
  • Wolfenstein 3D hakkında kitap önerisi

    Wolfenstein 3D hakkında teknik ama sıkıcı olmayan bir kitap; eski usul hileler ve optimizasyon yöntemlerinden bolca söz ediyor. Duvar dokusu ölçeklendirme için 64 fonksiyon, sprite'ları "yanlamasına" saklama yöntemi, karmaşık ekran kartı yönetimi ve oyunu gösterebilmek için grafik modu hack'leri gibi konular yer alıyor.

  • Retro sistemlerdeki eğlence

    Retro sistemlerde araçları toplayıp sistemi yeniden kurabilmenin ayrı bir keyfi var. Örneğin Uplink oyununu yeniden derlemek için yalnızca Visual Studio 6.0 yeterliydi. Geliştirme arşivi, oyunu derlemek için gereken tüm bağımlılıkları içeriyordu; bağımlılıkları düzeltmek biraz zaman aldı ama sonunda oyun sorunsuz çalıştı. Birkaç küçük kusuru da giderip çeşitli iyileştirmeler eklendi.

  • DOS tabanlı metin arayüzüne özlem

    DOS tabanlı metin arayüzleri özleniyor. 1997'ye kadar PS/2 kullanmaya devam edilen o güvenilir günler hatırlanıyor.

  • Borland Turbo C++ ile programlama öğrenme deneyimi

    Borland Turbo C++ ile programlama öğrenme deneyimi. Ekrana çizim yapmak için geometrik şekil fonksiyonlarını çağırmak kolaydı. Şekilleri çizdikten sonra xor fonksiyonu kullanılarak animasyon yapılabiliyordu. Yalnızca 1000 satır C++ koduyla koşuyormuş gibi görünen küçük bir sprite yapmak harikaydı. Arkadaşlarla birlikte bu numaraları, elde yapılmış sprite'ları ve içinde yürünebilen bir oyun dünyasını kullanarak Final Fantasy tarzı bir oyun yapıldı.

  • Doom'un yaratıcıları hakkında kitap okuma

    "Master of Doom" adlı kitap okunduğunda, o dönemde oyunlar zaten çok ilgi çekiciydi; ama tarihe dönüp bakınca, birkaç gencin ortaya koyduğu şey daha da ilham verici geliyor.

  • Oyun geliştirme üzerine kitap önerisi

    Eski dönem oyun geliştirmeyi yeniden düşündüren harika bir kitap. Birkaç yıl önce restoranda sırada beklerken kitap baştan sona bitirilmişti.

  • Sabit disk olmadan disket değiştirme anıları

    C sürücüsüne kurulum yapmak lükstü. Sabit disk olmadığı için A ve B sürücülerinde disket değiştirmek gerekiyordu. O günler keyifliydi ama bugünün çocukları böyle hikâyelere inanmıyor.

  • Borland'ın MS-DOS IDE'si hakkında tatlı anılar

    Borland C++, yaklaşık 5 megabayta sığan; C++ derleyicisi, standart kütüphane ve hata ayıklayıcı içeren bir IDE'ydi ve Borland'a özgü sarı-mavi renk şeması çok sıcak gelirdi.

  • İlgili bağlantı

    "Let's compile like it's 1992 (2014)" başlıklı yazıyla ilgili bir bağlantı paylaşılıyor. Şubat 2017'de Hacker News'te yayımlanmış ve 80 yorumu var.