Kamis, 12 Juni 2014

Seminar Open Lecture: Game Industry Global and Indonesia, Opportunity and Challenges

Universitas Gunadarma bekerja sama dengan Good Game Campus, akan menyelenggarakan seminar Open Lecture: Game Industry Global and Indonesia, Opportunity and Challenges pada:

Hari, tanggal   : Selasa, 10 Juni 2014
Waktu             : 09.00 - 13.00 WIB
Tempat            : Auditorium Gd. 4 lantai 6 Kampus Margonda Raya No. 100 Depok


Pada seminar ini akan menghadirkan pembicara sbb:

Tim UG IBC (Dosen Universitas Gunadarma)
Wong Lok Dien (CEO Altermyth)
Kim Kyoung Hwan (Dosen GG Campus)

Stephen Cho (CEO Hunga Games) 



Berikut Materi Persentasi dari masing-masing Narasumber Seminar Open Lecture: Game Industry Global and Indonesia, Opportunity and Challenges


1.  Bpk Andreas (Tim UG IBC)
Bpk Andreas: “Game terbaik adalah Games yang bisa dimainkan semua orang”
Tema : “Game Yesterday & Today dan Game Component”

1.1  Game Yesterday & Today
Merupakan game popular, atau sepanjang masa. Orang yang memainkan game ini tidak akan pernah bosan karena gemenya yang sangat bagus dan menarik. Contoh dari Game ini : Prince Of Persia, Angry Brid, dll.

1.2  Game Component
Merupakan komponen- komponen atau isi dari game itu sendiri. Game component terdiri dari 2(dua) bagian yaitu content + engine.
1.2.1 Content terdiri dari:
a.   Sound
b.   Effect
c.   Lighting
d.   Level design
e.   Animation
f.   dll
1.2.2 Engine terdiri dari:
a.   Motion capture:
Faktor-faktor Game yang baik:
-  Playability and game play
-  How fun are the Game
-  Price
-  Innovation only god when these two above factor are met.
-  Timing
-  Play by industry
b.   Innovation controller Games
Brain Computer interface : suatu device yang digunakan untuk menjembatani otak dengan computer. Innovasi ini menggunakan syaraf otak untuk mengatur suatu permainan. Fungsi dari BCI ini juga dapat digunakan untuk melihat fungsi apakah yang terkandung dalam otak seseorang. Untuk memainkan pemainan dengan controller BCI ini  diperlukan ketenangan suasana, agar pemain dapat berkonsentrasi penuh untuk mencapai tujuan dari game yang sedang dimainkannya.
Prinsip kerja dari BCI sendiri berupa stimulus gelombang Alpha, Beta, Delta, Theta dan Neural Impulse Actuator (NIA).


2.  Wong Lok Dien (CEO Altermyth)
Tema: “The Rise Of Gaming” (Persaingan dunia Games di Dunia)

Persaingan Industri Game yang berpenghasilan milyaran atau triliunan dalam perbulan lebih banyak melalui Games base Online.
Untuk meningkatkan atau mengembangkan suatu game yang akan kita buat, diperlukan beberapa aspek pendukung dalam pembuatan dan pemasaran game itu sendiri. Usahakan untuk mencapai global atau umum, dengan memudahkan akses platform pada game yang kita buat. Dibawah ini adalah tahap-tahap pembuatan game yang baik, yaitu:
a.  Bunch of references. Untuk membuat suatu game yang baik diperlukan beberapa referensi game-game yang sudah ada kemudian digabungkan dan diperbarui lagi menjadi game yang up to date.
b.  Free & Easy to Use tools. Setelah memiliki beberapa referensi game, saatnya mengimplementasikannya ke dalam aplikasi game yang akan kita buat. Usahakan untuk menggunakan peralatan yang gratis dan mudah dalam penggunaannya.
c.  Monetize ready. Apabila game yang telah kita buat telah selesai dengan baik kita sudah siap untuk menampung pundi-pundi uang.
d.  Open market. Dari semua tahap inilah tahap yang paling penting, usahakan aplikasi kita dapat ditemukan disemua market khusus platform gadget-gadget game yang sedang trend di masa sekarang.
Dari keempat tahap tersebut ada tahapan-tahapan lain yang  perlu dimulai dari diri kita sendiri. Tahapan tersebut antara lain:
a.  Concept
b.  Execution
c.  Access to the market
d.  Marketing / promotion
e.  Service & operations


3.  Kim Kyoung Hwan (Dosen GG Campus)
Tema: “Game Engine Unity 3D”

Untuk pembuatan game unity 3D ini tidak hanya diperuntukan untuk seorang programmer saja, orang lain yang bukan seorang programmer pun dapat membuatnya, pembuatan game pada Unity 3D ini gampang-gampang sulit. Kita hanya memerlukan ketelitian dan keterampilan untuk membuat design graphics yang nyata, sehingga game yang kita buat dapat menyerupai keadaan aslinya. Untity 3D platform:
                    -  IOs                                                -  PS3
                    -  Android                                        -  Xbox 360
                    -  Flash                                             -  Wii
                    -  PC                                                 -  Web Player
                    -  Mac                                               -  Blackberry


4.  Stephen Cho (CEO Hunga Games)
Stephen Cho:”Perkembangan Mobile Games 5 tahun ke depan akan semakin berkembang. Contoh dari Mobile messanger memiliki pengembangan yang menjadi memiliki fitur bermain Games seperti Line, KakaoTalk, dll”
Tema: “Mobile Game Market Smart Trends and Success Stories”

a.  Global mobile market game memerlukan device yang banyak untuk penembangannya. Sudah banyak platform yang mendukung seperti Line, We Chat, Kakao Talk, dll.
b.  Untuk pemasaran global mobile market sangat meningkat dibandingkan game PC.
c.  Di Amerika pada awalnya menghasilkan game untuk PC, namun setelah apple muncul, game dari platform PC berubah menjadi game berbasis mobile platform. Pemakaian mobile game sendiri terbilang sangat banyak dan luas. Mulai anak 10th-30th banyak yang sudah menggunakannya.
d.  Di Asia pun tidak kalah pemakaiannya. Mulai dari anak kecil sampai ibu-ibu pun banyak dapat kita jumpai sedang asyik memainkan mobile game yang dimilikinya. Oleh karena itu apabila kita ingin menciptakan suatu game mobile yang baik, sebaiknya dibuat secara global atau umum sehingga siapapun dapat memainkan permainan yang kita buat tanpa harus terbentur usia.
e.  Company game mobile Korea yang sukses antara lain:
-  Gamevil                               -  SundayTOZ
-  Com2us                                -  pAti
-  Pictosoft                              -  nfx
-  Talk                                     
f.  Tidak hanya Korea, Indonesia pun memiliki beberapa web game / game online yang sukses, antara lain:
-  PT. Kreon
-  Lyro

-  Megaxus

Senin, 20 Mei 2013

Membuat WEB dari html, css, dan js

1. Pengantar HTML, CSS, dan JS Untuk Membuat WEB

1. HTML <></>

Penjelasan HTML
HTML (Hyper Text Markup Language) merupakan kode-kode yang digunakan untuk membuat/mengedit sebuah halaman web. HTML terdiri dari tag, attribute, dan value kecuali untuk beberapa tag yang tidak memiliki attribute dan value seperti "<i>", "<b>", "<u>", dll (tag-tag tersebut akan dijelaskan fungsinya pada posting yang lain). Tag diapit oleh dua kurung siku "<tag>". Dan tag terdiri dari tag pembuka dan tag penutup yang ditandai dengan garis miring. Ada juga beberapa tag yang tidak memiliki tag penutup seperti "<br>", "<hr>", "<img>", dll ini di sebut dengan attribut.

Apa yang dibutuhkan dalam Belajar HTML ini?
1. Komputer dan koneksi ke Internet.
Agar kita bisa membaca dan belajar sambil praktek.
2. Teks editor.
Teks editor seperti Notepad di Windows adalah pilihan paling mudah karena sudah terintegrasi dengan system kita. Jika ingin menggunakan teks editor yang lebih bagus lagi, bisa men-download Notepad ++.
Jika menggunakan software lain seperti MS FrontPage atau Dreamweaver usahakan untuk selalu berada di kode "HTML View" dan gunakan real browser untuk menampilkan atau "preview" dokumen HTML anda.
Dengan kata lain biasakan untuk membuat, mengedit dan memasukkan kode-kode HTML dengan mengetiknya secara manual sehingga nantinya akan terbiasa dan hafal dengan kode-kode HTML.
3. Browser atau peramban.

Kamis, 11 April 2013

Superclass dan supclass pada Inheritiance (Pewarisan)


PROGRAM SUPERCLASS

Source Code pada Kendaraan.java
import java.util.Scanner;
public class Kendaraan { //superclass
    public void kendaraan() {
        System.out.println("\n\nIni Merupakan Beberapa Jenis Kendaraan(SuperClass)");
        }
    }

class RodaDua extends Kendaraan { //class RodaDua turunan dari class Kendaraan
    public void tampilRodaDua() {
        super.kendaraan(); //memanggil methot kendaraan dari super classnya yaitu class Kendaraan
        String[] isiRodaDua={"Sepeda","Sepeda Motor"};
        System.out.println("\nIni Merupakan Beberapa Jenis Kendaraan Roda Dua(SubSuperClass)");
        for(int i=0;i<=(isiRodaDua.length-1);i++) {
            System.out.println(String.format("%d. %s",(i+1),isiRodaDua[i]));
            }
        }
    }

class RodaTiga extends Kendaraan { //class RodaTiga turunan dari class Kendaraan
    public void tampilRodaTiga() {
        super.kendaraan(); //memanggil methot kendaraan dari super classnya yaitu class Kendaraan
          String[] isiRodaTiga={"Becak","Bentor","Bemo","Bajaj"};
        System.out.println("\nIni Merupakan Beberapa Jenis Kendaraan Roda Tiga(SubSuperClass)");
        for(int i=0;i<=(isiRodaTiga.length-1);i++) {
            System.out.println(String.format("%d. %s",(i+1),isiRodaTiga[i]));
            }
        }
    }

class RodaEmpatLebih extends Kendaraan { //class RodaEmpatLebih turunan dari class Kendaraan
    public void tampilRodaEmpatLebih() {
        super.kendaraan(); //memanggil methot kendaraan dari super classnya yaitu class Kendaraan
          String[] isiRodaEmpatLebih={"Mobil Ptibadi","Mobil Ankot","Mobil Box","Truk","Vuso"};
        System.out.println("\nIni Merupakan Beberapa Jenis Kendaraan Roda Empat atau Lebih(SubSuperClass)");
        for(int i=0;i<=(isiRodaEmpatLebih.length-1);i++) {
            System.out.println(String.format("%d. %s",(i+1),isiRodaEmpatLebih[i]));
            }
        }
    }

class Menu { //class sebagai program utama
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
          int pilihan;
          String ulang;
         
          // mendeklarasikan cara memanggil masing-masing class
          RodaDua rd=new RodaDua();
        RodaTiga rt=new RodaTiga();
        RodaEmpatLebih re=new RodaEmpatLebih();
         
          do {
        System.out.println("\n\n==== Jenis-jenis Kendaraan ====");
        System.out.println(" 1. Kendaraan Roda Dua");
        System.out.println(" 2. Kendaraan Roda Tiga");
        System.out.println(" 3. Kendaraan Roda Empat Lebih");
        System.out.println("===============================");
        System.out.print("Masukkan pilihan  "); pilihan=input.nextInt();
        switch (pilihan) {
            case 1: {
                rd.tampilRodaDua(); //memanggil method tampilRodaDua dari class RodaDua
                break;
                }
            case 2: {
                rt.tampilRodaTiga(); //memanggil method tampilRodaTiga dari class RodaTiga
                break;
                }
            case 3: {
                re.tampilRodaEmpatLebih(); //memanggil method tampilRodaEmpatLebih dari class RodaEmpatLebih
                break;
                }
            default: { System.out.println("Salah inputan kk"); break;}
            }
        System.out.print("\nMau ulang lagi?? y/t  "); ulang=input.next();
        } while (ulang.equals("y"));
          System.exit(0);
        }
    }

LOGIKA PROGRAM
   Program kali ini membahas tentang inheritance(pewarisan). Jadi class-class yang baru (subsuper class) di buat akan mewariskan sifat-sifat class utama (super class). Bila inging membuat class turunan bisa menggunakan kata kunci extends contoh class RodaDua extends Kendaraan artinya class RodaDua adalah turunan dari class Kendaraan dan class RodaDua mewariskan sifat-sifat yang ada pada class Kendaraan. Perintah pemangilan sifat-sifat ini bisa menggunakan perintah super.<namaMethod>(); contoh super.tampilRodaDua(); artinya akan menampilkan dan memangil isi atau sifat-sifat dari class supernya.
   Alur program, program pertama kali akan menampilkan pilihan memilih tipe kendaraan dari jumlah roda setelah itu akan di input pilihan setelah innputan sudah di dapat maka akan di lakukan pemilihan dengan mengunakan switch, setelah itu makan akan masuk ke subclass yang dipilih dan di supclass ada perintah super.<namaMethod>(); yang artinya akan menampilkan isi dari super class, Stelah itu baru akan kembali lagi ke subclass dan akan memproses yang ada di supclass. Setelah menampilkan output maka akan di lakukan penginputan apakah mau mengulangin program apa tidak, jika iya maka akan mengulang memilih jenis kendaraan berdasarkan jumlah ban dan jika tidak maka program selesai.


OUTPUT:



Kelompok:

Kamis, 04 April 2013

Program JAVA menggunakan lebih dari satu class / dua class part II


PROGRAM VALIDASI TANGGAL

Source Code pada Tanggal.java
import java.util.*; //memangil package java.util.* untuk Date
import java.text.*; //memangil package java.text.* untuk SimpleDateFormat
import java.util.Scanner; //memangil package java.util.Scanner untuk menginput
public class Tanggal {
    public static void main(String[] agrs){
        String inputTanggal,stringTgl,stringBln,stringThn,ulang;
        int intThn,intBln;
        String[] blnNama={"Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"};
        Cek ck=new Cek(); //mendeklarasikan cara pemanggilan class Cek dengan keyword ck
          Scanner input=new Scanner(System.in);
          do{
        System.out.print("\n Masukkan tanggal (dd-mm-yyyy)  "); inputTanggal=input.next(); //menginput variabel inputTanggal
          if (ck.TglValid(inputTanggal)==true) { //jika tanggal yang di input benar dan valid
            //memecah inputan menjadi 3 bagian yaitu tanggal(tgl), bulan(bln), dan tahun(thn)
            stringTgl=inputTanggal.substring(0,2); //mengambil digit ke 1-2 dari inputTanggal dan dimasukan ke stringTgl
            stringBln=inputTanggal.substring(3,5); //mengambil digit ke 4-5 dari inputTanggal dan dimasukan ke stringBln
            stringThn=inputTanggal.substring(6); //mengambil digit ke 6-terakhir dari inputTanggal dan dimasukan ke stringThn
            intBln = (Integer.parseInt(stringBln))-1; //mengubah string menjadi integer dan menentukan index array untuk bulan
            System.out.println(String.format("\n\n Tanggal yang anda input adalah = %s %s %s ",stringTgl,blnNama[intBln],stringThn));
            ck.kabisat(stringThn); //memangil method kabisat yang berda di class Cek untuk mengecek apakat tahur yang di input adalah tahun kabisat
            }
        else { //jika tanggal yang di input salah
             System.out.println("\n\n WARNING!  Tanggal yang anda input salah");
             }
          System.out.print("\n\n Apakah mau mengulang lagi y/t?  "); ulang=input.next();
            } while ( ulang.equals("y") ); //perintah mengecek perulangan dan akan di ulang jika inputan ulang adalah y
        System.out.println("\n\n =============================================");
        System.out.println("  Terima Kasih Telah Menggunakan Program Kami");
        System.out.println(" =============================================");
        System.exit(0);
        }
    }

class Cek{
    //mengecek validasi tanggal yang di input
    public static boolean TglValid(String tgl){
        String pola="dd-MM-yyyy";
        try {
            SimpleDateFormat format=new SimpleDateFormat(pola); //deklarasi format
            format.setLenient(false); //jika tanggal yang di input salah akan mertipe boolean false
            Date date=format.parse(tgl);
            return true;
            }
        catch (ParseException ex){
            System.err.println(" Error: "+ex.getMessage()); //memberitahuan pesan error
              return false;
              }
        }
    //mengecek tahun kabisat
    public void kabisat(String stringThn) {
        int intThn;
        intThn = Integer.parseInt(stringThn); //mengubah string menjadi integer
        String thnKabisat=" Tahun yang anda input adalah Tahun Kabisat";
        String bknThnKabisat=" Tahun yang anda input bukan Tahun Kabisat";
        //mengecek apakah tahun yang di input merupakan tahun kabisat
        if (intThn%4==0) {
            if (intThn%100==0) {
                if (intThn%400==0) { System.out.println(thnKabisat); } //Jika tahun itu habis dibagi 400, maka tahun kabisat.
                else { System.out.println(bknThnKabisat); } //Jika tahun itu tidak habis dibagi 400 tetapi habis dibagi 100, maka bukan tahun kabisat.
                }
            else { System.out.println(thnKabisat); } //Jika tahun itu tidak habis dibagi 400 dan 100 tetapi habis dibagi 4, maka tahun kabisat.
            }
        else { System.out.println(bknThnKabisat); } //Jika tahun tidak habis dibagi 400, 100, dan 4, maka bukan tahun kabisat.
        }
    }


LOGIKA PROGRAM
    Pertama kita akan di minta memasukkan tanggal dengan ketetapan tanggal-bulan-tahun (dd-MM-yyyy). Setelah menginput lalu akan di periksa apakah tanggal yang di input benar atau valid, dengan perintah SimpleDateFormat dan Date. Jika pengecekan pola penginputan dan ternyata tanggal yang di input benar atau valid maka akan di lakukan pemecahan atau membagi inputan tanggal sengan perintah substring. Pembagian atas dua 1-2 adalah tanggal, digit 4-5 adalah bulan, dan digit 7-10 adalah tahun. Setelah itu bulan yang sebelumnya adalah string di ubah menjadi integer dengan perintah Integer.parseInt fungsinya adalah agar diolah menjadi array blnNama yang sebelumnya array blnNama sudah dideklarasikan dan berisi nama-nama bulan dan akan memerintahkan untuk menampilkan tanggal, string dalam array blnNama, dan tahun. Setelah menampilkan hasil baru akan di periksa apakah tahun yang di input adalah tahun kabisat, jika sudah di cek apakah itu merupakan tahun kabisat dengan ketetapan yang ada makan akan memberitahunan bahwa itu merupakan tahun kabisat atau tidak, dan akan muncul pertanyaan apakah ingin mengulangin memeriksa jika mau akan mengulang meminta inputna tanggal jika tidak akan keluar dari program. Dan jika pada saat pemeriksaaan dan ternyata tanggal yang di input tidak valid maka akan ada pesan error dan peringatan dan akan di minta akan mau mengulang memeriksa atau tidak.

    Pada program saya kali ini saya menggunakan perintah penanganan eksepsi try dan catch.
Penjelasan:
Fungsi try ini adalah mengecek apakan ada kesalahan dan bila ada maka akan di lempar pada catch.
try = coba dan catch = tangkap
Seolah-oleh pengertian sehari-hari tentang coba-coba (trial & error), jika terjadi error maka tangkap kesalahannya.
try { // Blok yang diperkirakan terdapat kesalahan
}
catch { //blok yang akan dijalankan bila terjadi error
}


OUTPUT:



Kelompok:
56411569 SAMPE TUA OMPUNG SUNGGU

Sponsor