Cara membuat game android sendiri dirumah tutorial pertama
Bagian pertama ini akan dibagi lagi ke dalam 5 (lima) tahap. Tahapannya ialah sebagai berikut:TAHAP 1 MEMBUAT PAKET GAME
- Buka Eclipse dan buat sebuah proyek Java, dengan cara klik kanan di Package Explorer >> New >> Java Project:This image has been resized to fit in the page. Click to enlarge.
Kita sebut saja nama game ini KiloboltGame (konsistensi dalam penamaan sangat penting untuk menghindari error). Untuk opsi JRE dapat dipilih versi 1.6 atau 1.7
Semua kode akan disimpan dalam folder src.
- Buat paket game. Jangan lupa namanya harus konsisten yakni kiloboltgame, namun dalam abjad kecil. Paket tersebut berfungsi untuk mengelola class ke dalam struktur mirip struktur folder. Klik kanan pada paket gres tersebut dan buatlah sebuah class yakni StartingClass.This image has been resized to fit in the page. Click to enlarge.
TAHAP 2 MENAMBAHKAN ‘METHODS’ DAN ‘EXTEND APPLET’
Langkah-langkahnya ialah sebagai berikut:
- Tambahkan extendsApplet setelah StartingClass. Nantinya kita mendapatkan methods dari sebuah superclass melalui proses inheritance. Inheritance dalam Java ialah kondisi dimana keberadaan suatu object atau class bergantung pada object atau class lain.
- Anda akan melihat garis merah dibawah applet. Impor applet dengan menekan Ctrl+Shift+O atau klik menu impor dengan menggunakan mouse
- Sekarang anda dapat menambahkan methods berikut: init(), start(), stop(), destroy(). Metode-metode ini ialah bab dari superclass Applet. Dengan mengimpor applet, anda dapat menggunakan methods tersebut
- Cara mudah untuk menambahkan sebuah method ialah dengan menggunakan fungsi auto-complete. Ketik ‘init’ dan tekan Ctrl + Space. Kotak auto-complete akan muncul dan pilih fungsi init() yang pertama. Lakukan hal yang sama pada tiga metode pada poin 3 dan anda akan melihat:This image has been resized to fit in the page. Click to enlarge.
- Tekan Ctrl + Shift + F untuk fungsi auto-organize code
Package kiloboltgame; import java.applet.Applet; public class StartingClass extends Applet { @Override public void init() { // TODO Auto-generated method stub super.init(); } @Override public void start() { // TODO Auto-generated method stub super.start(); } @Override public void stop() { // TODO Auto-generated method stub super.stop(); } @Override public void destroy() { // TODO Auto-generated method stub super.destroy(); } }Pada gambar tersebut ada empat method init(), start(), stop(), and destroy(). Keempat method ini ialah kerangka melaksanakan eksekusi pada class Applet. @Override berfungsi mengecek error ketika kompilasi kode. Anda juga akan melihat kode ‘super’. ‘Super’ mengacu pada pada superclass.
TAHAP 3 MENJALANKAN THREAD
Thread ialah fungsi untuk menjalankan proses-proses yang terjadi secara simultan atau bersamaan. Cara menambahkan thread pada code ialah sebagai berikut:
@Override public void start() { Thread thread = new Thread(); thread.start(); }Baris kedua dibawah @Override adalah statement membuat sebuah thread dan baris kedua ialah statement untuk memulai thread. Berikut pola dari thread:
Thread thread = new Thread() { public void run() { for (int i = 0; i < 10; i += 2) { System.out.println("hello"); } } };Selanjutnya semoga thread dapat berfungsi, anda memerlukan run method. Run method akan dibuat dengan cara berikut:
- Tambahkan ‘implements Runnable’ mirip berikut:
public class StartingClass extends Applet implements Runnable{…
Lalu buat sebuah run() method dalam class dengan mengetikkan run, tekan Ctrl + Space dan pilih metode: run() : void.
Saat menjalankan run method, akan muncul gosip berikut:This image has been resized to fit in the page. Click to enlarge.
Informasi tersebut menjelaskan: ketika anda mengimplementasikan interface runnable, anda mendapatkan run method dari thread yang anda ciptakan.
Untuk menghubungkan run() method yang gres dan thread yang telah anda buat, lakukan langkah berikut:
- Kembali pada start method:
Thread thread = new Thread();
lalu tambahkan “this” menjadi:
Thread thread = new Thread(this);
Hasilnya ialah mirip gambar dibawah:package kiloboltgame; import java.applet.Applet; public class StartingClass extends Applet implements Runnable { @Override public void init() { } @Override public void start() { Thread thread = new Thread(this); thread.start(); } @Override public void stop() { // TODO Auto-generated method stub } @Override public void destroy() { // TODO Auto-generated method stub } @Override public void run() { // TODO Auto-generated method stub } }
Game loop menyerupai jantung sebuah game. Game loop berfungsi mengecek perubahan dan melaksanakan update secara periodik.
Dalam game Android yang akan kita buat, game loop akan melaksanakan fungsi berikut:
- Meng-update karakter;
- Meng-update environment;
- Mewarnai scene;
- Menjalankan sleep mode selama 17 milidetik.
Langkah-langkah membuat game loop ialah sebagai berikut:
- Pada run() method dari ‘class’ kita akan menuliskan ‘true’:
- Tambahkan kode berikut didalamnya:repaint(); //
menjadi: - run() method akan menjadi mirip berikut:
@Override public void run() { while (true) { repaint(); try { Thread.sleep(17); } catch (InterruptedException e) { e.printStackTrace(); } } }
Jika kita melaksanakan kesalahan (seperti pola Thread.sleep(17);dibawah, Java Compiler menawarkan error tersebut dan kita harus mengelilingi Thread.sleep(17) dengan statement Try dan Catch.
Try adalah kode ketika mencoba melaksanakan fungsi tertentu mirip sleep. Sedangkan catch akan menyimpan gosip yang berkaitan dengan error yang terjadi.
Pada ketika ini StartingClass.java akan mirip berikut:
package kiloboltgame; import java.applet.Applet; public class StartingClass extends Applet implements Runnable { @Override public void init() { } @Override public void start() { Thread thread = new Thread(this); thread.start(); } @Override public void stop() { // TODO Auto-generated method stub } @Override public void destroy() { // TODO Auto-generated method stub } @Override public void run() { while (true) { repaint(); try { Thread.sleep(17); } catch (InterruptedException e) { e.printStackTrace(); } } } }
TAHAP 5 MENENTUKAN SIZE, BACKGROUND DAN TITLE
Pada tahap 2 kita telah membahas method berikut init(), start(), stop(), dan destroy(). Empat metode ini dijalankan berdasarkan life cycle suatu program. Pada tahap ini kita akan membahas method init(). Pada method ini kita akan menentukan paramater untuk applet yakni:
- Ukuran (size) dari applet;
- Warna background;
- Judul (title) applet.
- setSize(800, 480); Ukuran 800 pixels x 480 pixels ialah ukuran yang biasa digunakan pada android
- setBackground(Color.BLACK); Color.BLACK mengacu pada BLACK di superclass Color dan harus diimpor terlebih dulu:
- setFocusable(true);
Dengan menambahkan statement ini, pada ketika game dimulai applet dapat
berfungsi dan mendapatkan pribadi input dari anda. Jika tidak ditambahkan,
anda harus mengklik ke dalam applet sebelum dapat mendapatkan arahan
dari keyboard. - Frame frame = (Frame) this.getParent().getParent();
frame.setTitle(“Q-Bot Alpha”);
Pada tahap ini, anda akan melihat:
package kiloboltgame; import java.applet.Applet; import java.awt.Color; import java.awt.Frame; public class StartingClass extends Applet implements Runnable { @Override public void init() { setSize(800, 480); setBackground(Color.BLACK); setFocusable(true); Frame frame = (Frame) this.getParent().getParent(); frame.setTitle("Q-Bot Alpha"); } @Override public void start() { Thread thread = new Thread(this); thread.start(); } @Override public void stop() { // TODO Auto-generated method stub } @Override public void destroy() { // TODO Auto-generated method stub } @Override public void run() { while (true) { repaint(); try { Thread.sleep(17); } catch (InterruptedException e) { e.printStackTrace(); } } } }Sampai disini dulu bab pertama dari cara membuat game Android dengan menggunakan Java applet dan Eclipse. Pada bab keduaakan dibahas cara menambahkan user input dan konsep awal membuat robot dalam game.
0 Response to "Cara membuat game android sendiri dirumah tutorial pertama"