BAB II
LANDASAN TEORI 2.1
Definisi Game Game menurut Agustinus Nilwan merupakan:
Suatu aktifitas yang terstruktur atau semi terstruktur yang dilakukan untuk
bersenang-senang maupun sebagai
alat untuk
metode
pembelajaran.
Permainan komputer yang dibuat dengan teknik dan metode animasi. Jika ingin mendalami pengunaan animasi haruslah memahami pembuatan game. Atau jika ingin membuat game, maka haruslah memahami teknik dan metode animasi, sebab keduanya saling berkaitan[3].
2.2
Sejarah Perkembangan Game Pada tahun 1947 Thomas Toliver Goldsmith Jr dan Estle Ray Mann
menciptakan permainan simulator rudal Cathode Ray Tube Device Amusement. Permainan ini terinspirasi dari kecanggihan radar perang dunia II. Inilah game elektronik pertama yang tercatat dalam sejarah. Penggunaannya terbatas untuk kepentingan simulasi latihan militer. Pada tahun 1970-an game elektronik bisa dinikmati di rumah-rumah. Ralph Baer, seorang jerman berdarah yahudi, mendesain video game rumahan pertama dengan prototipe bernama Brown Box[4].
2.3
Klasifikasi Game Berdasarkan jenis platform atau alat yang digunakan, game terdiri dari
beberapa jenis, yaitu: 1.
Game PC (Personal Computer) / Desktop Merupakan game yang dimainkan pada PC(Personal Computer) yang
memiliki kelebihan yaitu memiliki tampilan antarmuka yang baik untuk input maupun output, output visual kualitas tinggi karena layar computer biasanya memiliki resolusi yang jauh lebih tinggi dibandingkan dengan layar televisi biasa. II-1
2.
Game Console Merupakan game yang dijalankan pada suatu mesin spesifik yang biasanya
tersedia di rumah pribadi, seperti Microsoft Xbox 360, Nintendo Wii dan sebagainya. 3.
Game Arcade Merupakan game yang dijalankan pada mesin dengan input dan output
audio visual yang telah terintegrasi dan tersedia ditempat-tempat umum, seperti mal, bandara dan sebagainya. 4.
Game Online Merupakan game yang hanya dapat dimainkan secara online melalui LAN
atau internet. 5.
Mobile Games Game yang dapat dimainkan atau khusus untuk mobile phone atau PDA[5].
2.4
Komponen Game Mengenai komponen game, Arief Sadiman mengungkapkan empat
komponen utama permainan yaitu:
2.5
a.
Adanya pemain (pemain-pemain),
b.
Adanya lingkungan di mana para pemain berinteraksi,
c.
Adanya aturan main,
d.
Adanya tujuan tertentu yang ingin dicapai[6].
Pengembangan Game MDA Kerangka MDA (berdiri untuk Mekanika, Dinamika, dan Estetika),
dikembangkan dan diajarkan sebagai bagian dari Game Design dan Tuning Lokakarya di Game Developers Conference, San Jose 2001-2004. MDA adalah pendekatan formal untuk memahami suatu permainan yang mencoba untuk menjembatani kesenjangan antara desain game dan pengembangan, kritik permainan, dan penelitian permainan teknis. Kerangka MDA mengkhususkan penggunaan untuk game dengan mengkotak-kotakan mereka ke dalam komponen yang berbeda:
II-2
Rules
System
Fun
...dan membuat design itu dengan yang sejajar: Mechanics
Dynamics
Aesthetics
Gambar 2.1 Komponen Kerangka MDA Mechanics, menggambarkan komponen tertentu dari permainan, pada tingkat representasi data dan algoritma. Dynamics, menggambarkan perilaku run-time dari pembuat permainan kepada input pemain dan output yang lainnya dari waktu ke waktu. Aescthetics, menggambarkan respon emosional yang dibangkitkan dari pemain, ketika dia berinteraksi dengan sistem game.
Dalam menggambarkan Aesthetics suatu permainan, kita menjauhkan katakata seperti “fun” dan “gameplay” yang diarahkan kedalam kosakata. Hal tersebut termasuk tetapi tidak termasuk pada taxonomy yang tercantum disini: 1.
Sensation
5.
Game sebagai kesenangan 2.
3.
Fantasy
Game sebagai kerangka sosial 6. Discovery
Game sebagai make-believe
Game sebagai wilayah yang belum
Narrative
dipetakan
Game sebagai drama 4.
Fellowship
7. Expression
Challenge Game sebagai tantangan
Game sebagai penemuan jati diri 8. Submission Game sebagai hobi[7]
2.6
Unity 3D Unity 3D adalah perangkat lunak game engine untuk membangun
permainan 3 Dimensi (3D). Game engine adalah alat yang berada dibalik layar sebuah aplikasi/game dari artwork sampai perhitungan matematika dan rendering. Unity 3D berperan dalam menciptakan obyek maya 3D dan proses rendering grafis sama seperti yang dilakukan pada lingkungan antarmuka Unity 3D.
II-3
Sebelum dapat menjalankan aplikasi yang dibuat dengan unity android diperlukan adanya pengaturan lingkungan pengembang android pada perangkat. Unity android memungkinkan pemanggilan fungsi kustom yang ditulis dalam C / C + + secara langsung dan Java secara tidak langsung dari script C #[8].
Seperti kebanyakan game engine lainnya, Unity Engine dapat mengolah beberapa data seperti objek tiga dimensi, suara, tekstur, dan lain sebagainya. Keunggulan dari unity engine ini dapat menangani grafik dua dimensi dan tiga dimensi. Unity Engine memiliki kerangka kerja (framework) lengkap untuk pengembangan professional. Sistem inti engine ini menggunakan beberapa pilihan bahasa pemrograman, diantaranya C#, javascript, maupun boo. Unity3D editor menyediakan beberapa alat untuk mempermudah pengembangan yaitu Unity Tree dan terrain creator untuk mempermudah pembuatan vegetasi dan terrain serta MonoDevelop untuk proses pemrograman[9]. Kelebihan software Unity 3D Engine :
Mempunyai tools yang lengkap dalam pembuatan games. Bisa digunakan pada komputer, ponsel pintar android, iPhone, PS3, dan X- BOX. Cocok untuk pemula atau yang sudah mahir. Flexible and EasyMoving, rotating, dan scaling objects hanya perlu sebaris kode. Begitu juga dengan Duplicating, removing, dan changing properties. Mendukung 3 bahasa pemrograman, JavaScript, C#, dan Boo. Kekurangan software Unity 3D :
Game engine ini mempunyai kapasitas memory yang sangat tinggi, bisa mencapai 500-600 Mb. Game engine ini tidak bisa modelling , karena unity 3D bukan game engine untuk mendesain. II-4
2.7
CorelDraw X6 CorelDraw adalah program ilustrasi atau editor grafik vector yang
dikembangkan oleh Corel, sebuah perusahaan perangkat lunak yang bermarkas di Ottawa, Kanada. CorelDRAW pada awalnya dikembangkan untuk sistem operasi Windows 2000 dan seterusnya. Versi CorelDRAW untuk Linux dan Mac OS pernah dikembangkan, namun dihentikan karena beberapa alasan tertentu. Versi CorelDRAW X6 memiliki tampilan baru serta beberapa fitur baru yang tidak ada pada CorelDraw versi sebelumnya. Advanced OpenType Support, New Custom-built Colour Harmonies, New Native 64-bit and Enhanced MultiCore Support, New Creative Vector Shaping tools, New Styles Engine and Docker, New Corel Website Creator X6 application, New Smart Carver, Improved Page Layout Capabilities, Redesigned Object Properties Docker dan sebagainya.
Pendiri CorelDraw Software CorelDraw merupakan salah satu produk dari Corel Corporation, perusahaan pembuat perangkat lunak komputer yang didirikan pada tahun 1985 di Ottawa Kanada. Penemu CorelDraw dialah Michael Cowpland lahir pada tanggal 23 tahun 1943, menerima gelar teknik Bsc. dari Imperial College di London kemudian pada tahun 1964 pindah ke Kanada lalu menyelesaikan pendidikan masternya pada tahun 1968 dan akhirnya mendapat gelar Ph.D. dari Universitas Carleton Ottawa pada tahun 1973. Dia adalah salah satu entrepreneur dari Kanada, businessman, dan pendiri dari Corel, dia cikal bakal yang melakukan research
laboratory
("Corel"
kepanjangan
dari
"Cowpland
Research
Laboratory")[10].
2.8
UML UML (Unified Modeling Language) adalah sebuah bahasa untuk
menentukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau perangkat lunak) dari sistem perangkat lunak, seperti pada pemodelan bisnis dan sistem non perangkat lunak lainnya. II-5
UML merupakan suatu kumpulan teknik terbaik yang telah terbukti sukses dalam memodelkan sistem yang besar dan kompleks. UML tidak hanya digunakan dalam proses pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan pemodelan. 2.8.1
Bagian-Bagian UML Bagian-bagian utama dari UML adalah view, diagram, model element, dan
general mechanism. A. View View digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi yang berisi sejumlah diagram. B. Use case view Mendeskripsikan fungsionalitas sistem yang seharusnya dilakukan sesuai yang diinginkan external actors. Actor yang berinteraksi dengan sistem dapat berupa user atau sistem lainnya. Use case view digambarkan dalam use case diagrams dan kadang-kadang dengan activity diagrams. Use case view digunakan terutama untuk pelanggan, perancang (designer), pengembang (developer), dan penguji sistem (tester). C.
Logical view Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class, object dan relationship ) dan kolaborasi dinamis yang terjadi ketika object mengirim pesan ke object lain dalam suatu fungsi tertentu. Logical view digambarkan dalam class diagrams untuk struktur statis dan dalam state, sequence, collaboration, dan activity diagram untuk model dinamisnya. Logical view digunakan untuk perancang (designer) dan pengembang (developer).
D.
Component view Mendeskripsikan implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya dari code module diperlihatkan dengan struktur dan ketergantungannya juga alokasi sumber daya komponen dan informasi administrative lainnya. Component view digunakan untuk pengembang (developer).
E. Concurrency view Membagi sistem ke dalam proses dan prosesor. Concurrency view II-6
digambarkan dalam diagram dinamis (state, sequence, collaboration, dan activity diagrams) dan diagram implementasi (component dan deployment diagrams) serta digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester). F. Deployment view Mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana hubungannya dengan lainnya. Deployment view digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester). G. Diagram Diagram berbentuk grafik yang menunjukkan simbol elemen model yang disusun untuk mengilustrasikan bagian atau aspek tertentu dari sistem. Sebuah diagram merupakan bagian dari suatu view tertentu dan ketika digambarkan biasanya dialokasikan untuk view tertentu. Adapun jenis diagram antara lain : 1. Use Case Diagram Use case adalah abstraksi dari interaksi antara sistem dan actor. Use case bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah sistem dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah sistem dipakai. Use case merupakan konstruksi untuk mendeskripsikan bagaimana sistem akan terlihat di mata user. Sedangkan use case diagram memfasilitasi komunikasi diantara analis dan pengguna serta antara analis dan client. 2. Class Diagram Class adalah dekripsi kelompok obyek-obyek dengan property, perilaku (operasi) dan relasi yang sama. Sehingga dengan adanya class diagram dapat memberikan pandangan global atas sebuah sistem. Hal tersebut tercermin dari class-class yang ada dan relasinya satu dengan yang lainnya. Sebuah sistem biasanya mempunyai beberapa class diagram. Class diagram sangat membantu dalam visualisasi struktur kelas dari suatu sistem. 3. Component Diagram Component software merupakan bagian fisik dari sebuah sistem, karena menetap di komputer tidak berada di benak para analis. Komponen II-7
merupakan implementasi software dari sebuah atau lebih class. Komponen dapat berupa source code, komponen biner, atau executable component. Sebuah komponen berisi informasi tentang logic class atau class yang diimplementasikan sehingga membuat pemetaan dari logical view ke component view. Sehingga component diagram merepresentasikan dunia riil yaitu component software yang mengandung component, interface dan relationship. 4. Deployment Diagram Menggambarkan tata letak sebuah sistem secara fisik, menampakkan bagian-bagian software yang berjalan pada bagian-bagian hardware, menunjukkan hubungan komputer dengan perangkat (nodes) satu sama lain dan jenis hubungannya. Di dalam nodes, executeable component dan object yang dialokasikan untuk memperlihatkan unit perangkat lunak yang dieksekusi oleh node tertentu dan ketergantungan komponen. 5. State Diagram Menggambarkan semua state (kondisi) yang dimiliki oleh suatu object dari suatu class dan keadaan yang menyebabkan state berubah. Kejadian dapat berupa object lain yang mengirim pesan. State class tidak digambarkan untuk semua class, hanya yang mempunyai sejumlah state yang terdefinisi dengan baik dan kondisi class berubah oleh state yang berbeda. 6. Sequence Diagram Sequence Diagram digunakan untuk menggambarkan perilaku pada sebuah skenario. Kegunaannya untuk menunjukkan rangkaian pesan yang dikirim antara object juga interaksi antar object, sesuatu yang terjadi pada titik tertentu dalam eksekusi sistem. 7. Collaboration Diagram Menggambarkan kolaborasi dinamis seperti sequence diagrams. Dalam menunjukkan pertukaran pesan, collaboration diagrams menggambarkan object dan hubungannya (mengacu ke konteks). 8. Activity Diagram Menggambarkan rangkaian aliran dari aktifitas, digunakan untuk mendeskripsikan aktifitas yang dibentuk dalam suatu operasi sehingga dapat juga digunakan untuk aktifitas lainnya seperti use case atau interaksi. II-8
2.8.2 Tujuan Penggunaan UML Tujuan dari penggunaan UML adalah sebagai berikut : 1. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses rekayasa. 2. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan. 3. Memberikan model yang siap pakai, bahasa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum. UML bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat lengkap dan detail. Dengan cetak biru ini maka akan bisa diketahui informasi secara detail tentang coding program atau bahkan membaca program dan menginterpretasikan kembali ke dalam bentuk diagram (reserve enginering).
2.9
Pengertian dan Sejarah Android Menurut Nazruddin Safaat H[11], Android adalah sistem operasi yang
berbasis Linux untuk telepon seluler seperti telepon pintar dan komputer tablet. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Pada bulan Oktober 2003 Android didirikan di Palo Alto oleh Andy Rubin, Rich Miner, Nick Sears, dan Chris White. Pada 17 Agustus 2005 Google mengakuisisi Android Inc. Rubin, Miner, dan White tetap bekerja di perusahaan setelah proses akuisisi. Pada bulan November 2007 Android versi beta mulai diluncurkan. Dan pada bulan September 2008 Android versi 1.0 diluncurkan sebagai versi berbayar pertama mereka. Sejarah tentang versi Android: 1.
Android 1.0 Angel Cake. Tanggal peluncuran 23 September 2008
2.
Android 1.1 Battenberg . Tanggal peluncuran 9 Februari 2009 II-9
3.
Android 1.5 Cupcake . Tanggal peluncuran 30 April 2009
4.
Android 1.6 Donut . Tanggal peluncuran 15 September 2009
5.
Android 2.0 Eclair . Tanggal peluncuran 26 Oktober 2009
6.
Android 2.0.1 Eclair . Tanggal peluncuran 3 Desember 2009
7.
Android 2.1 Eclair . Tanggal peluncuran 12 Januari 2010
8.
Android 2.2 - 2.2.3 Froyo . Tanggal peluncuran 20 Mei 2010
9.
Android 2.3 - 2.3.2 Gingerbread . Tanggal peluncuran 6 Desember 2010
10. Android 2.3.3 - 2.3.7 Gingerbread . Tanggal peluncuran 9 Februari 2011 11. Android 3.0 Honeycomb . Tanggal peluncuran 22 Februari 2011 12. Android 3.1 Honeycomb . Tanggal peluncuran 10 Mei 2011 13. Android 3.2 Honeycomb . Tanggal peluncuran 15 Juli 2011 14. Android 4.0 - 4.0.2 Ice Cream Sandwich . Tanggal peluncuran 19 Oktober 2011 15. Android
4.0.3
-
4.0.4
Ice
Cream
Sandwich
.
Tanggal
peluncuran Desember 16, 2011 16. Android 4.1 Jelly Bean . Tanggal peluncuran 9 Juli 2012 17. Android 4.2 Jelly Bean . Tanggal peluncuran 13 November 2012 18. Android 4.3 Jelly Bean . Tanggal peluncuran 24 Juli 2013 19. Android 4.4 KitKat . Tanggal peluncuran 31 Oktober 2013
II-10