SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Mobile Game Developer War 4: Online Camp




MGDW4 Online Camp #1

Pengenalan J2ME, Eclipse, dan
       Game Canvas
Mobile Game Developer War 4: Online Camp

         Software pendukung
• Java JDK
  (http://www.oracle.com/technetwork/java/javase/do
    wnloads/jdk-7u1-download-513651.html)
• Wireless Toolkit [emulator default dari Java]
  (http://www.oracle.com/technetwork/java/download-
    135801.html)
• Eclipse Pulsar
  (http://eclipse.org/pulsar/)
• Opsional:
  – Nokia S40/S60 Emulator
  – Perl [dibutuhkan oleh Nokia Emulator]
Mobile Game Developer War 4: Online Camp

 JDK – J2ME – dan Eclipse Pulsar
• FAQ:
  – Apakah saya bisa menggunakan JDK versi
    1.x saya?
  – Apakah saya bisa menggunakan Eclipse yang
    biasa saya gunakan?
    • Bisa, asal Eclipsenya bisa membuat J2ME Project
Mobile Game Developer War 4: Online Camp
Mobile Game Developer War 4: Online Camp




Workspace Eclipse
1.   Project Explorer        4.   Console and debugger
2.   Work here!              5.   Eclipse Menu and Toolbars
3.   Class explorer
Mobile Game Developer War 4: Online Camp

Menambahkan emulator ke Eclipse
•   Install Wireless Toolkit atau Nokia Emulator terlebih dahulu
•   Pada Eclipse, pilih Window > Preferences akan muncul menu seperti dibawah




                                                                  Untuk Pulsar versi lama
                                                                  pilihannya bernama Import




                                     Pulsar terbaru
                                     menggunakan menu
                                     Manual Install
Mobile Game Developer War 4: Online Camp




Klik Manual Install (atau Import)…
Mobile Game Developer War 4: Online Camp




Browse ke folder dimana kita menyimpan Emulatornya. Lalu tekan finish, tunggu
beberapa saat, nanti akan muncul seperti ini.




Lalu tekan OK untuk menutup Preferences
Mobile Game Developer War 4: Online Camp

Membuat MIDlet Project baru
Mobile Game Developer War 4: Online Camp

        Buat MIDlet dalam project




MIDlet adalah class utama yang akan dijalankan oleh aplikasi J2ME
Mobile Game Developer War 4: Online Camp


Fill detail for MIDlet
Form tersebut adalah:
• Package, mendefinisikan package
dari midlet kita nanti

• Name, nama file midlet

• Modifiers, mendefinisikan
modifiers pada file midlet tersebut

• Superclass, mendefinisikan midlet
tersebut akan inheritance terhadap
class apa

• Interface, jika file yang kita buat
akan implements terhadap suatu
interface
Mobile Game Developer War 4: Online Camp


Standar file MIDlet
1.   TebakAngka() merupakan
     konstruktor

2.   startApp(), fungsi yang pertama
     kali dijalankan

3.   pauseApp(), fungsi yang
     dijalankan ketika game dipause

4.   destroyApp(), fungsi yang
     dijalankan ketika game akan
     diberhentikan
Mobile Game Developer War 4: Online Camp




Kode awal

KERANGKA MIDLET DAN
GAMECANVAS
Mobile Game Developer War 4: Online Camp

          Struktur MIDlet [MainMidlet.java]
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;



public class MainMidlet extends MIDlet {
   public MainMidlet() {
   }
   protected void destroyApp(boolean arg0) throws
   MIDletStateChangeException {
   }
   protected void pauseApp() {
   }
   protected void startApp() throws MIDletStateChangeException {
   }
}
Mobile Game Developer War 4: Online Camp




Running Project
Klik kanan pada project yang ingin di running, lalu Run As >
Emulated Java ME MIDlet
Mobile Game Developer War 4: Online Camp

                               Hello World!
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
public class MainMidlet extends MIDlet {
   public MainMidlet() {
   }
   protected void destroyApp(boolean arg0) throws
   MIDletStateChangeException {
   }
   protected void pauseApp() {
   }
   protected void startApp() throws MIDletStateChangeException {
         System.out.println("Hello world!");
   }
}
Mobile Game Developer War 4: Online Camp

           Struktur MIDlet [MainMidlet.java]
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.Display;
public class MainMidlet extends MIDlet {
   public MainCanvas canvas;
   public MainMidlet() {
         canvas = new MainCanvas();
   }
   protected void destroyApp(boolean arg0) throws
   MIDletStateChangeException {
   }
   protected void pauseApp() {
   }
   protected void startApp() throws MIDletStateChangeException {
         Display display = Display.getDisplay(this);
         display.setCurrent(canvas);
         canvas.mulai();                                Pada tahap ini akan
   }                                                    muncul beberapa error,
}                                                       biarkan dulu.
Mobile Game Developer War 4: Online Camp

         Buat GameCanvas
• File>New>Class
  – Set superclass
  – Add interface
Mobile Game Developer War 4: Online Camp
  Struktur GameCanvas [MainCanvas.java]
import javax.microedition.lcdui.game.GameCanvas;
import javax.microedition.lcdui.Graphics;
public class MainCanvas extends GameCanvas implements Runnable {
   public Graphics g;
   Thread runner;
   public static int SLEEP_TIME = 1000/30;
   protected MainCanvas() {
         super(false);
         this.setFullScreenMode(true);
         g = getGraphics();
         runner = new Thread(this);
   }
   public void mulai(){
         runner.start();
   }
   public void run() {
         //di slide berikutnya
   }
}
Mobile Game Developer War 4: Online Camp
Struktur GameCanvas [MainCanvas.java]
public void run() {
     while(true){
              System.out.println("Testing dulu yah...");
              flushGraphics();
              try {
                       Thread.sleep(SLEEP_TIME);
              } catch (InterruptedException e) {
                       e.printStackTrace();
              }
     }
}
Mobile Game Developer War 4: Online Camp
                        Game Loop
public void run() {
     while(true){
              System.out.println("Testing dulu yah...");
              flushGraphics();
              try {
                       Thread.sleep(SLEEP_TIME);
              } catch (InterruptedException e) {
                       e.printStackTrace();
              }
     }
}

                        while(!gameOver){
                                GetInput();
                                UpdateGame();
                                DrawGame();
                                flushGraphics();
                                try {Thread.sleep(SLEEP_TIME);}
                                catch (InterruptedException e){
                                        e.printStackTrace();}
                        }
Mobile Game Developer War 4: Online Camp

             Layar Device
Terdapat 2 jenis layar pada device, yaitu:
• Landscape, dimana lebar > tinggi layar
• Portrait, dimana tinggi > lebar layar
Mobile Game Developer War 4: Online Camp

Cartesian system on Device
Mobile Game Developer War 4: Online Camp

            Screen Size
• Landscape, rata – rata 320 x 240 pixel

• Portrait, rata – rata 240 x 320 pixel
Mobile Game Developer War 4: Online Camp

      How to develop landscape game

• Emulator WTK, Qwerty Device
  – Layar ada yang berlebih dibagian
    bawah
  – Tidak dapat menggunakan
    getHeight() secara langsung
Mobile Game Developer War 4: Online Camp

          How to develop portrait game

• Emulator WTK 2.5.2,
  DefaultColorPhone
   – Just use it  nice and simple emulator
Mobile Game Developer War 4: Online Camp

            Terima kasih.
• Untuk menyelesaikan materi, kunjungi
  http://bit.ly/KJmFfA

• Untuk pertanyaan atau diskusi, bisa
  dilakukan via forum:
  http://bit.ly/mgdw4forum

Weitere ähnliche Inhalte

Mehr von Agate Studio

Wp quality bar tedy
Wp quality bar   tedyWp quality bar   tedy
Wp quality bar tedyAgate Studio
 
Lee marvin pitching-hacks
Lee marvin pitching-hacksLee marvin pitching-hacks
Lee marvin pitching-hacksAgate Studio
 
Emotiv EPOC by Neneng
Emotiv EPOC by NenengEmotiv EPOC by Neneng
Emotiv EPOC by NenengAgate Studio
 
Aksi – Koneksi – Deviasi by Valent
Aksi – Koneksi – Deviasi by ValentAksi – Koneksi – Deviasi by Valent
Aksi – Koneksi – Deviasi by ValentAgate Studio
 
MMO Design Architecture by Andrew
MMO Design Architecture by AndrewMMO Design Architecture by Andrew
MMO Design Architecture by AndrewAgate Studio
 
How to Persuade People by Dave
How to Persuade People by DaveHow to Persuade People by Dave
How to Persuade People by DaveAgate Studio
 
Eddie supersmash goodminton
Eddie   supersmash goodmintonEddie   supersmash goodminton
Eddie supersmash goodmintonAgate Studio
 
Satriyo digital audio gears
Satriyo   digital audio gearsSatriyo   digital audio gears
Satriyo digital audio gearsAgate Studio
 
Yinan heroes of-the_strom
Yinan   heroes of-the_stromYinan   heroes of-the_strom
Yinan heroes of-the_stromAgate Studio
 
Advanced encryption standard (aes) epul
Advanced encryption standard (aes)   epulAdvanced encryption standard (aes)   epul
Advanced encryption standard (aes) epulAgate Studio
 
Real Time Framework by Tonny
Real Time Framework by TonnyReal Time Framework by Tonny
Real Time Framework by TonnyAgate Studio
 
Unity Camera & Simple Image Editing by Puthut
Unity Camera & Simple Image Editing by PuthutUnity Camera & Simple Image Editing by Puthut
Unity Camera & Simple Image Editing by PuthutAgate Studio
 
Hibernate by Jason
Hibernate by JasonHibernate by Jason
Hibernate by JasonAgate Studio
 
Hardening Apache Web Server by Aswin
Hardening Apache Web Server by AswinHardening Apache Web Server by Aswin
Hardening Apache Web Server by AswinAgate Studio
 
Introduction to Global Illumination by Aryo
Introduction to Global Illumination by AryoIntroduction to Global Illumination by Aryo
Introduction to Global Illumination by AryoAgate Studio
 
Mobile Games Store by Valen
Mobile Games Store by ValenMobile Games Store by Valen
Mobile Games Store by ValenAgate Studio
 
Characteristics of Musical Keys by Satriyo
Characteristics of Musical Keys by SatriyoCharacteristics of Musical Keys by Satriyo
Characteristics of Musical Keys by SatriyoAgate Studio
 
Idol Cardgame by Naky
Idol Cardgame by NakyIdol Cardgame by Naky
Idol Cardgame by NakyAgate Studio
 

Mehr von Agate Studio (20)

Wp quality bar tedy
Wp quality bar   tedyWp quality bar   tedy
Wp quality bar tedy
 
Toku DB by Aswin
Toku DB by AswinToku DB by Aswin
Toku DB by Aswin
 
Lee marvin pitching-hacks
Lee marvin pitching-hacksLee marvin pitching-hacks
Lee marvin pitching-hacks
 
Emotiv EPOC by Neneng
Emotiv EPOC by NenengEmotiv EPOC by Neneng
Emotiv EPOC by Neneng
 
Aksi – Koneksi – Deviasi by Valent
Aksi – Koneksi – Deviasi by ValentAksi – Koneksi – Deviasi by Valent
Aksi – Koneksi – Deviasi by Valent
 
MMO Design Architecture by Andrew
MMO Design Architecture by AndrewMMO Design Architecture by Andrew
MMO Design Architecture by Andrew
 
How to Persuade People by Dave
How to Persuade People by DaveHow to Persuade People by Dave
How to Persuade People by Dave
 
Eddie supersmash goodminton
Eddie   supersmash goodmintonEddie   supersmash goodminton
Eddie supersmash goodminton
 
Satriyo digital audio gears
Satriyo   digital audio gearsSatriyo   digital audio gears
Satriyo digital audio gears
 
Yinan heroes of-the_strom
Yinan   heroes of-the_stromYinan   heroes of-the_strom
Yinan heroes of-the_strom
 
Advanced encryption standard (aes) epul
Advanced encryption standard (aes)   epulAdvanced encryption standard (aes)   epul
Advanced encryption standard (aes) epul
 
Real Time Framework by Tonny
Real Time Framework by TonnyReal Time Framework by Tonny
Real Time Framework by Tonny
 
Unity Camera & Simple Image Editing by Puthut
Unity Camera & Simple Image Editing by PuthutUnity Camera & Simple Image Editing by Puthut
Unity Camera & Simple Image Editing by Puthut
 
Hibernate by Jason
Hibernate by JasonHibernate by Jason
Hibernate by Jason
 
Hardening Apache Web Server by Aswin
Hardening Apache Web Server by AswinHardening Apache Web Server by Aswin
Hardening Apache Web Server by Aswin
 
Introduction to Global Illumination by Aryo
Introduction to Global Illumination by AryoIntroduction to Global Illumination by Aryo
Introduction to Global Illumination by Aryo
 
Mobile Games Store by Valen
Mobile Games Store by ValenMobile Games Store by Valen
Mobile Games Store by Valen
 
Characteristics of Musical Keys by Satriyo
Characteristics of Musical Keys by SatriyoCharacteristics of Musical Keys by Satriyo
Characteristics of Musical Keys by Satriyo
 
Nelson easter egg
Nelson easter eggNelson easter egg
Nelson easter egg
 
Idol Cardgame by Naky
Idol Cardgame by NakyIdol Cardgame by Naky
Idol Cardgame by Naky
 

Kürzlich hochgeladen

PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptxPPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptxriscacriswanda
 
RENCANA + Link2 MATERI Training _"SISTEM MANAJEMEN MUTU (ISO 9001_2015)".
RENCANA + Link2 MATERI Training _"SISTEM MANAJEMEN MUTU (ISO 9001_2015)".RENCANA + Link2 MATERI Training _"SISTEM MANAJEMEN MUTU (ISO 9001_2015)".
RENCANA + Link2 MATERI Training _"SISTEM MANAJEMEN MUTU (ISO 9001_2015)".Kanaidi ken
 
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfAndiCoc
 
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfMODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfAndiCoc
 
power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"baimmuhammad71
 
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdfAndiCoc
 
Kenakalan Remaja (Penggunaan Narkoba).ppt
Kenakalan Remaja (Penggunaan Narkoba).pptKenakalan Remaja (Penggunaan Narkoba).ppt
Kenakalan Remaja (Penggunaan Narkoba).pptnovibernadina
 
MODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdfAndiCoc
 
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdfAndiCoc
 
Skenario Lokakarya 2 Pendidikan Guru Penggerak
Skenario Lokakarya 2 Pendidikan Guru PenggerakSkenario Lokakarya 2 Pendidikan Guru Penggerak
Skenario Lokakarya 2 Pendidikan Guru Penggerakputus34
 
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptxOPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptxDedeRosza
 
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfAksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfEniNuraeni29
 
Pengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, FigmaPengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, FigmaAndreRangga1
 
Memperkasakan Dialog Prestasi Sekolah.pptx
Memperkasakan Dialog Prestasi Sekolah.pptxMemperkasakan Dialog Prestasi Sekolah.pptx
Memperkasakan Dialog Prestasi Sekolah.pptxsalmnor
 
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...nuraji51
 
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMKAksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMKgamelamalaal
 
PPT PENDIDIKAN KELAS RANGKAP MODUL 3 KELOMPOK 3.pptx
PPT PENDIDIKAN KELAS RANGKAP MODUL 3 KELOMPOK 3.pptxPPT PENDIDIKAN KELAS RANGKAP MODUL 3 KELOMPOK 3.pptx
PPT PENDIDIKAN KELAS RANGKAP MODUL 3 KELOMPOK 3.pptxJawahirIhsan
 
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 20241. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024DessyArliani
 
Prakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptxPrakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptxHaryKharismaSuhud
 

Kürzlich hochgeladen (20)

Intellectual Discourse Business in Islamic Perspective - Mej Dr Mohd Adib Abd...
Intellectual Discourse Business in Islamic Perspective - Mej Dr Mohd Adib Abd...Intellectual Discourse Business in Islamic Perspective - Mej Dr Mohd Adib Abd...
Intellectual Discourse Business in Islamic Perspective - Mej Dr Mohd Adib Abd...
 
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptxPPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
 
RENCANA + Link2 MATERI Training _"SISTEM MANAJEMEN MUTU (ISO 9001_2015)".
RENCANA + Link2 MATERI Training _"SISTEM MANAJEMEN MUTU (ISO 9001_2015)".RENCANA + Link2 MATERI Training _"SISTEM MANAJEMEN MUTU (ISO 9001_2015)".
RENCANA + Link2 MATERI Training _"SISTEM MANAJEMEN MUTU (ISO 9001_2015)".
 
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
 
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfMODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
 
power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"
 
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
 
Kenakalan Remaja (Penggunaan Narkoba).ppt
Kenakalan Remaja (Penggunaan Narkoba).pptKenakalan Remaja (Penggunaan Narkoba).ppt
Kenakalan Remaja (Penggunaan Narkoba).ppt
 
MODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdf
 
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
 
Skenario Lokakarya 2 Pendidikan Guru Penggerak
Skenario Lokakarya 2 Pendidikan Guru PenggerakSkenario Lokakarya 2 Pendidikan Guru Penggerak
Skenario Lokakarya 2 Pendidikan Guru Penggerak
 
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptxOPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
 
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfAksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
 
Pengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, FigmaPengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, Figma
 
Memperkasakan Dialog Prestasi Sekolah.pptx
Memperkasakan Dialog Prestasi Sekolah.pptxMemperkasakan Dialog Prestasi Sekolah.pptx
Memperkasakan Dialog Prestasi Sekolah.pptx
 
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
 
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMKAksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
 
PPT PENDIDIKAN KELAS RANGKAP MODUL 3 KELOMPOK 3.pptx
PPT PENDIDIKAN KELAS RANGKAP MODUL 3 KELOMPOK 3.pptxPPT PENDIDIKAN KELAS RANGKAP MODUL 3 KELOMPOK 3.pptx
PPT PENDIDIKAN KELAS RANGKAP MODUL 3 KELOMPOK 3.pptx
 
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 20241. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
 
Prakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptxPrakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptx
 

Online Camp #1: Pengenalan J2ME, Eclipse, dan Game Canvas

  • 1. Mobile Game Developer War 4: Online Camp MGDW4 Online Camp #1 Pengenalan J2ME, Eclipse, dan Game Canvas
  • 2. Mobile Game Developer War 4: Online Camp Software pendukung • Java JDK (http://www.oracle.com/technetwork/java/javase/do wnloads/jdk-7u1-download-513651.html) • Wireless Toolkit [emulator default dari Java] (http://www.oracle.com/technetwork/java/download- 135801.html) • Eclipse Pulsar (http://eclipse.org/pulsar/) • Opsional: – Nokia S40/S60 Emulator – Perl [dibutuhkan oleh Nokia Emulator]
  • 3. Mobile Game Developer War 4: Online Camp JDK – J2ME – dan Eclipse Pulsar • FAQ: – Apakah saya bisa menggunakan JDK versi 1.x saya? – Apakah saya bisa menggunakan Eclipse yang biasa saya gunakan? • Bisa, asal Eclipsenya bisa membuat J2ME Project
  • 4. Mobile Game Developer War 4: Online Camp
  • 5. Mobile Game Developer War 4: Online Camp Workspace Eclipse 1. Project Explorer 4. Console and debugger 2. Work here! 5. Eclipse Menu and Toolbars 3. Class explorer
  • 6. Mobile Game Developer War 4: Online Camp Menambahkan emulator ke Eclipse • Install Wireless Toolkit atau Nokia Emulator terlebih dahulu • Pada Eclipse, pilih Window > Preferences akan muncul menu seperti dibawah Untuk Pulsar versi lama pilihannya bernama Import Pulsar terbaru menggunakan menu Manual Install
  • 7. Mobile Game Developer War 4: Online Camp Klik Manual Install (atau Import)…
  • 8. Mobile Game Developer War 4: Online Camp Browse ke folder dimana kita menyimpan Emulatornya. Lalu tekan finish, tunggu beberapa saat, nanti akan muncul seperti ini. Lalu tekan OK untuk menutup Preferences
  • 9. Mobile Game Developer War 4: Online Camp Membuat MIDlet Project baru
  • 10. Mobile Game Developer War 4: Online Camp Buat MIDlet dalam project MIDlet adalah class utama yang akan dijalankan oleh aplikasi J2ME
  • 11. Mobile Game Developer War 4: Online Camp Fill detail for MIDlet Form tersebut adalah: • Package, mendefinisikan package dari midlet kita nanti • Name, nama file midlet • Modifiers, mendefinisikan modifiers pada file midlet tersebut • Superclass, mendefinisikan midlet tersebut akan inheritance terhadap class apa • Interface, jika file yang kita buat akan implements terhadap suatu interface
  • 12. Mobile Game Developer War 4: Online Camp Standar file MIDlet 1. TebakAngka() merupakan konstruktor 2. startApp(), fungsi yang pertama kali dijalankan 3. pauseApp(), fungsi yang dijalankan ketika game dipause 4. destroyApp(), fungsi yang dijalankan ketika game akan diberhentikan
  • 13. Mobile Game Developer War 4: Online Camp Kode awal KERANGKA MIDLET DAN GAMECANVAS
  • 14. Mobile Game Developer War 4: Online Camp Struktur MIDlet [MainMidlet.java] import javax.microedition.midlet.MIDlet; import javax.microedition.midlet.MIDletStateChangeException; public class MainMidlet extends MIDlet { public MainMidlet() { } protected void destroyApp(boolean arg0) throws MIDletStateChangeException { } protected void pauseApp() { } protected void startApp() throws MIDletStateChangeException { } }
  • 15. Mobile Game Developer War 4: Online Camp Running Project Klik kanan pada project yang ingin di running, lalu Run As > Emulated Java ME MIDlet
  • 16. Mobile Game Developer War 4: Online Camp Hello World! import javax.microedition.midlet.MIDlet; import javax.microedition.midlet.MIDletStateChangeException; public class MainMidlet extends MIDlet { public MainMidlet() { } protected void destroyApp(boolean arg0) throws MIDletStateChangeException { } protected void pauseApp() { } protected void startApp() throws MIDletStateChangeException { System.out.println("Hello world!"); } }
  • 17. Mobile Game Developer War 4: Online Camp Struktur MIDlet [MainMidlet.java] import javax.microedition.midlet.MIDlet; import javax.microedition.midlet.MIDletStateChangeException; import javax.microedition.lcdui.Display; public class MainMidlet extends MIDlet { public MainCanvas canvas; public MainMidlet() { canvas = new MainCanvas(); } protected void destroyApp(boolean arg0) throws MIDletStateChangeException { } protected void pauseApp() { } protected void startApp() throws MIDletStateChangeException { Display display = Display.getDisplay(this); display.setCurrent(canvas); canvas.mulai(); Pada tahap ini akan } muncul beberapa error, } biarkan dulu.
  • 18. Mobile Game Developer War 4: Online Camp Buat GameCanvas • File>New>Class – Set superclass – Add interface
  • 19. Mobile Game Developer War 4: Online Camp Struktur GameCanvas [MainCanvas.java] import javax.microedition.lcdui.game.GameCanvas; import javax.microedition.lcdui.Graphics; public class MainCanvas extends GameCanvas implements Runnable { public Graphics g; Thread runner; public static int SLEEP_TIME = 1000/30; protected MainCanvas() { super(false); this.setFullScreenMode(true); g = getGraphics(); runner = new Thread(this); } public void mulai(){ runner.start(); } public void run() { //di slide berikutnya } }
  • 20. Mobile Game Developer War 4: Online Camp Struktur GameCanvas [MainCanvas.java] public void run() { while(true){ System.out.println("Testing dulu yah..."); flushGraphics(); try { Thread.sleep(SLEEP_TIME); } catch (InterruptedException e) { e.printStackTrace(); } } }
  • 21. Mobile Game Developer War 4: Online Camp Game Loop public void run() { while(true){ System.out.println("Testing dulu yah..."); flushGraphics(); try { Thread.sleep(SLEEP_TIME); } catch (InterruptedException e) { e.printStackTrace(); } } } while(!gameOver){ GetInput(); UpdateGame(); DrawGame(); flushGraphics(); try {Thread.sleep(SLEEP_TIME);} catch (InterruptedException e){ e.printStackTrace();} }
  • 22. Mobile Game Developer War 4: Online Camp Layar Device Terdapat 2 jenis layar pada device, yaitu: • Landscape, dimana lebar > tinggi layar • Portrait, dimana tinggi > lebar layar
  • 23. Mobile Game Developer War 4: Online Camp Cartesian system on Device
  • 24. Mobile Game Developer War 4: Online Camp Screen Size • Landscape, rata – rata 320 x 240 pixel • Portrait, rata – rata 240 x 320 pixel
  • 25. Mobile Game Developer War 4: Online Camp How to develop landscape game • Emulator WTK, Qwerty Device – Layar ada yang berlebih dibagian bawah – Tidak dapat menggunakan getHeight() secara langsung
  • 26. Mobile Game Developer War 4: Online Camp How to develop portrait game • Emulator WTK 2.5.2, DefaultColorPhone – Just use it  nice and simple emulator
  • 27. Mobile Game Developer War 4: Online Camp Terima kasih. • Untuk menyelesaikan materi, kunjungi http://bit.ly/KJmFfA • Untuk pertanyaan atau diskusi, bisa dilakukan via forum: http://bit.ly/mgdw4forum