FOKUS PADA 3D MODEL
© 2003 oleh Premier Press, sebuah divisi dari Teknologi Kursus. All rights reserved. Tidak ada bagian dari buku ini dapat direproduksi atau ditransmisikan dalam bentuk apapun atau dengan cara apapun, elektronik atau mekanik, termasuk fotokopi, rekaman, atau cara penyimpanan informasi atau pengambilan sistem tanpa izin tertulis dari Premier Tekan, kecuali untuk pencantuman singkat kutipan di review.
Logo Premier Press dan perdagangan terkait adalah merek dagang dari Premier Pers dan tidak boleh digunakan tanpa izin tertulis.
Penerbit: Stacy L. Hiquet
Manajer Pemasaran: Heather Hurley
Akuisisi Editor: Mitzi Foster Koontz
Proyek / Copy Editor: Kezia Endsley
Teknis Reviewer: Kelly Dempski
Interior Layout: Danielle Foster
Sampul Desainer: Mike Tanamachi
Indexer: Kelly Talbot
Proofreader: Jenny Davidson
Wolfenstein, Doom, dan Quake adalah hak cipta id Software. Half-Life adalah hak cipta
VALVE Perangkat Lunak. Unreal adalah hak cipta MegaGames Epic. Seri game Descent
adalah hak cipta Parallax. Milkshape 3D diciptakan oleh perusahaan chUmbaLum lembut.
Discreet adalah sebuah divisi dari Autodesk, Inc, 3d Studio Max, 3D Studio VIZ, Studio Karakter,Api, Api, Flint, Frost, Inferno, Lightscape, Asap, Streaming, dan Wire terdaftar
merek dagang, dan Discreet, 3ds Max, Backdraft, Pembakaran, Jobnet, dan Sparks yang
merek dagang dari Autodesk, Inc, Discreet Logic Inc di Amerika Serikat dan / atau negara lain.
Mental ray adalah merek dagang terdaftar dari citra mental GmbH & Co KG. Vecta3D-MAX adalah merek dagang dari IdeaWorks3D, Ltd Semua nama merek, nama produk, atau merek dagang milik pemegang masing-masing. (C) Copyright 2002 Autodesk, Inc All rights reserved.
Penting: Premier Press tidak dapat menyediakan dukungan perangkat lunak. Silahkan hubungi produsen perangkat lunak dukungan teknis baris atau situs Web untuk bantuan.
Premier Press dan penulis telah berusaha untuk membedakan merek dagang eksklusif dari istilah deskriptif dengan mengikuti gaya kapitalisasi yang digunakan oleh produsen.
Informasi yang terkandung dalam buku ini telah diperoleh oleh Premier Press dari sumber
yang dapat dipercaya. Namun, karena kemungkinan kesalahan manusia atau mekanis oleh sumber kami, Premier press, atau orang lain, Penerbit tidak menjamin keakuratan,kecukupan, atau kelengkapan informasi apapun dan tidak bertanggung jawab atas kesalahan atau kelalaian atau hasil yang diperoleh dari penggunaan informasi tersebut. Pembaca harus menyadari fakta bahwa Internet adalah entitas yang selalu berubah. Beberapa fakta mungkin telah berubah sejak buku ini dicetak.
ISBN: 1-59200-033-9
Katalog Perpustakaan Kongres Nomor Kartu: 2002111229
Dicetak di Amerika Serikat
03 04 05 06 07 BH 10 9 8 7 6 5 4 3 2 1
Premier Press, sebuah divisi dari Teknologi Kursus
2645 Erie Avenue, Suite 41
Cincinnati, Ohio 45208
UCAPAN TERIMA KASIH
Terlebih dulu, terima kasih kepada orang tua saya untuk mengizinkan saya melakukan hal ini; tanpa dukungan merka dan mensupport dengan tidak melihat saya sebagian besar musim panas ini tidak akan pernah mungkin terjadi.
Sebuah berkat besar untuk Trent Polack telah membantu saya mengamankan kesepakatan ini buku dan
menjadi seorang teman yang mengagumkan dan programmer. Tanpa kalian, aku tidak akan pernah berhasil sampai ke tempat saya hari ini.
Aku tidak bisa melupakan semua orang yang besar atas di gamedev.net, flipcode.com. Kalian telah berharga dalam membantu saya memilah-milah masalah, bug squash, dan teman-teman terbaik. Ada terlalu banyak nama, tapi beberapa yang telah terbukti tak ternilai telah Nicholas Cooper, Sean Kent, Denis Lukianov,Ron Penton, dan Henrik Stuart.
Untuk teman saya dan penyelamat Amy untuk paksa menyeretku menjauh dari komputer saya dan keluar dari ruangan saya setiap begitu sering, itu membuat saya gila.
Terakhir, namun pasti tidak sedikit, yang besar berkat orang-orang Premier Press, terutama Mitzi untuk tetap dengan saya sepanjang waktu aku sedang menulis. Dukungan Anda telah hebat, bahkan melalui komputer,Internet, dan masalah komunikasi. Semua editor yang bekerja, anda semua telah mengajari saya banyak pelajaran berharga karena saya telah bekerja pada buku pertama saya. Saya berharap untuk bekerja dengan kalian semua lagi.
Tentang Penulis
Evan Pipho selalu tertarik pada komputer dan elektronik. Sebagai anak muda, ia belajar untuk mengoperasikan IBM PC ayahnya, bermain game, dan bereksperimen dengan banyak program di dalamnya. Sambil bermain dengan mesin Windows ayahnya, dia mulai mengenal bahasa seperti QBASIC dan C dan menghabiskan waktunya untuk pengembangan game. Dia telah memutuskan sejak lama bahwa ia ingin mengejar pengembangan game, sehingga ia langsung belajar dan masuk beberapa kelas di perguruan tinggi dan beberapa bulan di depan komputer, dia ketagihan!
Anda dapat mengunjungi forum penulis di http://www.codershq.com. Klik Forum link. Jika Anda lebih suka email pribadi ke forum publik, Anda dapat hubungi dia di evan@codershq.com.
DAFTAR ISI
Surat dari Editor .............. xvi
Pendahuluan dan Ikhtisar .................... xix
Bab 1 Meninjau Matriks dan Vektor .............. 1
Bab 2 Pengantar Quaternions ................. 23
Bab 3 Quake II MD2 Model ....................... 37
Bab 4 OBJ ............................... 61
Bab 5 Sebuah Pengantar Animasi rangka ..... 71
Bab 6 Milkshape 3D .................................... 87
Bab 7 Model 3ds ................................ 109
Bab 8 MDL, Format Half-Life legendaris ... 127
Bab 9 Masukkan Quake: Quake III
Format MD3 ..................................... 135
Bab 10 Tips, Trik, dan Metode .................... 153
Lampiran A Format Model 3D Umum ................. 165
Lampiran B STL Primer Vector ........................... 169
Lampiran C Pergi Di atas dan Beyond .................... 183
Indeks .............................................. 191
ISI
Surat dari Editor ..................... xvi
Pendahuluan dan Ikhtisar ........................... xix
BAB 1 Meninjau Matriks
dan Vektor .......................... 1
Memahami dan Menggunakan Matriks .............................................. 2
Zero dan Matriks Identitas ............................................ .................................. 3
Operasi matriks ………………………………………………………………5
Determinan Matriks ............................................... ...........................................8
Para Invers dari Matriks……………………………………………………… 9
Menggunakan dan Memahami Vektor .............................................. ................12
Notasi vektor…………………………………………………………………..14
Besaran Vektor dan Unit .............................................. .....................................14
Aritmatika vektor............................................... ................................................14
Produk vektor………………………………………………………………… 17
Transformasi Vektor dengan Matriks ............................................ ............... 19
Para CD Kode………………………………………………………………… 20
Kesimpulan……………………………………………………………………. 21
BAB 2 Pengantar Quaternions ....................... 23
Apakah angka empat dan Mengapa Apakah Mereka Digunakan? .................... 24
Angka empat Operasi ................................................ ....................................... 26
Konversi angka empat ................................................ ...................................... 28
Interpolasi dengan Quaternions ............................................... ...........................34
LERP (Interpolasi Linear Quaternions) ........................................... ...................35
SLERP (Bulat Linear Interpolation) ............................................ ........................35
Kesimpulan …………………………………………………………………….36
BAB 3 Quake II
Model MD2 ....................... 37
Memahami Fungsi FILE............................................. ........................................ 39
Melihat Kode Sumber ............................................. ............................................43
Data: Frame dan simpul ............................................ ..........................................46
Membuat Ini Padat: Segitiga………………………………………………….. 48
Hasil rendering untuk Pertama Kalinya ........................................... ...................50
Kecantikan: Menambahkan Skins .............................................. .........................52
Membuat Ini Pindah: Animasi ............................................. ...............................55
Strip dan Fans: Perintah GL ............................................ ....................................56
Kesimpulan……………………………………………………………………. 58
BAB 4 Memuat File OBJ ... …………………………………………………61
Parsing File Teks ……………………………………………………………...62
Memahami Format obj .............................................. .........................................63
Memuat Format OBJ ………………………………………………………….66
Rendering ……………………………………………………………………..68
Kesimpulan ……………………………………………………………………70
BAB 5 Sebuah Pengantar Animasi rangka ............... ………………………71
Memahami Animasi rangka ............................................... .................................73
Manfaat Animasi rangka .............................................. .......................................73
Cara kerja batin Animasi rangka ............................................. ............................75
Keyframes dalam rangka Animasi .............................................. .........................77
Mengambil Posisi ………………………………………………………………78
Menempelkan Mesh …………………………………………………………….80
Demo ……………………………………………………………………………82
Demo Kontrol …………………………………………………………………...82
Aplikasi Advanced Animasi rangka ............................................. ....................... 85
Kesimpulan ……………………………………………………………………...86
BAB 6 Milkshape 3D ........ …………………………………………………….87
Mendapatkan Data ………………………………………………………………88
Simpul …………………………………………………………………………...89
Wajah ……………………………………………………………………………90
Jerat ……………………………………………………………………………...92
Bahan ……………………………………………………………………………93
Animasi …………………………………………………………………………99
Menemukan Orangtua Hilang .............................................. ...............................101
Persiapan Awal ………………………………………………………………...102
Animasi dan Interpolasi ............................................... ........................................103
Kesimpulan …………………………………………………………………….108
BAB 7 Para Model 3ds .... …………………………………………………….109
Memahami File 3ds Chunky .............................................. ..................................110
3ds Chunk Header: Mulai ............................................ ........................................112
3ds File Data ……………………………………………………………………113
Header 0x4D4D ………………………………………………………………...113
Para 0x0002 Versi Chunk .............................................. ......................................113
Objek dalam Chunk 0x4000 ............................................. ...................................113
Bahan 0xAFFF …………………………………………………………………120
Rendering 3ds File Anda ……………………………………………………….122
Kesimpulan ……………………………………………………………………..125
BAB 8 MDL, Para Legendaris Half-Life Format ................ ………………..127
File Viewer MDL Valve .............................................. ........................................129
Menginisialisasi Model ………………………………………………………130
Rendering Kode MDL .............................................. .........................................131
Menghidupkan Model ………………………………………………………...131
Untuk Praktek selengkapnya ... ……………………………………………….132
Kesimpulan …………………………………………………………………....133
BAB 9 Masukkan Quake:Quake III MD3 Format ....... …………………...135
Mengambil data ……………………………………………………………….137
Header MD3 …………………………………………………………………..138
Boneframes ……………………………………………………………………138
Struktur Tag MD3 ……………………………………………………………..140
Jerat …………………………………………………………………………….141
Menggunakan Model Multi-Bagian ……………………………………………148
Tags …………………………………………………………………………….149
Kesimpulan …………………………………………………………………….151
BAB 10 Tips, Trik,dan Metode ...................... ……………………………….153
Menghitung normals Wajah ............................................... .................................154
Menghitung Vertex …………………………………………………………….155
Membuat Format Sendiri .............................................. .......................................156
Format Teks Berbasis ………………………………………………………….156
Format biner Berbasis .............................................. ............................................157
Perencanaan File ……………………………………………………………….157
Membuat File …………………………………………………………………..160
Interpolasi linier ………………………………………………………………..161
Tips Pengoptimalan ……………………………………………………………162
Kesimpulan ………………………………………………………………….....164
LAMPIRAN A Model 3D Umum
Format .......................... 165
LAMPIRAN B STL Vector Primer ……………………………………………169
STL ……………………………………………………………………………..170
Dasar-dasar dari Menggunakan Vektor ............................................. ..................170
Penyortiran ……………………………………………………………………..173
Pencarian ……………………………………………………………………….174
Menggunakan Objek Sendiri .............................................. .................................176
Pointer ………………………………………………………………………….179
Kesimpulan …………………………………………………………………….181
LAMPIRAN C Pergi atas
dan Beyond ....................... 183
Untuk Informasi Lebih Lanjut ………………………………………………….186
Apa yang ada di CD …………………………………………………………….188
Indeks ................................................. ..... ………………………………………191
Surat dari Editor
Sebagai programmer game 3D, cepat atau lambat waktu datang ketika Anda bosan dengan kubus dan terbang berputar kapal ruang dalam ruang. Anda ingin karakter 3D sepenuhnya diartikulasikan dan animasi. Jadi Anda mulai mencari di Internet untuk daripadanya informasi,dan cepat atau lambat Anda menyadari bahwa meskipun ada banyak situs dengan informasi-dan banyak demo-itu semua agak berguna dalam realitas. Ada terlalu banyak lubang dalam format file penjelasan, dan pada akhirnya Anda mungkin akan lebih baik reverse-engineering file daripada menyeberang melalui hacker dokumen setelah dokumen hacker.
Masalah ini adalah salah satu yang saya pribadi telah berurusan dengan
untuk waktu yang lama. Ketika saya pertama kali ingin menulis sebuah file Quake
loader, saya berpikir bahwa akan mudah, harus ada satu miliar
situs di Internet dengan penjelasan yang jelas dan ringkas, kan?
Namun, tidak ada! Sejauh yang saya tahu ada benar-benar hanya
satu pun dokumen pada Internet dengan format file. MD2,
dan itu tidak lengkap, tetapi lebih dari sebuah FAQ. Selain itu, ini
hanya format file, tetapi tidak benar-benar menjelaskan semua rincian. Hal ini
hanya satu contoh. Ada banyak. Intinya adalah bahwa
apakah itu format permainan seperti Quake itu. MD2 atau. MD3 atau 3D
Format file Studio Max, tidak ada cukup tempat tunggal untuk menemukan
informasi. Masalah ini adalah motivasi untuk buku ini.
Tujuan saya untuk buku ini adalah untuk memberikan referensi tunggal untuk
format file yang paling populer, tetapi pada saat yang sama mengajari Anda bagaimana untuk menggunakannya. Artinya, itu berguna untuk menunjukkan cara membacasetiaptombol frame dari file MD2. jika Anda tidak tahu bagaimana untuk interpolasi mereka. Dengan demikian, penulis, Evan Pipho, tidak hanya mencakup setiap format file penting (dalam alasan), tapi dia juga dibahas
materi dasar seperti matematika, animasi tulang,
dan banyak lagi. Jika Anda membuka buku ini tidak mengetahui satu hal pun
tentang karakter animasi 3D, pada akhir buku ini, Anda akan
tahu bagaimana bekerja dengan semua format file yang populer, bagaimana
menulis pembaca, dan bagaimana untuk benar-benar menghidupkan jala-jala secara realtime
dalam aplikasi Anda. Tentu saja, buku ini mengasumsikan bahwa Anda sudah familiar dengan grafis 3D, DirectX (atau OpenGL) dan
Anda dapat membuat mesin 3D sempurna baik memanfaatkan suatu
API atau secara manual dengan perangkat lunak yang minimal dapat membuat
poligon dan melakukan kliping, proyeksi, dan rasterization.
Meskipun demikian, saya tidak bisa mengatakan betapa senang saya tentang buku ini.
Ini yang pertama dari jenisnya-tidak ada buku lain tunggal pada
pasar yang menggambarkan semua format file dari sebuah permainan
pemrogram sudut pandang.
Sebagai kesimpulan, ini adalah buku lagi bahwa tidak ada permainan 3D programmer bisa tanpa.Ketika saya menulis surat ini buku ini tidak
bahkan dicetak, tapi saya mencetak hard copy hanya untuk memiliki
dimeja saya untuk merujuk!
Hormat kami,
AndreLaMothe
Seri Editor untuk Pembangunan Seri Premier Press Permainan.
Pendahuluan
Trend baru merayap ke video game pada tingkat yang luar biasa.Kecenderungan ini membuat game lebih realistis, lebih dipercaya, dan dalam beberapa kasus, lebih menyenangkan. Sebagian besar permainan baru menggunakan tren ini, dan konsumen melahap game-game atas secepat mereka dapat dibuat. Ini tren baru, tentu saja, adalah penggunaan 3D. Dari model pemain untuk dunia game virtual, pemain menuntut beberapa bentuk interaksi 3D.
Gagasan interaksi 3D mencakup banyak genre, bahkan mereka yang secara tradisional telah 2D. Permainan seperti Blizzard Warcraft 3 telah membawa interaksi 3D ke dalam "Real Time Strategy" genre, sebuah genre yang umumnya didominasi oleh game 2D. Bahkan puzzle dan lainnya "nilai game "mulai untuk menghubungkan ke gagasan 3D.
Pada saat yang sama, produsen perangkat keras yang menciptakan yang lebih baik dan lebih cepat perangkat keras. Ultra-cepat prosesor dan kartu grafis mampu menangani jutaan potongan geometri 3D setiap detik menjadi sangat biasa di komputer rumah rata-rata. Hal ini memungkinkan Anda sebagai permainan pengembang untuk menulis game lebih realistis dan grafis yang intensif tanpa
menyebabkan komputer konsumen rata-rata 'untuk merangkak di bawah batu di
melihat mereka. Generasi baru kartu grafis yang memungkinkan lebih dan lebih dari perhitungan harus dilakukan pada kartu grafis, membebaskan sampai prosesor untuk berkonsentrasi pada aspek-aspek lain dari permainan, seperti suara, AI musuh, dan, well, efek bahkan lebih grafis.
Banyak perusahaan telah menyadari bahwa 3D adalah masa depan video game
dan telah bekerja untuk menyediakan pemain dengan top-rate grafis dan realisme,
termasuk yang berikut:
■ id Software (http://www.idsoftware.com) Mulai tahun 1992,
pencipta Wolfenstein revolusioner, Doom, dan Quake
seri adalah salah satu perusahaan pertama untuk mewujudkan impian 3D.
Mesin 3D mereka telah dilisensi oleh perusahaan lain untuk digunakan
dalam permainan yang tak terhitung jumlahnya.
■ VALVE Perangkat Lunak (http://www.valvesoftware.com) Meskipun
VALVE datang dalam sedikit lebih dari id, masih mengguncang dunia dengan
rilis Half-Life pada bulan November 1998. Para grafis
aspek Half-Life adalah pikiran-boggling, belum lagi
maju AI dan alur cerita yang luar biasa. Untuk pertama kalinya, teknologi maju seperti animasi skeletal dan berwarna pencahayaan yang tersedia pada komputer di rumah.
■ Epic MegaGames (http://www.epicgames.com) Dengan indah Unreal Engine, Epic membuka dunia untuk game dengan besar luar daerah, mengakhiri koridor sempit dan kamar kecil dari permainan sebelumnya.
■ Parallax (http://www.pxsoftware.com/) Parallax menunjukkan gamer bagaimana menakjubkan enam derajat kebebasan penuh bisa. dengan serangkaian permainan, Parallax membuka pintu untuk keseluruhan dimensi baru dalam industri game 3D.
■ 3DFX Saya tidak bisa mengabaikan kontribusi dari sekarang almarhum Video produsen chipset. 3DFX memperkenalkan umum publik untuk keajaiban akselerasi 3D dengan 3D hardware rilis dari seri Voodoo kartu video. Mereka adalah tercepat
Anda bisa membeli sampai nVidia TNT2 mereka merilis Ultra. Para kemampuan PC di rumah untuk mempercepat grafis 3D membuka cara untuk baru, permainan grafis canggih.
Perusahaan-perusahaan dan permainan hanyalah beberapa dari banyak kontributor fenomena 3D. Banyak game datang dan pergi, tanpa diketahui oleh masyarakat umum, dan bahkan untuk sebagian besar gamer. Meski begitu, beberapa dari mereka telah memperkenalkan teknologi baru dan ide-ide yang telah mengubah
wajah dunia game selamanya.
Tujuan Buku ini
Kemungkinan jika Anda membaca ini, Anda baru saja mendapat buku, atau
Anda sedang berdiri di sebuah toko buku yang mencoba untuk memutuskan apakah Anda harus mendapatkannya. Jika Anda tertarik untuk membuat game 3D, buku ini akan mengajarkan Anda bagaimana menerapkan sesuatu untuk bekerja dengan salah satu bagian yang paling penting,Model 3D. Buka salah satu game favorit 3D Anda. Lihatlah di sekitar Anda; melihat musuh-musuh di sana? Atau bagaimana yang paket kesehatan dan senjata duduk di pojok menunggu Anda untuk mengambil? Semua fitur ini diciptakan oleh 3DModel yang diciptakan oleh seniman dan dimuat ke dalam permainan oleh programmer seperti Anda.
Jadi sekarang Anda mungkin bertanya-tanya, "bagaimana saya akan mendapatkan keuntungan jika saya mendapatkan buku ini dan apa yang akan saya pelajari "Anda akan mempelajari semua macam barang keren di sini?.
Setelah Anda membaca ini Anda harus dapat:
■ Memahami cara memuat berbagai format model 3D.
■ Tampilan dan menjiwai berbagai jenis model dalam program Anda.
■ Memahami bagaimana animasi kerangka, inovasi yang menggunakan
"Kerangka" dalam model untuk keperluan animasi, bekerja. Rangka animasi menggunakan "tulang" dan "sendi" yang melekat pada model mesh untuk melakukan animasi. Rangka animasi memiliki banyak keunggulan dibandingkan animasi keyframe tradisional, termasuk mengurangi ruang penyimpanan, peningkatan kemudahan animasi untuk seniman, dan gerakan yang lebih realistis. Anda akan belajar jauh lebih banyak tentang teknologi luar biasa nanti dalam buku ini.
■ Lampirkan model untuk model lain untuk membentuk objek yang lebih kompleks.
Dua bab pertama yang didedikasikan untuk review dari matematika penting
keterampilan, dengan review singkat dari vektor dan matriks. Kemudian, setelah Anda membaca penelaahan terhadap angka empat sulit dipahami, Anda harus ditetapkan untuk sebagian besar matematika yang digunakan dalam bab-bab yang tersisa.
Setelah meninjau keterampilan matematika yang diperlukan, Anda pindah tepat ke beberapa format seperti OBJ (Bab 4) dan MD2 (Bab 5). Anda akan berjalan melalui struktur data dan prosedur memuat dibutuhkan untuk setiap jenis. Kode ditaburkan melalui teks dalam bentuk fungsi kecil atau struktur data, tetapi tidak pernah ada besar kode pembuangan.
Dari format yang sederhana, Anda akan belajar tentang dua dari paling penting dan berguna teknologi dalam model 3D: animasi kerangka dan penandaan. Anda sudah belajar apa animasi rangka adalah dalam sebelumnya bullet daftar.
Tagging, karena banyak panggilan itu, adalah kemampuan untuk melampirkan model sehingga mereka bergerak bersama-sama. Teknik ini digunakan untuk melakukan hal-hal seperti melampirkan model senjata ke tangan karakter, atau bahkan model potongan bersama-sama dari bagian, seperti kepala, batang tubuh, dan model kaki. Baca terus untuk Bab 9 dan Anda akan belajar lebih banyak tentang teknologi ini berguna, dan bagaimana berlaku untuk Quake 3 yang Format MD3.
Setelah Anda belajar tentang matematika diperlukan dan bermain sedikit dengan format sederhana,, Anda dapat melihat pada loading beberapa format yang lebih rumit. Beberapa dari ini akan skeletally animasi menggunakan teknik yang dijelaskan dalam bab-bab sebelumnya, dan beberapa mengandung tag untuk membuat model penuh karakter. Sekali lagi, setiap detail dari format akan diuraikan untuk memungkinkan implementasi yang mudah dalam permainan Anda sendiri.
Siapa yang Harus Baca Buku Ini
Anda tidak perlu banyak pengalaman pemrograman untuk menggunakan buku ini. Semua dari kode yang ditunjukkan di seluruh buku ini ditulis dalam C + +, sehingga dasar pemahaman tentang C / C + + adalah suatu keharusan. Demo pada CD ditulis menggunakan C + +, dengan OpenGL sebagai API grafis. Saya mencoba untuk menyimpan semua kode dan demo sesederhana mungkin untuk membuat port ke bahasa lain dan grafis API mungkin. Karena itu, demo mungkin tidak dioptimalkan sebanyak yang mereka bisa, sehingga merasa bebas untuk mencari cara untuk mengoptimalkan dan mempercepat mereka.
Jika Anda perlu memoles baik C + + atau OpenGL, saya sarankan Anda kunjungi http://www.gametutorials.com dan http://nehe.gamedev.net bantuan.
Referensi yang baik lainnya termasuk buku-buku dari Premier Game Programming
seri. OpenGL Game Programming dan Game Pemrograman Semua Dalam Satu akan menempatkan Anda dalam posisi yang sangat baik untuk sisa buku.
Setelah Anda memiliki pemahaman yang layak dari C + + dan OpenGL, Anda hampir siap untuk memulai perjalanan Anda ke dunia luas 3D.
Buku ini mengasumsikan Anda dapat membuat mesin 3D dasar, baik oleh memanfaatkan API atau secara manual dengan perangkat lunak yang, minimal, dapat membuat poligon dan melakukan kliping, proyeksi, dan rasterization.
Anda juga akan perlu memiliki pemahaman yang baik tentang aljabar dan trigonometri.
Memahami vektor, matriks, dan quaternions juga penting. Jika Anda merasa tidak nyaman dengan salah satu dari mereka (kecuali mungkin bagian angka empat, satu tidak ada benar-benar pernah merasa nyaman dengan mereka), saya akan menyarankan kunjungan singkat ke http://www.math.com untuk aljabar dan trigonometri, dan Bab tinjauan 1 dan 2 untuk review vektor,matriks, dan matematika angka empat. Sekarang Anda siap untuk menaklukkan model 3D. Bersenang-senang!
Apa yang ada di dalam CD
Seperti yang anda lihat, ada CD melekat pada penutup belakang buku. Ada banyak hal keren di sana. Semua kode sumber untuk semua format model yang dibahas dalam buku ini, ditambah beberapa tambahan untuk format yang tidak cocok dimasukkan. Juga termasuk adalah 3D ekstra Model yang dibuat oleh komunitas pengembangan game. Silakan cek File README untuk masing-masing model sebelum menggunakan mereka dalam Anda sendiri proyek-proyek. File-file README berisi nama masing-masing penulis, alamat email, dan setiap persyaratan penggunaan bahwa ia telah menempatkan sebagainya mengenai penggunaannya atau karya seninya.
Menggali lebih dalam pada CD, Anda akan menemukan berbagai alat yang digunakan dalam manufaktur 3D model dan obyek terkait lainnya, seperti kulit dan tekstur. Juga termasuk adalah shareware dan versi trial dari software popular. Coba
mereka semua dan melihat mana yang Anda ingin membeli dan menyimpan. Folder tambahan berisi berbagai proyek dan kode sumber yang ditulis oleh orang lain anggota masyarakat. Seperti karya seni, silahkan baca README
file disertakan dengan segala sesuatu untuk menghindari pelanggaran hak cipta.
Sesekali akan ada perbaikan bug dan update untuk kode sumber pada CD. Check out http://books.codershq.com. Saya berharap di masa depan untuk rilis loader lebih untuk jenis lain model 3D, serta port mereka ke bahasa lain dan API, jadi memeriksa situs sering.
Kata Akhir Sebelum Anda Mulai
Saya harap buku ini berguna saat Anda mulai menulis 3D impian Anda. Hal terbaik untuk dilakukan adalah mencoba untuk menulis kode Anda sendiri dari teks,bukan menyalinnya dari contoh-contoh. Anda akan belajar jauh lebih banyak. Jika Anda frustasi pada awalnya, tetap terus mencoba,nanti anda akan bisa. Bahkan nama-nama besar dalam industri game 3D tidak bisa melakukannya dengan benar
pertama kalinya. Ingat, elemen yang paling penting dari pengembangan game adalah untuk bersenang-senang! Selamat membaca.
Tidak ada komentar:
Posting Komentar