ketika pembahasan mengenai apa itu game dan revolusinya, maka yang perlu diketahui selanjutnya adalah bagaimana cara pembuatan game itu sendiri.
pembuatan game secara logika sama dengan membuat program biasa. bahasa pemrograman yang dapat digunakan untuk membuat game sperti C/C++ , JAVA, Python, Php, dll. tidak ada aturan tertentu yang mengatur bahasa mana yang boleh digunakan untuk membuat game. guanakan saja bahasa pemrograman yang kita kuasai sehingga tentu lebih memudahkan pemahaman dalam proswes pembuatan game tersebut.
membuat sebuah game memerlukan proses yang panjang dan sangat kompleks. pembuatan game tidak jauh beda dengan pembuatan program perangkat lunak pada umumnya. terdapat beberapa tahap atau session dalam proses pembuatan game. ada tahap merancang, membuat flowchart, menulis source code, menguji program, debugging, mengompile, dan akhirnya lalu mendistribusikan kepada masyarakat umum. perbedaan dari game dengan perangkat lunak adalah adalah game memiliki banyak objek unik yang kompleks disamping teknis pemrograman itu sendiri. suatu game tidak hanya melibatkan penciptaan source code program saja, melainkan objek lain seperti animasi, musik, kecerdasan buatan (AI),SFX, citra 2D dan 3D, alur cerita, hukum ekonomi, dan lain sebagainya.
konteks sederhana dari pembuatan game adalah:
1. merancang/designing.
2. mewujudkan rancangan.
3. memprogram/mengcompile.
perancangan game
merancang suatu game memerlukan pemikiran yang total, karena disinilah peran sang designer untuk mengembangkan bagaimana game yang akan dibuatnya menjadi menarik dan bagus. untuk merancang suatu game yang sangat “canggih” dibutuhkan waktu yang lama. hal ini dikarenakan seorang game designer membutuhkan waktu yang bisa jadi bertahun-tahun hanya untuk mengumpulkan ide dari suatu game yang akan dibuat nantinya. dalam mendesain/merancang game, seorang designer (atau satu team designer) mengumpulkan ide-ide terlebih dahulu selama beberapa waktu. Ide yang dimaksud adalah :
1. seperti apa game itu nantinya,
2. bisa dimainkan oleh berapa orang,
3. genrenya apa,
4. memakai sistem skor atau tidak,
5. karakterkarakternya (termasuk sketsa/gambarnya plus biodata juga),
6. aturan-aturan permainan (HP/MP/FP/LP/lainnya),
7. cerita dalam game (ini bisa saja menjadi novel jika diterbitkan sendiri :D ),
8. berapa level karakter,
9. perilaku karakter pada tiaptiap level,
10. equipment/peralatan karakter (pedang, pistol, palu, parang, panah, sekop, helm, pakaian/zirah, tato, bom, senjata mesin, bazoka, dsb.),
11. lingkungan tempat karakter beraksi (termasuk dunia, peta, jalan raya, bangunan, dsb.),
12. kendaraan (mobil, kereta, pesawat, kapal, papan luncur, sepeda motor, dsb.),
13. tipe akhir permainan (closedended atau openended),
14. engine yang akan digunakan,
15. sistem pencahayaan (HDRI atau tidak),
16. hukum ekonomi ( misalnya perbedaan kurs mata uang dalam game, contohnya ada di RF Online),
17. AI,
18. dan sebagainya.
untuk langkah pembelajaran sebaiknya kita memulai membuat game yang sederhana saja.
mewujudkan rancangan
tahap mewujudkan rancangan adalah kelanjutan dari perancangan suatu game. pada tahap inilah semua kru bekerja. Seniman visual atau disebut juga artist (dalam hal ini bisa 2D atau 3D) memvisualisasikan karakterkarakter, lingkungan, item khusus dan bermacam material/tekstur, atau juga poster. mereka juga bertugas membuatkan animasinya (2D, 3D, bahkan animasi tekstur). perangkat lunak yang biasanya digunakan oleh seorang artist seperti Blender, 3D Studio Max, Maya, Milkshape, Cinema4D, dkk. untuk membuat model dan animasi 3D. Untuk 2D, mereka biasanya memakai Photoshop, CorelDRAW, TextureMaker, dkk. dalam membuat karakter 2D dan material/tekstur.
Pengisian suara pada game adalah kebutuhan tersendiri dari suatu game. Suara pada game bisa dalam bentuk SFX, dialog, atau musik. terdapat musik latar belakang (biasanya disebut backsound music/BGM), musik khusus (seperti di Guitar Heroes atau Ayodance), sound effects/SFX/efek suara, dan percakapan karakter di dalam game (perlu casting/seleksi pemilihan). dan masih banyak jenis suara-suara yang dapat diselingkan pada game.
SFX adalah suara yang dapat anda dengar seperti ketika anda mendengar suara-suara dari pedang, senjata/pistol, ledakan, kendaraan, air, dsb. SFX adalah efek suara yang direkam dari dunia aslinya dan dimasukkan ke dalam game. suara-suara dari benda-benda dalam game anda dengar sebetulnya adalah suara benda asli yang direkam kemudian dimasukkan ke dalam game. SFX juga dapat dihasilkan menggunakan perangkat lunak (semisal Audacity, LMMS, Wavosaur, atau FruityLoops).
BGM adalah musik yang mengiringi anda setiap kali memainkan Super Mario Bros, Contra Force, RF Online, Ragnarok Online, Cabal Online, atau lainnya. musik ini dimainkan sejak awal permainan sampai game over. suatu game biasanya memiliki banyak BGM, sesuai suasana yang dialami karakter atau yang dibawakan oleh game. dengan demikian maka akan menambah kernyataan (realita) game anda.
programing
programing adalah bagian tersendiri yang tidak ditentukan sebelum atau sesudah tahap lainnya. ketika seniman/artist visual membuat model karakter, programer mempunyai tugas menulis source code untuk physicnya dan dapat juga ditambahkan pada akhir proses, seperti membuatkan cheat. jika desainnya mengharuskan memakai engine sendiri, maka programer harus membangun engine dari nol. bisa engine secara keseluruhan engine untuk fisika (physic), engine untuk suara 3D, engine untuk AI, dsb. ada banyak source code yang harus ditulis oleh programer selain engine. Seperti mengode GUInya, event, sistem pencahayaan, mode multiplayer, jaringan/sistem online, mempersatukan artwork dari semua bagian lain (visual+audio+konsep+dll.), dan lain-lain. programer adalah bagian yang sangat sulit. programer harus bisa berkomunikasi lancar dengan bagian lain, harus menguasai betul bidangnya. jika yang dibuat adalah game 3D bergenre Action atau FPS, maka yang harus dikuasai adalah fisika newtonian, matematika (aljabar dkk.), psikologi (ini untuk bikin AI), dan tentu bahasa pemrograman. bahasa pemrograman yang termahsyur untuk pembuatan game skala besar adalah C++. semua itu tidak harus dikuasai oleh satu orang programer. dalam tim pengembang game, ada lebih dari satu programer. seseorang bertugas memprogram efek air, seseorang bagian fisika, seseorang bagian engine, seseorang bagian AI, dan seseorang sebagai lead programmer yang memimpin keseluruhan. pembagian kerja seperti ini adalah hal yang biasa dalam dunia pembuatan game dewasa ini. jadi dalam satu tim, divisi programer diisi oleh banyak orang.
secara garis besar demikianlah proses pembuatan suatu game. cukup ribet bukan? :)
adios amigos ;)
referensi :
http://rizkiekasatria.wordpress.com/2011/02/25/pembuatan-game/
Langganan:
Posting Komentar (Atom)
0 komentar:
Posting Komentar