Bagaimana id Software menciptakan Wolfenstein 3D berdasarkan teknologi dari Commander Keen

gambar

Artikel ini adalah fragmen dari Game Engine Black Book: Wolfenstein 3D , sebuah studi rinci tentang sejarah, kode, dan pengembangan yang memiliki dampak besar pada industri game dalam penembak orang pertama pada penghancuran Nazi.

Bab ini mengungkapkan asal mula permainan dan bagaimana game itu dibangun di atas fondasi kesuksesan dan teknologi Commander Keen , yang dibangun dari sisa-sisa upaya yang gagal untuk menjual port Nintendo Mario 3 untuk PC.

Buku lengkap, yang ditulis oleh penulis dan programmer Fabien Sanglar, dapat dibeli dalam bentuk kertas atau digital .

Pada tahun 1990, perusahaan kecil Softdisk dari Shreveport (Louisiana) berhasil melakukan bisnis di pasar shareware.

Dengan menyediakan layanan distribusi permainan video berbasis langganan, Softdisk membuat dan mengirim game baru melalui surat ke pelanggan setiap bulan. Bisnisnya berjalan baik, tetapi beberapa karyawan perusahaan lebih ambisius.

Mereka pikir mereka memiliki keterampilan yang cukup untuk meningkatkan dan mereka ingin membuktikannya. Mereka menciptakan cara baru untuk memprogram pengguliran samping dan menyebut teknologi ini penyegaran ubin adaptif. Ini memungkinkan Anda untuk melakukan pengguliran perangkat keras (menggulir layar) pada PC, sehingga komputer dapat bersaing dengan NES. Pada awal 1990-an, mereka bekerja tanpa henti di akhir pekan untuk menciptakan kembali Super Mario 3 di PC untuk menunjukkan keterampilan Nintendo mereka.

Ide-ide dari tim Deep, sebagaimana mereka menyebut diri mereka sendiri, mampu membuat tiruan dari Mario , tetapi, sayangnya, dia tidak dapat meyakinkan Nintendo untuk memberi mereka kontrak. Tidak peduli seberapa terkesan perusahaan Jepang itu, ia ingin seri Mario tetap hanya di konsol Nintendo.

“Kami mengirim demo ke Nintendo of America, dan dia kemudian mengirimkannya ke kantor pusat di Kyoto. Manajemen puncak menyaksikan demo dan sangat terkesan. Namun, mereka tidak ingin kekayaan intelektual mereka berada di perangkat apa pun selain peralatan mereka, jadi mereka hanya memuji kami dan mengatakan bahwa itu tidak mungkin. ” - John Romero, programmer


Mario di PC. Singkatan IFD singkatan Ideas from the Deep.

Episode ini ternyata cukup bagi mereka untuk meyakinkan diri sendiri bahwa mereka tidak hanya memiliki bakat yang sesuai dengan ambisi mereka, tetapi juga tim yang terkoordinasi dengan etika kerja yang berpotensi membuka peluang besar bagi mereka. Pada bulan Februari 1991, empat karyawan Softdisk melakukan lompatan kepercayaan dan mendirikan perusahaan Perangkat Lunak id mereka sendiri.


Pendiri Perangkat Lunak id.

(Anda dapat membaca lebih lanjut tentang ini di Masters of Doom David Kushner.)

Mereka segera mengambil keuntungan dari teknologi yang dikembangkan untuk versi PC Mario 3 untuk mulai merilis game mereka sendiri dan membangun kekayaan intelektual. Tanpa membuang waktu, tim merilis setidaknya tiga pertandingan dalam setahun.

  • Commander Keen Episode 1, 2, dan 3: Invasi of the Vorticons (14 Desember 1990)
  • Commander Keen Episode 4, 5, dan 6: Good Bye Galaxy (15 Desember 1991)
  • Game terpisah Commander Keen : Aliens Ate My Baby Sitter (Desember 1991)

Game-game ini, yang diterbitkan oleh FormGen, langsung sukses dan terjual dengan sangat baik. Tim juga terus menulis game untuk Softdisk, yang sebagian besar menggunakan pembaruan ubin adaptif:

  • Commander Keen in Keen Dreams (1991)
  • Dangerous Dave in the Haunted Mansion (1991)
  • Rescue Rover (1991)
  • Rescue Rover 2 (1991)
  • Shadow Knights (1991)
  • Hovertank 3D (April 1991).
  • Catacomb 3D: A New Dimension (November 1991)

Pada musim semi 1991, generasi baru dari teknologi Perangkat Lunak id mulai muncul. Di game Hovertank 3D, pemain berada di dalam tangki. Sejauh ini, belum ada pemetaan tekstur, dan kecepatan permainan tetap agak lambat. Catacomb 3D menandai munculnya tekstur dan peningkatan perendaman dalam permainan: pemain sekarang mengendalikan wizard dalam tampilan orang pertama.

Pada November 1991, tim mengakhiri semua kewajiban ke SoftDisk. Game berikutnya akan menggunakan teknologi 3D yang dibuat oleh para pria dan akan dirilis dengan nama Wolfenstein 3D . Karena skala dan ambisi permainan, empat orang lagi bergabung dengan tim dan sekarang memiliki delapan karyawan.


"Jason (Jason Blochowiak) adalah bagian dari id sejak awal, tetapi dalam proses pengembangan Wulf, jalan kita berbeda." - John Carmack, programmer.


Foto tim Telur Paskah di Spear of Destiny. Tulisan di bawah ini: "kita tanpa celana."


Bahkan, celana itu masih ada di sana.

Organisasi


Pada September 1991, dipandu oleh ingatan sekolah Tom dan Jason, tim pindah dari Shreveport ke Madison (Wisconsin). Orang-orang itu menempati kantor mereka di gedung bata berlantai dua di kompleks perumahan The Pines di High Ridge Trail, 2622. Mereka semua tinggal dalam jarak berjalan kaki ke kantor, kecuali Carmack, yang tidak peduli dengan ketidaknyamanan ini: ia menetap tepat di lantai dua kantor.

Pengembangan 3D Wolfenstein dimulai pada Januari 1992. Temperatur turun dan salju turun dari langit, sehingga tim benar-benar tenggelam dalam pekerjaan dan jarang meninggalkan kantor. Pembangunan berlangsung empat bulan. 3D Wolfenstein dirilis pada Mei 1992.


Selama empat bulan ini, organisasi kerja tim cukup standar untuk studio game pada zaman itu: empat orang duduk di ruangan yang sama, dukungan untuk kecepatan perkembangan yang cepat dan rasa persahabatan yang kuat (dan banyak kebisingan karena gaya komunikasi John Romero dan Tom Hall).

Peta di bawah ini menunjukkan sudut dengan SNES, tempat permainan F-Zero yang tak terhitung jumlahnya dimainkan, dan zona Dungeons & Dragons, sering disebut dalam Masters of Doom. Fakta bahwa salah satu anggota tim (John Carmack) tinggal tepat di atas studio adalah keadaan yang biasa.

“Kami mulai dengan mentransfer data pada floppy disk, tetapi pada akhirnya kami menciptakan jaringan Novell berdasarkan coaxial Ethernet *. Kami tidak memiliki sistem kontrol versi. Anehnya, kami tidak memilikinya sampai Quake 3, selama pengembangan yang kami mulai menggunakan Visual Source Safe. " - John Carmack, programmer.

* Komentar oleh John Romero: “Tinggal di Madison, pada November 1991, kami membeli sistem Novell Netware 3.11 dengan harga $ 7.000. Itu termasuk server file, kabel, dan kartu jaringan. "


Semua orang bekerja pada PC terbaik yang bisa dibeli dengan uang: 386-DX 33MHz paling kuat dengan 4MB RAM.

Pemrograman


Pengembangan dilakukan di lingkungan Borland C ++ 3.1 (tetapi dalam bahasa C), yang secara default bekerja dalam mode VGA 3: layar teks berukuran 80 dengan 25 karakter.

John Carmack berurusan dengan kode runtime. John Romero memprogram banyak alat (editor peta TED5, paket sumber daya IGRAB, paket musik MUSE). Jason Blohovyak menulis subsistem game yang penting (manajer input, manajer halaman, manajer suara, manajer pengguna).


Solusi Borland adalah sistem all-in-one. IDE yang disebut BC.EXE, meskipun memiliki beberapa ketidakstabilan, menyediakan pengeditan kode multi-jendela yang aneh dengan highlight sintaks yang bagus. Kompiler dan tautan juga merupakan bagian dari sistem dan memiliki nama BCC.EXE dan TLINK.EXE.

Namun, beralih ke mode baris perintah tidak diperlukan. IDE memungkinkan Anda membuat, merakit, menjalankan, dan men-debug proyek.


Untuk mengimbangi ukuran kecil layar CRT, beberapa pengembang menggunakan dua monitor. (Catatan John Romero: “Baik John Carmack dan saya bekerja dengan Turbo Debugger pada monitor monokrom layar kuning berukuran 12 inci.”)




Sumber Daya Grafis Game


Semua sumber daya grafis diciptakan oleh Adrian Carmack (Kevin Cloud membuat beberapa tekstur, dan juga mengerjakan desain dan struktur buklet manual 3D Wolfenstein ). Semua pekerjaan dilakukan dalam Deluxe Paint (ditulis oleh Brent Iverson dari Electronic Arts) dan disimpan dalam file ILBM (InterLeaved BitMap) (format Deluxe Paint eksklusif).


Karena mode VGA didasarkan pada penggunaan palet (warna ditetapkan bukan oleh nilai RGB 24-bit, tetapi dengan indeks yang menunjuk ke tabel 256 warna), proses pembuatannya rumit. Pertama-tama, Adrian harus membuat keputusan kunci - warna mana yang akan jatuh ke palet (dalam beberapa permainan, misalnya, Monkey Island menggunakan beberapa palet yang berubah tergantung pada bagian permainan. Perangkat Lunak Id memilih solusi yang lebih sederhana dan menggunakan satu palet untuk seluruh permainan), dan kemudian cat semuanya hanya dengan warna-warna ini.


Palet 3D Wolfenstein. Semua yang ada dalam game dibuat menggunakan 256 warna ini.

Koordinat palet bervariasi dari 0x00 hingga 0x0F secara horizontal dan dari 0x00 hingga 0xF0 secara vertikal. Gradien biru horizontal di bawah ini dimulai pada 0xF0 dan berakhir pada 0xFE. 0xFF (ditandai dengan warna merah muda) adalah warna khusus yang dianggap transparan oleh mesin dan selalu dilewati saat rendering.

Semua sumber daya digambar secara manual dengan mouse. Karena ketika menampilkan buffer bingkai di layar, mode VGA meluruskannya, Adrian harus berhati-hati dan menggambar segala sesuatu dalam resolusi di mana permainan seharusnya bekerja (320x200).

"Adrian dan Kevin bekerja langsung di Deluxe Paint, pada waktu itu kami tidak punya alat pemindaian." - John Carmack, programmer.

Sumber daya grafis dibagi menjadi dua kategori:

  • Item Menu 2D Disediakan dengan Gim dalam File VGAGRAPH, VGAHEAD, dan VGADICT
  • Elemen mode 3D (dinding dan sprite) yang disediakan dalam arsip VSWAP

Proses produksi sumber daya


Setelah menghasilkan sumber daya grafis, alat IGRAB mengemas semua ILBM menjadi satu arsip dan menghasilkan file header C dengan pengidentifikasi sumber daya. Mesin merujuk ke sumber daya secara langsung menggunakan ID ini.


Pipeline pembuatan sumber daya untuk menu 2D.


Dalam kode mesin, penggunaan sumber daya sangat ditentukan dalam enumerasi. Enum ini adalah offset dalam tabel HEAD, yang darinya offset dalam arsip DATA diambil. Berkat lapisan tautan tidak langsung ini, sumber daya dapat dibuat ulang dan disusun ulang tanpa mengubah kode sumber.

Fakta menarik: sistem seperti itu menyebabkan masalah setelah menerbitkan kode sumber. Header .h dalam bundelnya tidak cocok dengan file sumber daya dari versi shareware atau versi Wolfenstein 3D yang lebih lama . Berita utama yang diterbitkan diambil dari Spear of Destiny. Anda dapat melihat kekacauan grafis apa yang menyebabkan ini dalam artikel "Kami mengkompilasi, seolah-olah di halaman 1992" di situs fabiensanglard.net [ terjemahan artikel di Habré].

Panduan resmi Wolfenstein 3D yang diterbitkan pada tahun 1992 menjelaskan proses kreatif. Ini berisi banyak gambar oleh Tom Hall dan menunjukkan banyak sketsa yang dibuat oleh Tom dan diterjemahkan ke dalam piksel oleh tim seniman.

“Ketika direktur kreatif Id, Tom Hall, muncul dengan ide layar, ia memberikan sketsa kepada Adrian Carmack. Berikut ini adalah contoh dari beberapa sketsa desain layar splash oleh Tom. Saya memilih draft ketiga untuk game. ” - “Panduan Resmi 3D Wolfenstein”







Manual ini juga memuat beberapa foto tim saat itu; Saya menyarankan Anda untuk membacanya untuk memahami konteksnya.

[Desain panduan dibuat di NeXT ColorStation. Ini adalah satu-satunya kasus menggunakan mesin Steve Jobs untuk membuat 3D Wolfenstein , terlepas dari kenyataan bahwa id membelinya pada Desember 1991. Kemudian, pada tahun 1993, rangkaian workstation NeXT menjadi elemen kunci dalam konveyor produksi Doom .]

Source: https://habr.com/ru/post/id457378/


All Articles