Sedikit Sharing Tentang Game

Sesuai dengan judulnya, gw kali ini mau ngebahas sedikit tentang game. Bukan, bukan ngebahas tentang game-game yang gw mainin. Gw mau ngebahas sedikit tentang pembuatan game, berhubung akhir-akhir ini gw liat cukup banyak lomba bikin game & kebetulan gw juga punya sedikit pengalaman bikin game sendiri (gara-gara tugas kuliah).

Gw dapet tugas bikin game ini tahun lalu, tepatnya waktu gw masih semester tiga, untuk mata kuliah Pemrograman Berorientasi Objek. Nggak, gw nggak bersolo karir waktu bikinnya. Kelompok gw isinya ada tiga orang, & kita bagi-bagi tugas. tugas gw waktu itu bukan sebagai programmer, jadi gw nggak bakal terlalu banyak ngebahas soal kodingan. Tapi yang jelas kita bertiga bikin game pake bahasa pemrograman C++ & library Simple Directmedia Layer atau biasa disingkat SDL.

Waktu itu, kita ditugasin untuk bikin game bergenre strategy. Jadi kita nyontoh game Plants vs Zombies untuk tugas ini. Ya, game yang kita buat waktu itu bisa dibilang versi rusaknya Plants vs Zombies dengan sepasukan Pedobear sebagai musuhnya. Gamenya bisa didownload di sini, lengkap dengan source codenya. Kelompok temen gw (yang bikin gamenya bagus) juga ada ngupload gamenya biar bisa didownload. Game dari kelompok temen gw itu bisa didownload di sini, nggak termasuk source code.

Kalo kata gw, bedanya kita bikin program game dengan program-program database & lain-lain yang paling keliatan itu di bagian grafis & collision detectionnya. Di program-program selain game juga tampilan itu penting, tapi nggak terlalu banyak gerakan & variasinya dibanding dengan game. Game yang dibuat kelompok gw itu tadi emang agak cacat dari sisi grafis, berhubung gw (yang bertugas bikin spritenya) nggak begitu jago desain grafis. Hasilnya kaku banget. Ada beberapa cacat yang dari kesalahan programmer sih, jadi yang seharusnya ada animasinya jadi nggak begitu keliatan gara-gara delay gerakannya terlalu cepet. Kalo yang dibuat kelompok temen gw emang bagus punya.

Untuk bikin tampilan grafis game itu sedikit ribet sih. Sprite yang dibuat harus bagus detil-detilnya biar gamenya keliatan bagus, & rangkaian gambar-gambar untuk gerakan spritenya harus bisa ngepas. Karena itu, bagian ini sebenernya lebih masuk ke bagian anak-anak DKV. Sekalian promosi kampus aja nih ya, seinget gw sih di kampus gw (UMN) jurusan DKVnya ada peminatan untuk fokus ke game.

Kalo masih pada inget, di paragraf tadi gw ada nyebut-nyebut collision detection. Collision detection itu…gw agak males ngejelasin panjang-panjang, jadi bisa diliat di sini aja. Intinya, collision detection itu gunanya untuk nyegah objek-objek dalam game biar nggak bisa nembus objek lainnya. Misalnya di game RPG kayak Final Fantasy. Kita nggak bisa nembus tembok dungeon karena ada collision detectionnya. Jadi waktu karakter yang kita kendaliin ada di jarak tertentu dari temboknya (biasanya pas udah mepet banget), karakter kita distop & nggak bisa bergerak ke arah temboknya. Atau kayak di game-game macem Angry Birds, biar programnya tau kalau burungnya sukses ngenain objek-objek dalam game kayak kayu, es, batu, atau babi.

Collision detection ini sedikit lebih ribet untuk game yang 3D dibandingin dengan game-game 2D. Kalo buat game-game yang 2D, kita cuma perlu ngatur untuk bagian ke arah kiri, kanan, atas, & bawah. Untuk game-game 3D, kita perlu nambahin dua arah baru lagi untuk collision detectionnya. Promosi kampus lagi, untuk jurusan TI, SI, & SK di kampus gw ada peminatan untuk ke arah game development. Di situ nanti diajarin bikin game 3D pake bahasa pemrograman C# & (kalo gw gak salah) library OpenGL. Ada UKM game development juga loh!

Ah ya, untuk yang berminat nyobain bikin game pake bahasa pemrograman C/C++ & library SDL bisa cek tutorialnya di Lazy Foo’ Productions.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s