Selasa, 30 Maret 2010

Banyak aplikasi yang dapat digunakan untuk membuat game 2D, diantarnya adalah :


1. AGS ( Adventure Game Studio)

AGS adalah program yang khusus untuk membuat game bertipe “point and click”. Mungkin sebagian dari kita ada yang tidak mengetahui apa yang dimaksud dengan “point and click”. Point and click adalah jenis game yang umumnya bertipe adventure atau puzzle.

2. Game Maker

Game maker merupakan suatu program yang bisa dikatakan cukup simple dan mudah untuk digunakan. Dengan program ini kita dapat menciptakan game jenis apa saja yang kita inginkan contonhnya racing, action, fighting, rpg, adventure, puzzle, tactic, simulation, dll.

3. Macromedia Flash (Adobe Flash)

Program ini biasa digunakan untuk membuat presentasi atau disain web, tetapi selain itu dengan sedikit kreatifitas kita dapat membuat game sederhana dengan program ini.

Dalam membuat suatu game/permainan pastinya kita sebagai manusia sangat mungkin banyak melakukan kesalahan atau walaupun kita sudah anggap sempurna tapi belum tentu bagi orang lain. Untuk itu sangat disarankan untuk mengecek ulang atau kalau perlu meminta bantuan teman untuk mencoba memainkan dan mencari kesalahan/kelemahan yang ada pada game yang kita buat.

Selasa, 23 Maret 2010

Game 3D sederhana

TEKNIK PEMBUATAN GAME 3D SEDERHANA

Pada tutorial ini saya akan membahas teknik-teknik pembuatan game 3D sederhana. Game yang dijadikan model adalah game labyrinth. Game labyrinth adalah game untuk mencari jalan keluar. Game ini adalah game kesukaan saya ketika masih kecil.

Pembahasan game tidak bisa lepas dari matematika dan fisika. Untuk itu maka dalam mengikuti tutorial ini, saya sarankan anda untuk mengingat kembali pelajaran tentang matematika dasar, trigonometry, rumus-rumus segitiga, vektor, dan matrix. Saya sendiri sebenarnya juga tidak begitu pintar dalam masalah matematika, oleh karena itulah maka disini saya hanya membahas game yang sangat sederhana yaitu labyrinth. Perhitungan matematika yang ada disini hanya merupakan perhitungan matematika dasar, dimana masih banyak cara yang lain yang sebenarnya lebih cepat, namun lebih sulit dipahami karena memang matematika sebenarnya bukanlah bidang saya.

Struktur game labyrinth:

Game labyrinth terdiri dari dua komponen utama, yaitu pemain dan tembok. Untuk mempermudah pembuatan game, tembok diganti dengan kubus yang disusun-susun secara berjejer-jejer membentuk tembok, jalan, tikungan dan lain sebagainya. Struktur ini adalah struktur yang paling banyak dipakai karena kemudahannya.


Karena game ini adalah game 3d, maka pemain utama tidak diperlihatkan. Permainan mengambil sudut pandang dari orang pertama. Apa yang tampak dilayar adalah apa yang tampak dari “mata” pemain utama. Pemain utama biasanya diberi istilah kamera, karena prosesnya memang mirip dengan kamera.

Dalam gambar diatas ada istilah FOV (Field of View) atau area pandangan. Semua yang berada di area FOV akan tampak oleh pemain utama/kamera dan akan tampak pula di layar.

FOV dari atas akan tampak seperti trapesium, walau bentuk sebenarnya dari FOV adalah mirip limas yang dipotong di ujungnya, dikenal juga dengan istilah frustum.

garis merah adalah batas dekat penglihatan/layar (jaraknya terserah, tapi jarak standard yang dipakai adalah 160)

garis biru adalah batas jauh penglihatan (biasanya diberi jarak 1000)

garis hijau adalah batas kiri, kanan, atas, dan bawah penglihatan.

FOV biasanya memiliki besar sudut 90 derajat untuk sudut yang berada di bawah. Hal ini untuk memudahkan dalam penghitungan selanjutnya.

about game..

Jenis / Genre Game

Gw sih sangat ingin membuat game RPG, karena di dalam game RPG kita bisa membuat mini-game dengan genre apapun di dalam sebuah RPG. Masalahnya RPG adalah tipe game yang butuh paling banyak waktu development, jadi sepertinya impian gw gak akan terjadi dalam waktu dekat. Huuuuhhh…

Game RTS juga sepertinya tidak akan berhasil sebagai proyek pertama karena kompleksitasnya. Begitu juga dengan FPS (karena harus 3D cuy!). Menurut gw genre game yang bisa dibuat antara lain (beserta contoh):

* turn-based strategy (Civilization, Heroes I – IV)
* fighting (Tekken)
* arcade (game-game konsol klasik yang side-scrolling, kayak tembak2an pesawat (kuno banget ih…?), Rockman)
* puzzle (Sudoku, Sokoban, Chip’s Challenge)

Platform yang Akan Dipakai

Pilihan yang paling gampang adalah membuat game di PC, karena hampir semua orang punya komputer. Testing pun akan mudah. Kita juga bisa memilih bahasa pemrograman apapun, dan banyak library untuk game development sudah tersedia. Tetapi, game-game di PC biasanya sangat bagus dalam hal artworknya, jadi kalau game-nya mau bagus kita juga harus membuat artwork yang canggih pula. Bahkan mungkin kita harus membuat game 3D yang rasanya tidak akan selesai untuk proyek pertama.

Ada juga alternatif yang cukup menarik yaitu membuat game untuk HP. Game HP perlu desain gameplay yang unik karena interfacenya yang memang bukan untuk bermain game (tidak ada mouse, hanya tombol angka dan directional pad saja). Lagipula, artwork di game-game mobile tidak bisa semewah game PC (karena keterbatasan prosesor dan memori). Lalu karena ukurannya yang kecil, proyek akan cenderung lebih cepat selesai. Tapi hanya satu bahasa yang bisa dipakai yaitu Java (varian J2ME pula).

Selain itu kita juga bisa membuat game yang web-based seperti Tribalwars, MyMiniCity, Kingdom of Loathing, atau game-game yang ada di Facebook. Kalau mau membuat game seperti ini kita harus berkomitmen untuk biaya server, jadi sepertinya game jenis ini kurang tepat untuk kita yang bermodal nol >.<.
Masalah Tim dan Development

Menurut gw untuk pertama kali kita membuat game yang simpel dulu tapi memerlukan kerja setiap anggota tim. Dari situ kita dapat melihat apakah tim kita cukup solid dan bisa diatur :D. Setelah itu, baru kita mulai proyek sebenarnya. Tahap planning proyek sebenarnya bisa dilakukan paralel dengan development proyek “mainan” kita.

Konsep game yang akan dibuat harus menarik, sampai-sampai anggota tim punya motivasi untuk menyelesaikannya. Jangan sampai banyak anggota yang merasa malas melanjutkan proyek karena melihat bahwa tujuan yang mau dicapai tidak menarik baginya.

Sebelum pembuatan game, kita harus membuat cetak birunya dulu selengkap mungkin. It’s hard to hit a moving target. Memang kita pasti akan fleksibel untuk mengubah cetak biru di tengah development, tetapi akan sangat baik kalau apa yang mau kita kerjakan sudah didefinisikan dengan jelas sejak awal proyek.

Gw juga udah punya gambaran untuk masalah kolaborasi. Nanti semua kode, gambar, diskusi dll. akan ditaruh di suatu website, dan kita akan menggunakan sistem yang biasa digunakan untuk collaborative development via internet. Menurut gw kalau kita punya kemauan sih bisa aja, buktinya banyak proyek open source yang hampir semua developernya tinggal di negara-negara yang jauh satu sama lain. Mereka juga hanya mengerjakan segalanya secara part-time, sama seperti kita.

Kira-kira nanti kita akan memiliki divisi-divisi ini:

* software development: orang2 yang melakukan coding dan membuat implementasi
* artist: orang2 yang membuat gambar sprite, efek-efek ledakan / darah dll., sound effect, music / BGM, dll.
* concept: orang2 yang berkreasi mengenai gameplay, bagaimana membuat game kita menjadi menyenangkan
* test: orang2 yang mengetes game untuk mencari bug, meningkatkan gameplay dll.
* coordinator: orang2 yang mengkoordinir jalannya proyek, membuat timeline, roadmap, target jangka menengah dan panjang, waktu release, public beta dll. (mungkin satu-dua orang cukup)