SlideShare uma empresa Scribd logo
1 de 12
Mobile Game Developer War 4: Online Camp




MGDW4 Online Camp #3

   Fungsi Grafis Standar
Mobile Game Developer War 4: Online Camp


        Fungsi Grafis Dasar
• Untuk membuat game, tidak harus
  menggunakan art asset baru.
• Terutama untuk belajar, kita bisa
  menggunakan fungsi-fungsi grafis dasar
Mobile Game Developer War 4: Online Camp


             Fungsi-fungsi grafis
Draw                                   Fill
• DrawLine                             • FillRect
• DrawRectangle                        • FillRoundRect
• DrawArc                              • FillTriangle
• DrawString                           • FillArc


    Draw akan membuat
                                            Fill akan membuat objek
    objek berupa outline dari
                                            berupa warna solid dari
    bentuk yang dimaksud
                                            bentuk yang dimaksud
    (kecuali DrawString)
Mobile Game Developer War 4: Online Camp


          Update untuk Fungsi Run
public void run() {
  init();
  while(!gameover){
    clearScreen();                       • Menambahkan fungsi
    getInput();
    draw();                                untuk membuat
    flushGraphics();                       background screen
    try {
      Thread.sleep(SLEEP_TIME);
    } catch (InterruptedException e) {
                                         • Menambahkan fungsi
      e.printStackTrace();                 utama untuk menyimpan
    }
  }                                        logika grafis
  System.out.println("Game over.");
}
Mobile Game Developer War 4: Online Camp


    FillRect untuk Background
• Gunakan                          private void clearScreen(){
                                     g.setColor(0x000000);
  g.fillRect(x,y,width,height)       g.fillRect(0, 0,
                                       getWidth(), getHeight());
  – x,y:posisi kotak yang          }
                                   private void draw(){
    digambar
  – width, height: lebar dan       }

    tinggi kotak
• g.setColor digunakan untuk
  memilih warna yang akan
  digunakan untuk setiap
  pemanggilan fungsi grafis
  berikutnya (sampai
  setColor berikutnya)
Mobile Game Developer War 4: Online Camp


                            g.setColor
  • Warna objek akan
    berubah sesuai
    pemanggilan setColor
    terakhir
  • Berlaku untuk outline,
    fill, dan string
private void clearScreen(){
  g.setColor(0x000000);
  g.fillRect(0, 0, getWidth(), getHeight());
  g.setColor(0xff0000);                            Kode yang ditandai merah
  g.fillRect(50, 50, getWidth(), getHeight());     tidak terlihat karena
  g.setColor(0x00ff00);                            warnanya sama-sama hijau.
  g.fillRect(100, 100, getWidth(), getHeight());
  g.fillRect(150, 150, getWidth(), getHeight());   Urutan kode menentukan
  g.setColor(0x0000ff);                            urutan gambar: yang
  g.fillRect(200, 200, getWidth(), getHeight());   digambar terakhir digambar
}                                                  menimpa gambar sebelumnya.
Mobile Game Developer War 4: Online Camp


   Demo DrawLine dan DrawRect
private void clearScreen(){
  g.setColor(0xc3c3c3c3);
  g.fillRect(0, 0, getWidth(), getHeight());
                                               • DrawLine( x1, y1,
}
private void draw(){
                                                 x2, y2)
  g.setColor(0x000000);
  g.drawLine(50, 50, 150, 250);
                                                   – x1,y1: titik awal
  g.setColor(0xff0000);
  g.drawRect(50, 70, 100, 100);
                                                   – x2,y2: titik akhir
  g.setColor(0x00ff00);
  g.drawString("contoh string", 50, 150,
    Graphics.TOP|Graphics.LEFT);
  g.setColor(0x0000ff);
  g.drawLine(100, 100, 170, 200);
  g.drawLine(170, 200, 50, 60);
  g.drawLine(50, 60, 230, 60);
  g.drawLine(230, 60,100, 100);
}

      Bisakah kamu bedakan tiap baris kode menggambar
 objek yang mana? Kamu bisa cek berdasarkan warnanya.
Mobile Game Developer War 4: Online Camp


                               drawArc
  • Fungsi yang digunakan untuk
    membentuk busur atau lingkaran
  • g.drawArc(x, y, width,
    height, startAngle,
    arcAngle)
       – StartAngle: posisi awal busur
         lingkaran
       – arcAngle: besar sudut busur
         (360 = lingkaran)

                   private void draw(){
Sudut dihitung       g.setColor(0xff0000);
berlawanan arah      g.drawArc(100, 100, 50, 50, 30, 90);
jarum jam. Lihat     g.drawArc(100, 150, 50, 50, 30, 180);
pada contoh.       }
Mobile Game Developer War 4: Online Camp


                                 Fill?
• Parameter fungsinya kurang lebih sama dengan fungsi
  draw (outline), tapi menghasilkan warna berwarna
private void draw(){
    g.setColor(0xff0000);
    g.fillRect(50, 70, 100, 100);
    g.setColor(0x0000ff);
    g.fillArc(100, 250, 50, 50, 0, 270);
    g.setColor(0x00ff00);
    g.fillArc(50, 200, 150, 50, 180, 180);
}



     Bisakah kamu bedakan tiap baris kode menggambar
objek yang mana? Kamu bisa cek berdasarkan warnanya.
Mobile Game Developer War 4: Online Camp


                    Quest
• Buat salah satu (atau lebih) dari screenshot di
  bawah dengan menggunakan kode grafis primitif




   10 exp            15 exp                   20 exp
Mobile Game Developer War 4: Online Camp


   Cara menyelesaikan Quest
1. Kirim source code MainCanvas.java ke
   email: quest@agateacademy.com
2. Gunakan subject “Quest Online Camp
   03a – Primitive Graphics”
Mobile Game Developer War 4: Online Camp




• Untuk menyelesaikan materi, kunjungi
  http://bit.ly/KOVvxq

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

Mais conteúdo relacionado

Mais de 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
 

Mais de 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
 

Último

Keterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTKeterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTIndraAdm
 
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfMODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfNurulHikmah50658
 
ppt-akhlak-tercela-foya-foya-riya-sumah-takabur-hasad asli.ppt
ppt-akhlak-tercela-foya-foya-riya-sumah-takabur-hasad asli.pptppt-akhlak-tercela-foya-foya-riya-sumah-takabur-hasad asli.ppt
ppt-akhlak-tercela-foya-foya-riya-sumah-takabur-hasad asli.pptAgusRahmat39
 
aksi nyata penyebaran pemahaman merdeka belajar
aksi nyata penyebaran pemahaman merdeka belajaraksi nyata penyebaran pemahaman merdeka belajar
aksi nyata penyebaran pemahaman merdeka belajarHafidRanggasi
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7IwanSumantri7
 
Membuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docxMembuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docxNurindahSetyawati1
 
presentasi lembaga negara yang ada di indonesia
presentasi lembaga negara yang ada di indonesiapresentasi lembaga negara yang ada di indonesia
presentasi lembaga negara yang ada di indonesiaNILAMSARI269850
 
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING M...
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING M...PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING M...
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING M...Kanaidi ken
 
(NEW) Template Presentasi UGM 2 (2).pptx
(NEW) Template Presentasi UGM 2 (2).pptx(NEW) Template Presentasi UGM 2 (2).pptx
(NEW) Template Presentasi UGM 2 (2).pptxSirlyPutri1
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CAbdiera
 
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSovyOktavianti
 
POWER POINT MODUL 1 PEBI4223 (PENDIDIKAN LINGKUNGAN HIDUP)
POWER POINT MODUL 1 PEBI4223 (PENDIDIKAN LINGKUNGAN HIDUP)POWER POINT MODUL 1 PEBI4223 (PENDIDIKAN LINGKUNGAN HIDUP)
POWER POINT MODUL 1 PEBI4223 (PENDIDIKAN LINGKUNGAN HIDUP)PUNGKYBUDIPANGESTU1
 
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptxPPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptxssuser8905b3
 
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfREFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfirwanabidin08
 
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptxMODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptxSlasiWidasmara1
 
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptxRefleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptxIrfanAudah1
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdfsdn3jatiblora
 
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptxPERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptxRizkyPratiwi19
 
aksi nyata sosialisasi Profil Pelajar Pancasila.pdf
aksi nyata sosialisasi  Profil Pelajar Pancasila.pdfaksi nyata sosialisasi  Profil Pelajar Pancasila.pdf
aksi nyata sosialisasi Profil Pelajar Pancasila.pdfsdn3jatiblora
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxssuser50800a
 

Último (20)

Keterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTKeterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UT
 
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfMODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
 
ppt-akhlak-tercela-foya-foya-riya-sumah-takabur-hasad asli.ppt
ppt-akhlak-tercela-foya-foya-riya-sumah-takabur-hasad asli.pptppt-akhlak-tercela-foya-foya-riya-sumah-takabur-hasad asli.ppt
ppt-akhlak-tercela-foya-foya-riya-sumah-takabur-hasad asli.ppt
 
aksi nyata penyebaran pemahaman merdeka belajar
aksi nyata penyebaran pemahaman merdeka belajaraksi nyata penyebaran pemahaman merdeka belajar
aksi nyata penyebaran pemahaman merdeka belajar
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7
 
Membuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docxMembuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docx
 
presentasi lembaga negara yang ada di indonesia
presentasi lembaga negara yang ada di indonesiapresentasi lembaga negara yang ada di indonesia
presentasi lembaga negara yang ada di indonesia
 
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING M...
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING M...PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING M...
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING M...
 
(NEW) Template Presentasi UGM 2 (2).pptx
(NEW) Template Presentasi UGM 2 (2).pptx(NEW) Template Presentasi UGM 2 (2).pptx
(NEW) Template Presentasi UGM 2 (2).pptx
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
 
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
 
POWER POINT MODUL 1 PEBI4223 (PENDIDIKAN LINGKUNGAN HIDUP)
POWER POINT MODUL 1 PEBI4223 (PENDIDIKAN LINGKUNGAN HIDUP)POWER POINT MODUL 1 PEBI4223 (PENDIDIKAN LINGKUNGAN HIDUP)
POWER POINT MODUL 1 PEBI4223 (PENDIDIKAN LINGKUNGAN HIDUP)
 
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptxPPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
 
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfREFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
 
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptxMODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
 
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptxRefleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
 
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptxPERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
 
aksi nyata sosialisasi Profil Pelajar Pancasila.pdf
aksi nyata sosialisasi  Profil Pelajar Pancasila.pdfaksi nyata sosialisasi  Profil Pelajar Pancasila.pdf
aksi nyata sosialisasi Profil Pelajar Pancasila.pdf
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
 

MGDW4 Online Camp #3a: Primitive Graphics

  • 1. Mobile Game Developer War 4: Online Camp MGDW4 Online Camp #3 Fungsi Grafis Standar
  • 2. Mobile Game Developer War 4: Online Camp Fungsi Grafis Dasar • Untuk membuat game, tidak harus menggunakan art asset baru. • Terutama untuk belajar, kita bisa menggunakan fungsi-fungsi grafis dasar
  • 3. Mobile Game Developer War 4: Online Camp Fungsi-fungsi grafis Draw Fill • DrawLine • FillRect • DrawRectangle • FillRoundRect • DrawArc • FillTriangle • DrawString • FillArc Draw akan membuat Fill akan membuat objek objek berupa outline dari berupa warna solid dari bentuk yang dimaksud bentuk yang dimaksud (kecuali DrawString)
  • 4. Mobile Game Developer War 4: Online Camp Update untuk Fungsi Run public void run() { init(); while(!gameover){ clearScreen(); • Menambahkan fungsi getInput(); draw(); untuk membuat flushGraphics(); background screen try { Thread.sleep(SLEEP_TIME); } catch (InterruptedException e) { • Menambahkan fungsi e.printStackTrace(); utama untuk menyimpan } } logika grafis System.out.println("Game over."); }
  • 5. Mobile Game Developer War 4: Online Camp FillRect untuk Background • Gunakan private void clearScreen(){ g.setColor(0x000000); g.fillRect(x,y,width,height) g.fillRect(0, 0, getWidth(), getHeight()); – x,y:posisi kotak yang } private void draw(){ digambar – width, height: lebar dan } tinggi kotak • g.setColor digunakan untuk memilih warna yang akan digunakan untuk setiap pemanggilan fungsi grafis berikutnya (sampai setColor berikutnya)
  • 6. Mobile Game Developer War 4: Online Camp g.setColor • Warna objek akan berubah sesuai pemanggilan setColor terakhir • Berlaku untuk outline, fill, dan string private void clearScreen(){ g.setColor(0x000000); g.fillRect(0, 0, getWidth(), getHeight()); g.setColor(0xff0000); Kode yang ditandai merah g.fillRect(50, 50, getWidth(), getHeight()); tidak terlihat karena g.setColor(0x00ff00); warnanya sama-sama hijau. g.fillRect(100, 100, getWidth(), getHeight()); g.fillRect(150, 150, getWidth(), getHeight()); Urutan kode menentukan g.setColor(0x0000ff); urutan gambar: yang g.fillRect(200, 200, getWidth(), getHeight()); digambar terakhir digambar } menimpa gambar sebelumnya.
  • 7. Mobile Game Developer War 4: Online Camp Demo DrawLine dan DrawRect private void clearScreen(){ g.setColor(0xc3c3c3c3); g.fillRect(0, 0, getWidth(), getHeight()); • DrawLine( x1, y1, } private void draw(){ x2, y2) g.setColor(0x000000); g.drawLine(50, 50, 150, 250); – x1,y1: titik awal g.setColor(0xff0000); g.drawRect(50, 70, 100, 100); – x2,y2: titik akhir g.setColor(0x00ff00); g.drawString("contoh string", 50, 150, Graphics.TOP|Graphics.LEFT); g.setColor(0x0000ff); g.drawLine(100, 100, 170, 200); g.drawLine(170, 200, 50, 60); g.drawLine(50, 60, 230, 60); g.drawLine(230, 60,100, 100); } Bisakah kamu bedakan tiap baris kode menggambar objek yang mana? Kamu bisa cek berdasarkan warnanya.
  • 8. Mobile Game Developer War 4: Online Camp drawArc • Fungsi yang digunakan untuk membentuk busur atau lingkaran • g.drawArc(x, y, width, height, startAngle, arcAngle) – StartAngle: posisi awal busur lingkaran – arcAngle: besar sudut busur (360 = lingkaran) private void draw(){ Sudut dihitung g.setColor(0xff0000); berlawanan arah g.drawArc(100, 100, 50, 50, 30, 90); jarum jam. Lihat g.drawArc(100, 150, 50, 50, 30, 180); pada contoh. }
  • 9. Mobile Game Developer War 4: Online Camp Fill? • Parameter fungsinya kurang lebih sama dengan fungsi draw (outline), tapi menghasilkan warna berwarna private void draw(){ g.setColor(0xff0000); g.fillRect(50, 70, 100, 100); g.setColor(0x0000ff); g.fillArc(100, 250, 50, 50, 0, 270); g.setColor(0x00ff00); g.fillArc(50, 200, 150, 50, 180, 180); } Bisakah kamu bedakan tiap baris kode menggambar objek yang mana? Kamu bisa cek berdasarkan warnanya.
  • 10. Mobile Game Developer War 4: Online Camp Quest • Buat salah satu (atau lebih) dari screenshot di bawah dengan menggunakan kode grafis primitif 10 exp 15 exp 20 exp
  • 11. Mobile Game Developer War 4: Online Camp Cara menyelesaikan Quest 1. Kirim source code MainCanvas.java ke email: quest@agateacademy.com 2. Gunakan subject “Quest Online Camp 03a – Primitive Graphics”
  • 12. Mobile Game Developer War 4: Online Camp • Untuk menyelesaikan materi, kunjungi http://bit.ly/KOVvxq • Untuk pertanyaan atau diskusi, bisa dilakukan via forum: http://bit.ly/mgdw4forum