Membuat Flight Simulator Sendiri dengan C++ (1996)
(archive.org)- Materi pemrograman game DOS berbahasa Inggris dari tahun 1996 yang membahas proses mengimplementasikan flight simulator sendiri dengan C++
- Tag topiknya diklasifikasikan terutama ke MS-DOS, 3D, Gamedev, tutorial, Retrogaming, dan C++
- Bukan sekadar dokumen, tetapi juga mencakup image CD-ROM berisi kode contoh, sehingga lingkungan pengembangan pada masa itu ikut dilestarikan
- Dapat diunduh dari Internet Archive dalam berbagai format seperti PDF, EPUB, Full Text, ISO Image, dan Torrent
- Bagi orang yang mencari materi pengembangan game retro dan pemrograman DOS, ini adalah arsip pelestarian yang memungkinkan buku dan materi pendukungnya dilihat di satu tempat
Materi yang terdaftar di Internet Archive
- Materi yang terdaftar di Internet Archive adalah Build Your Own Flight Sim In C++ (DOS GameDev)
- Penulisnya adalah Michael Radtke, Chris Lampton, dan ini adalah materi berbahasa Inggris yang diterbitkan pada 1996
- ISBN-nya adalah 1-57169-022-0
- Topiknya diklasifikasikan sebagai MS-DOS, Programming, 3D, Gamedev, tutorial, Retrogaming, dan C++
Cakupan pengembangan yang dibahas buku
- Tujuannya adalah menulis flight simulator sendiri dengan C++
- Ini adalah materi yang digunakan dalam konteks pengembangan 3D dan game retro dengan fokus pada pemrograman game di lingkungan DOS
- Flight simulator tersebut mencakup suara SB16
- Image CD-ROM yang berisi kode contoh juga disediakan
Konteks pendaftaran
- Saat Retro City Rampage di-port ke DOS, ada latar belakang ketika pengembang menyesalkan bahwa ia telah membuang semua buku lama tentang pemrograman DOS dan pengembangan game yang dulu dimilikinya, dan sulit menemukannya lagi secara online
- Dalam konteks itu, materi ini diperkenalkan sebagai buku pengembangan game DOS yang didaftarkan ke Internet Archive
Format yang dapat diunduh
- Internet Archive menyediakan berbagai format unduhan
- PDF: 308.9M
- EPUB: 768.5K
- Full Text: 1.1M
- ISO Image: 11.5M
- Single Page Processed JP2 ZIP: 321.7M
- Torrent: 32.5K
- File terkait OCR seperti CHOCR, HOCR, OCR Page Index, dan OCR Search Text juga disediakan
Pelestarian dan metadata
- Ukuran item ditampilkan sebagai 706.7M
- Termasuk dalam CD-ROM Software Library, CD-ROM Software Collection, dan The Vintage Software Collection milik Internet Archive
- OCR diproses dengan tesseract 5.0.0-alpha-20201231-10-g1236, dan bahasa yang terdeteksi adalah bahasa Inggris
1 komentar
Opini Hacker News
Ah, buku ini! Mengingatkan saya pada masa ketika bermain Wolfenstein, Ken's Labyrinth, dan Doom sambil bertanya-tanya bagaimana mereka membuatnya
Saya pernah bekerja di sebuah “toko komputer” yang tidak bisa atau tidak mau membayar upah, lalu mereka bilang saya boleh mengambil buku apa saja di toko sebagai imbalan kerja hari itu, jadi saya secara impulsif mengambil buku ini
Di bus pulang, saya sampai melewatkan halte tempat saya seharusnya turun, karena meski ini buku tentang simulator penerbangan, algoritma dan teknik di dalamnya ternyata persis soal pemrograman 3D yang selama ini membuat saya penasaran
Saya memang tidak membuat simulator penerbangan, tetapi dengan pengetahuan dari buku ini saya membuat game 3D yang kasar. Tidak ada tabrakan dinding, item berbasis sprite akan rusak secara acak setelah beberapa waktu, dan saya tidak pernah benar-benar menguasai rasa memakai perkalian matriks alih-alih transformasi geometri, tetapi buku ini mengukuhkan kecintaan saya pada pemrograman pada titik ketika, tanpa proyek yang cukup mendalam, saya mungkin tidak akan melangkah lebih jauh
Guru itu tidak tahu matematikanya, dan bahkan ketika mengajarkan matriks di Aljabar II, ia tidak bisa benar-benar menjawab bagaimana matriks digunakan di “dunia nyata”
Namun entah bagaimana saya menemukan artikel grafika 3D di majalah Byte beberapa tahun sebelumnya, yang berisi penggunaan matriks dan titik untuk rotasi dan sebagainya
Dengan itu saya memutar sebuah kubus di PET 2001. Dalam kemegahan layar 40x24. Sebenarnya hanya 8 titik, dan kalau menyipitkan mata di tempat gelap, bentuknya tampak seperti kubus
Belakangan di universitas, saya bisa memakai mikrokomputer berbasis storage tube Tektronix. Berbeda dari terminal, perangkat itu berdiri sendiri, dan bisa merender kubus dengan cukup baik. Saya juga pernah memasukkan satu per satu mobil yang saya buat susah payah di kertas grafik ke dalam pernyataan DATA di BASIC bawaan
Pada masa itu, buku Foley-Van Dam awal adalah buku grafika yang diidamkan semua orang
Di kuliah, saya mendapat C untuk “Survey of Physics”, dan matematika untuk memodelkan fenomena fisika benar-benar sulit bagi saya. Kalkulus dan hal-hal abstrak semuanya saya kuasai, tetapi saya tidak tahu itu mengatakan apa tentang diri saya
Jika Anda tertarik dengan ini, kursus online yang sedang saya ikuti sekarang mungkin juga menarik: https://pikuma.com/courses/learn-3d-computer-graphics-progra...
Pengajarnya mengajar materi ini di sebuah universitas di London, dan jelas terasa ia punya banyak pengalaman mengajar. Sejauh ini lajunya juga sempurna, dan persis seperti deskripsi kursusnya. Setelah menyelesaikan kursus grafika ini, saya berencana mengikuti satu per satu kursus lain dari pengajar yang sama
Kursus ini mengajarkan cara memprogram grafika dari dasar dengan C, dan satu-satunya dependensi adalah SDL2. Pada awalnya Anda membuat abstraksi SDL2 yang memungkinkan menetapkan warna tiap piksel, lalu seluruh kursus dibangun di atasnya. Strukturnya adalah: jika Anda bisa menentukan warna satu piksel, bisakah Anda menggambar sisanya sampai menjadi burung hantu 3D bertekstur
Saya mengikuti kursus ini dengan Rust, hanya memakai binding SDL2 untuk Rust. Saya menikmatinya, dan karena merasa ini transaksi yang jujur sekaligus kursus yang bagus, saya ingin membagikannya. Saya jarang melihat kursus-kursus ini dibicarakan di tempat lain
Saya ingat pernah punya buku ini. Mungkin saat berusia sekitar 14–15 tahun, ketika baru saja mengikuti pelajaran terbang pertama dan mulai benar-benar tergila-gila pada penerbangan
Saya juga punya MS Flight Simulator dan belajar C++ secara otodidak, tetapi isi buku ini sedikit terlalu berat untuk level saya saat itu. Meski begitu, menyenangkan mengingat kembali kegembiraan ketika mendapatkan buku ini dengan harapan bisa membuat simulator penerbangan sendiri. Tentu saja, kalau ingatan saya benar, simulator yang dibuat di buku itu nyaris tidak bisa dimainkan
Buku ini dan “The Black Art of 3D Game Programming” adalah dua buku favorit saya saat kecil
https://archive.org/details/BlackArt3DEBook
Menariknya, ketika secara acak membuka halaman 216, saya menemukan metode yang agak dasar tetapi stabil untuk memetakan koordinat dunia 3D ke permukaan bola, dan kebetulan belakangan ini saya membaca solusi pembuatan dunia yang sama sekali berbeda di No Man's Sky
https://www.polygon.com/2017/3/2/14790028/no-mans-sky-was-fl...
Saya berharap tulisan seperti ini lebih banyak muncul bahkan sekarang. Benar-benar keren
Tapi tautan ePub-nya tidak bisa diunduh:
https://ia904505.us.archive.org/epub/index.php?id=build-your...
No valid doc name could be determinedSayang sekali, tapi sepertinya harus puas dengan PDF. Sayang juga web viewer Internet Archive kurang bagus
Tautan PDF yang berfungsi: https://archive.org/download/build-your-own-flight-sim-in-c-...
Saya masih punya program-program yang saya tulis sambil mengikuti buku ini. Pengalaman menghidupkan dunia 3D terasa seperti sihir. Dimulai dari layar hitam, menggambar beberapa garis, lalu menggerakkannya dengan cara yang tepat, dan tiba-tiba ada sebuah dunia di dalam layar. Sekarang sulit mendapatkan perasaan yang sama
Seingat saya, saya menerima buku ini sebagai hadiah ulang tahun ke-13, jadi sebagian matematikanya agak sulit bagi saya saat itu. Meski begitu, belajar assembly dan menggali algoritma yang lebih rumit seperti polygon clipping adalah latihan yang luar biasa bagi programmer pemula
Menarik melihat berapa banyak halaman yang dipakai buku ini untuk menciptakan sebuah semesta. Waktu itu bukan zaman ketika cukup menyalakan library OpenGL dan menginisialisasi stack
Buku ini dimulai dari hal-hal seperti register apa yang harus disetel agar kartu VGA masuk ke mode yang benar, cara membaca bitmap dan palet dari disk, cara menulis sendiri run-length encoder untuk menghemat memori bitmap, dan register apa yang harus disetel pada port joystick
Saya mengikuti buku ini sampai selesai. Karena mengerjakannya di Mac, perlu beberapa modifikasi, tetapi saya mengimplementasikan algoritma Bresenham, polygon clipping, back-face culling, dan sebagainya
Biasanya saya mungkin akan mentok pada matematika seperti matriks, dot product, dan cross product yang baru pertama kali ditemui, tetapi untungnya saya sedang mengambil aljabar linear pada semester musim panas di universitas, jadi isi buku ini cukup selaras dengan kuliah
Kalau ingatan saya benar, buku ini menyertakan floppy 5,25 inci berisi simulator yang memungkinkan kita terbang di sekitar gunung berbentuk piramida. Mengingatkan saya pada kenangan indah