Implementasi Teknologi Augmented Reality pada Game Logic Menggunakan Tracking Cylindrical Object

BIODATA DIRI

Personal Details


Name : Hilman Herlambang



Place/Date of birth : Bandung/December, 01th 1992 (22 y.o)



Nationality : Indonesia



Gender : Male




Religion : Moslem



Marital status : Single



Mobile : +62 851 0028 8873



Email : hilman.herlambang60@gmail.com



Address : Jl. Pasirlayung no. 111 Rt.07 Rw.07

Formal Education



1999-2005 : SD Negeri Padasuka 3 Kota Bandung



2005-2008 : SMP Negeri 49 Kota Bandung



2008-2011 : SMK Negeri 2 Kota Bandung



2011-2015 : S1 Teknik Informatika UNIKOM Bandung
(Informatics Engineering)

Technical Skills
Skill

In the Scale 0 - 10


Pascal

7

C++

7

Java

7.5

C#

7.5

Projects Experience



Pembuatan “Aplikasi Denah Museum Geologi Berbasis Desktop” di
museum Geologi Bandung.

E-2

IMPLEMENTASI TEKNOLOGI AUGMENTED REALITY
PADA GAME BALL LOGIC MENGGUNAKAN TRACKING
CYLINDRICAL OBJECT

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

HILMAN HERLAMBANG
10111393

PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
2016


KATA PENGANTAR

Assalamualaikum Wr. Wb.
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa Allah
SWT karena atas berkat rahmat dan hidayah-Nya penulis dapat menyelesaikan
penelitian dengan judul Implementasi teknologi augmnted reality pada game ball
logic menggunakan tracking cylindrical object sebagai syarat untuk menyelesaikan
program studi Strata 1 Jurusan Teknik Informatika Fakultas Teknik dan Ilmu
Komputer di Universitas Komputer Indonesia.
Dalam penyusunan penelitian ini penulis memiliki sangat banyak
kekurangan, untuk itu penulis ingin mengucapkan terima kasih kepada pihak yang
telah banyak membantu penulis sehingga penulis dapat menyelesaikan penelitian
ini dengan baik. Oleh karena itu penulis mengucapkan terima kasih kepada:
1.

Tuhan Yang Maha Esa Allah SWT yang telah memberikan rizki dan karuniaNya sehingga penulis dapat menyelesaikan penelitian ini.

2.


Ibu tercinta Entin Hartini dan Bapak tercinta Yudi Sutomo yang telah
memberikan dukungan moral dan materi khususnya pengarahan ilmu yang
sangat berguna dalam merangsang pola pikir penulis sehingga penulis selalu
semangat dalam menyelesaikan penelitian Serta Adik tercinta Sendi
Oktapiandi, Ariel Darmawan dan Rizki Septiaji yang telah memberikan doa
dan dukungan.

3.

Ibu Nelly Indriani W, S.Si., M.T. selaku dosen pembimbing yang senantiasa
memberikan pengarahan, penjelasan ilmu dan motivasi yang bermanfaat untuk
menyelesaikan penilitian dengan kualitas baik.

4.

Bapak Angga Setiyadi, S.Kom., M.Kom. selaku reviewer yang telah
memberikan pengarahan dan pembenaran mengenai penelitian penulis
sehingga penelitian dapat lebih baik.

iii


5.

Ibu Kania Evita Dewi, S.Pd., M.Si. selaku dosen wali kelas IF 9 angkatan 2011
yang telah banyak memberikan bimbingan dan pengarahan mengenai
informasi perkuliahan.

6.

Seluruh Dosen dan Staff Program Studi Teknik Informatika Universitas
Komputer Indonesia.

7.

Argi Sugiyarsa, Dzikry Pramanda, Renata Kurniawan, Dimas Hamdani, Alih
Purwandi, Nizar Assegaf, Muhammad Iqbal T, Dicka Muhammad Fajar,
Wildan Abdulgani, Wismoyo Harrommy, Asep Ahadiaturrohman selaku
sahabat terdekat penulis di Universitas Komputer Indonesia.

8.


Teman-teman kelas IF 9 angkatan 2011 yang telah berjuang bersama.

9.

Teman-teman anak bimbing Ibu Nelly Indriani W, S.Si., M.T. yang selalu
saling membantu dan berbagi ilmu dan informasi.

10. Renita Putvi Chandri, Stefani Cindy, Winny Widawati selaku sahabat.
11. Ahmad Morteza Izati selaku sahabat di SMK Negeri 2 Kota Bandung yang
selalu memberikan semangat penulis agar menyelesaikan penelitian.
12. Semua pihak yang telah membantu penulis dalam menyelesaikan penelitian ini.
Penulisan laporan penelitian ini memiliki banyak kekurangan, untuk itu
penulis mengharapkan kritik dan saran pembangun sehingga penulis dapat lebih
baik lagi untuk kedepannya. Semoga penelitian ini dapat memberikan manfaat baik
bagi pembaca maupun penulis sendiri.
Bandung, 30 Juli 2016

Penulis


iv

DAFTAR ISI

ABSTRAK ............................................................................................................... i
ABSTRACT .............................................................................................................. ii
KATA PENGANTAR ........................................................................................... iii
DAFTAR ISI ............................................................................................................v
DAFTAR GAMBAR ........................................................................................... viii
DAFTAR TABEL ....................................................................................................x
DAFTAR SIMBOL ............................................................................................... xi
DAFTAR LAMPIRAN ........................................................................................ xiv
BAB I

PENDAHULUAN .....................................................................................1

I.1

Latar Belakang Masalah ................................................................................1


I.2

Perumusan Masalah .......................................................................................2

I.3

Maksud dan Tujuan .......................................................................................2

I.4

Batasan Masalah ............................................................................................3

I.5

Metodologi Penelitian ...................................................................................3

I.6

Sistematika Penulisan ....................................................................................5


BAB II LANDASAN TEORI ..................................................................................7
II.1

Augmented Reality ........................................................................................7

II.2

Marker ...........................................................................................................9

II.3

Markerless ...................................................................................................10

II.4

ARToolkit ....................................................................................................11

II.5

Tipe Data .....................................................................................................12

II.6

Tracking Cylindrical Object ........................................................................12

v

II.7

C Sharp (C#)................................................................................................13

II.8

JavaScript ....................................................................................................15

II.9

Unity 3D ......................................................................................................16

II.10 Game Crazy Ball .........................................................................................17
II.11 UML (Unified Modeling Language) ...........................................................18
II.12 Pengujian .....................................................................................................19
BAB III ANALISIS DAN PERANCANGAN SISTEM .......................................21
III.1 Analisis Masalah .........................................................................................21
III.1.1

Analisis Penyelesaian Masalah ...............................................................21

III.2 Analisis Sistem ............................................................................................21
III.3.1

Analisis Sistem Yang Berlaku ................................................................22

III.3 Analisis Game .............................................................................................25
III.3.1

Game Crazy Ball .....................................................................................25

III.3.2

Game Ball Logic .....................................................................................26

III.4 Analisis Kebutuhan Fungsional ...................................................................36
III.4.1

Use Case Diagram ...................................................................................36

III.4.2

Skenario Use Case Diagram ...................................................................37

III.4.3

Activity Diagram ....................................................................................42

III.4.4

Class Diagram ........................................................................................46

III.4.5

Sequence diagram ...................................................................................47

III.5 Analisis Kebutuhan Non Fungsional ...........................................................50
III.5.1

Analisis Kebutuhan Perangkat Keras ......................................................50

III.5.2

Analisis Kebutuhan Perangkat Lunak .....................................................51

III.5.3

Analisis Pengguna ...................................................................................51

III.6 Perancangan Sistem .....................................................................................51

vi

III.6.1

Perancangan Struktur Menu ....................................................................52

III.6.2

Perancangan Antarmuka .........................................................................52

III.6.3

Jaringan Semantik ...................................................................................55

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM ...................................57
IV.1 Implementasi ..................................................................................................57
IV.1.1 Implementasi Perangkat Keras ...................................................................57
IV.1.2 Implementasi Perangkat Lunak ..................................................................57
IV.1.3 Implementasi Class .....................................................................................58
IV.1.4 Implementasi Marker ..................................................................................58
IV.1.5 Implementasi Aplikasi ................................................................................59
IV.1.6 Implementasi Antarmuka ............................................................................59
IV.1 Pengujian Black Box ......................................................................................62
IV.2.2 Rencana Pengujian......................................................................................62
IV.2.3 Kasus dan Hasil Pengujian (Black Box Testing).........................................63
IV.2.4 Pengujian Akurasi Marker ..........................................................................68
IV.2.4 Pengujian Marker Terhadap Game Ball Logic ...........................................70
IV.2.5 Pengujian User ............................................................................................71
IV.2.6 Kesimpulan Hasil Pengujian .......................................................................77
BAB V KESIMPULAN DAN SARAN ................................................................79
V.1 Kesimpulan .....................................................................................................79
V.2 Saran................................................................................................................79
DAFTAR PUSTAKA ............................................................................................81

vii

viii

9

DAFTAR PUSTAKA
[1] D. Adidrana, “Perancangan Kartu Nama dengan Augmented Reality sebagai
Portofolio Digital,” Teknik Elektro dan Komputer, p. 1, 2013.
[2] D. M. Lengkey, “BROSUR FAKULTAS TEKNIK UNIVERSITAS SAM
RATULANGI

MANADO

DENGAN

TEKNOLOGI

MARKERLESS

AUGMENTED REALITY,” Teknik Elektro dan Komputer, pp. 1-2, 2014.
[3] ARToolKit, “Marker NFT Training,” Augmented Reality, 15 Februari 2016.
[Online]. Available: http://artoolkit.org/. [Diakses 20 04 2016].
[4] “indiedb,”

indiedb,

12

June

2013.

[Online].

Available:

http://www.indiedb.com/games/crazy-ball/news/game-release4. [Diakses 5
February 2016].
[5] S. Nakov, “FUNDAMENTALS OF COMPUTER PROGRAMMING WITH
C#,” dalam The Bulgarian C# Programming Book, 2013.
[6] M. Haverbeke, “Eloquent JavaScript,” dalam A Modern Introduction to
Programming, 2014.
[7] W. Siswantoko, “implementasi teknologi augmented reality pada game duck
hunt berbasis android.,” Teknik dan Ilmu Komputer, vol. II, pp. 29-30, 2015.
[8] R. M. d. K. Hamilton, “Learning UML 2.0,” 2006.
[9] M. E. Khan, “Different Forms of Software Testing Techniques for Finding
Error,” Journal of Computer Science, vol. 7, 2010.

81

BAB I
PENDAHULUAN
I.1

Latar Belakang Masalah
Augmented Reality (AR) adalah penggabungan benda-benda nyata dan

maya dilingkungan nyata, berjalan secara interaktif dalam waktu nyata, dan
terdapat integrasi antar benda dalam tiga dimensi, yaitu benda maya terintegrasi
dalam dunia nyata [1]. Beberapa metode yang dikembangkan dalam teknologi AR,
diantaranya Gesture Based, Occlusion Based, Marker Based ataupun Markerless.
Markerless menggunakan fitur alami (natural features) dari gambar atau objek
yang akan dilacak. ARToolkit adalah salah satu library yang digunakan untuk
pembuatan augmented reality, ARToolkit ini bersifat open source sehingga dalam
penggunaan library dapat disesuaikan dengan mudah.
Tracking terhadap markerless yang ada untuk saat ini dalam library
ARToolkit hanya berupa tracking pada sebuah foto atau dokumen [3]. Dikarenakan
metode markerless dalam ARToolkit melakukan penandaan dengan menggunakan
feature point, sehingga marker dapat dideteksi jika feature point tersebut
sepenuhnya dapat terlihat oleh kamera maka dari itu feature poin ini hanya mampu
diterapkan pada bidang datar saja. Tracking terhadap marker tersebut diharuskan
dapat mendeteksi marker secara keseluruhan karena jika melakukan pendeteksian
hanya dengan sebagian marker saja maka hasilnya tidak begitu baik dalam
penampilan object virtual, maka dari itu metode markerless dalam library
ARToolkit belum bisa mendeteksi marker yang sebagian saja seperti objek yang
berbentuk silinder. Objek silinder ini akan digunakan sebagai marker yang nantinya
akan dideteksi oleh webcam, pemilihan marker yang berbentuk silinder ini
didasarkan pada bentuk nya yang mempunyai bidang yang terbilang nyaman untuk
dipegang atau dimainkan user karena bagian sisi nya tidak memiliki sudut yang
tajam dan nantinya objek silinder ini akan digunakan sebagai alat kontrol dalam
game ball logic.
Dalam penelitian ini akan mencoba menerapkan Augmented reality pada
bidang yang berbentuk silinder, tentunya dengan marker yang berbentuk silinder
1

2

feature point yang digunakan sebagai penanda hanya sebagian saja yang dapat
dideteksi oleh kamera dan feature point yang tidak terdeteksi oleh kamera akan
diinisialisasi ulang agar marker tetap dapat dikenali oleh kamera walaupun feature
point yang dideteksi hanya sebagain saja. Pada penelitian ini marker yang
berbentuk silinder akan digunakan untuk mengontrol pergerakan bola, yang dapat
dimainkan dengan menggerakan marker silinder yang digenggam oleh user.
Sehingga game diharapkan dapat lebih interaktif dan lebih menarik.
Game yang akan diterapkan augmented reality dengan marker yang
berbentuk silinder adalah game 3D sederhana yang menggunakan bola sebagai
pergerakan user nya. Game itu adalah ball logic, ball logic ini dibuat dengan
mengacu kepada game crazy ball seperti, cara permainannya, tampilan menu level
dan beberapa map yang diambil langsung dari game crazy ball. Game ball logic ini,
user diharuskan untuk keluar dari level satu ke level berikutnya dengan
menggunakan bola sebagai pergerakan user nya. Tantangan dalam game ini berupa
tantangan geometris, musuh, benda-benda interaktif atau non interaktif yang
memiliki beberapa efek fisik maupun non fisik pada karakter pemain atau geometri
sekitarnya [4].
Berdasarkan pemaparan masalah yang telah dijelaskan, maka dalam penelitian
tugas akhir ini akan mengimplementasikan teknologi augmented reality pada game
ball logic menggunakan tracking cylindrical object.
I.2

Perumusan Masalah
Berdasarkan latar belakang yang telah dijelaskan, maka dirumuskan

masalah pada penelitian ini adalah sebagai berikut:
1. Bagaimana mengimplementasikan teknologi augmented reality pada game ball
logic menggunakan tracking cylindrical object.
2. Bagaimana melakukan suatu pengembangan library ARToolkit dengan marker
yang tidak terdeteksi sepenuhnya oleh kamera akan tetapi dalam penampilan
objek masih terlihat cukup baik.
I.3

Maksud dan Tujuan
Maksud dari penelitian ini adalah untuk mengimplementasikan teknologi

augmented reality pada game ball logic menggunakan tracking cylindrical object.

3

Adapun tujuan yang ingin dicapai dari penelitian ini adalah agar proses tracking
terhadap cylindrical object dapat digunakan sebagai alat kontrol dalam permainan
sehingga penerapan teknologi augmented reality dengan menggunakan tracking
cylindrical object dapat berjalan cukup baik dalam game ball logic.
I.4

Batasan Masalah
Berikut batasan masalah yang terdapat pada penelitian ini:

1. Digunakannya library ARToolkit dalam pembuatan augmented reality.
2. Implementasi augmented reality pada game ini menggunakan unity 3D.
3. Game ball logic yang diterapkan augmented reality ini berbasis desktop.
4. Webcam yang digunakan memiliki spesifikasi 0.3 mega pixel
5. Level pada game ball logic yang akan diimplementasikan augmented reality
ini sampai level 3.
6. Marker berbentuk persegi panjang akan digunakan sebagai inisialisasi untuk
mengenali Cylindrical object.
7. Cylindrical object akan digunakan untuk mengganti fungsi arah panah sebagai
pergerakan bola.
8. Cylindrical object memiliki ukuran panjang sebesar 11cm dan memiliki
diameter 6.5cm.
I.5

Metodologi Penelitian
Metode penelitian yang digunakan adalah penelitian developmental

(pengembangan), penelitian ini bertujuan untuk melakukan pengembangan suatu
produk dan biasanya menghasilkan sebuah produk atau prototype dari hasil
pengembangan ataupun penerapan nya. Tahap-tahap penelitian dapat dilihat pada
gambar 1.1 :

4

Gambar I. 1 Metodologi Penelitian
1. Observasi
Observasi dilakukan dengan mengamati aplikasi augmented reality
yang sudah ada khusus nya berbasis marker lalu menyimpulkan kekurangan
yang ditemukan. Sedangkan studi pustaka adalah mengumpulkan data dari
jurnal, paper dan bacaan-bacaan yang ada kaitannya dengan penelitian yang
dilakukan sehingga dapat menemukan masalah yang sama dengan masalah
yang ditemukan pada observasi.
2. Identifikasi Masalah
Identifikasi masalah ini didapatkan dari pengamatan terhadap aplikasi
augmented reality yang sudah ada khusus nya berbasis marker lalu

menyimpulkan kekurangan yang ditemukan dan studi pustaka pada bacaan
bacaan yang berhubungan dengan penelitian sehingga ditemukan masalah yang
sama.

5

3. Analisis
Dalam tahap ini mempelajari konsep dan menganalisis mulai dari
analisis marker, analisis tracking markerless, analisis rendering sampai
analisis kebutuhan perangkat lunak meliputi kebutuhan fungsional dan non
fungsional sistem.
4. Perancangan Sistem
Perancangan sistem adalah merancang sistem yang akan dibangun.
Pada penlitian ini perancangan sitem meliputi perancangan antarmuka dan
jaringan semantik.
5. Implementasi Sistem
Pada tahap ini sistem yang telah dianalsis dan dirancang akan
diimplementasikan

menjadi

aplikasi

augmented

reality

dengan

mengimplementasikan tracking cylindrical object.
6. Pengujian Sistem
Pada tahap pengujian sistem hasil implementasi sistem akan diuji
apakah implementasi terhadap perancangan sudah berjalan dengan baik atau
belum.
I.6

Sistematika Penulisan
Berikut adalah sistematika penulisan yang digunakan dalam penelitian ini:

BAB I PENDAHULUAN
BAB I menjelaskan mengenai latar belakang masalah penelitian, perumusan
masalah, maksud dan tujuan dilakukannya penelitian, batasan pada penelitian,
metodologi penelitian baik itu metode pengumpulan data serta metode penyelesaian
masalah dan sistematika penulisan laporan penelitian.
BAB II LANDASAN TEORI
BAB II berisikan landasan-landasan teori yang digunakan dalam
pembangunan aplikasi dan teknologi apa saja yang digunakan dalam pembangunan
aplikasi diantarnya augmented reality dan tracking cylindrical object.
BAB III ANALISIS DAN PERANCANGAN
BAB III mendeskripsikan analisis terhadap objek penelitian yang
selanjutnya dilakukan perancangan perangkat lunak yang menjadi solusi dari objek

6

penelitian tersebut. Dimana analisis yang dilakukan berupa analisis sistem, analisis
kebutuhan fungsional dan analisis kebutuhan non fungsonal. Sedangkan
perancangan yang dilakukan berupa perancangan antarmuka untuk sistem yang
akan dibangun.
BAB IV IMPLEMENTASI DAN PENGUJIAN
BAB IV mendeskripsikan implementasi pembangunan perangkat lunak
yang sesuai berdasarkan hasil dari perancangan yang telah dijelaskan, setelah
implementasi selesai, selanjutnya dilakukan pengujian terhadap sistem yang telah
dibangun.
BAB V KESIMPULAN DAN SARAN
BAB V menjelaskan kesimpulan yang didapat dari penelitian yang
dilakukan apakah telah berhasil memenuhi tujuan yang ditetapkan serta saran agar
penelitian ini dapat dikembangkan lebih lanjut kedepannya dan dilakukan
perbaikan untuk menutupi kekurangan dari penelitian ini.

BAB II
LANDASAN TEORI
II.1

Augmented Reality
Augmented Reality (AR) adalah penggabungan benda-benda nyata dan

maya dilingkungan nyata, berjalan secara interaktif dalam waktu nyata, dan
terdapat integrasi antar benda dalam tiga dimensi, yaitu benda maya terintegrasi
dalam dunia nyata [1]. Beberapa metode yang dikembangkan dalam teknologi AR,
diantaranya Gesture Based, Occlusion Based, Marker Based ataupun Markerless.
1. Metode Gesture Based
Suatu sistem komputasi yang terjadi karena adanya interaksi antara manusia
dengan sumber digital tanpa menggunakan perangkat input seperti keyboard,
mouse, kontroler game.
a. Kelebihan : banyaknya variasi masukan yang dapat dilakukan, lebih mudah
dilakukan, lebih alami, lebih interaktif dan membutuhkan proses
pembelajaran yang relatif lebih singkat.
b. Kekurangan : untuk metode ini kurang cocok bila digunakan untuk
penampilan objek virtual karena metode ini difokuskan hanya untuk
mendeteksi suatu gerakan.
2. Metode Occlusion Based
Merupakan metode yang hanya mendukung interaksi dua dimensi dan
membutuhkan jumlah marker yang cukup banyak.
a. Kelebihan : menghasilkan sistem AR yang lebih real time karena jeda waktu
menampilkan video lebih cepat dan metode ini cenderung memiliki nilai
komputasi yang lebih rendah dibandingkan dengan metode gesture based.
b. Kekurangan : pada metode ini memiliki kekurangan seperti, interaksi yang
didukung hanya dua dimensi dan banyaknya marker yang dipakai.
3. Metode Marker Based
Merupakan suatu ilustrasi hitam dan putih persegi dengan batas hitam tebal dan
latar belakang yang berwarna putih.

7

8

a. Kelebihan : metode ini sudah dikembangkan oleh banyak library sehingga
begitu mudah untuk penggunaan nya, metode ini juga sudah banyak
digunakan dalam kehidupan sehari – hari.
b. Kekurangan : metode ini kurang begitu menarik karena marker yang
digunakan hanya berupa persegi panjang yang memiliki warna hitam dan
putih.
4. Metode Markerless
Suatu marker yang digunakan untuk mendeteksi objek, tapi marker yang
digunakan berbeda dengan marker based tracking yang masih menggunakan
marker persegi berwarna hitam dan putih. Markerless menggunakan fitur alami
(natural features) dari gambar atau objek yang akan dilacak.
a. Kelebihan : Dalam metode ini membuat marker menjadi lebih alami,
metode ini juga memiliki beberapa teknik yang dipakai untuk pembuatan
nya seperti face tracking, 3d object tracking dan motion tracking.
b. Kekurangan : Dalam implementasinya metode ini menggunakan banyak
feature point sebagai penandanya, sehingga bila akan menampilkan objek
virtual, feature point tersebut harus terdeteksi sepenuhnya oleh kamera. Jika
tidak maka objek virtual yang dihasilkan akan tidak cukup baik.
Kesimpulan dari perbandingan metode untuk augmented reality diatas adalah
metode markerless lebih cocok untuk digunakan dalam penelitian ini karena
metode markerless membuat marker yang dipakai menjadi lebih alami dan untuk
proses pembuatannya metode ini memiliki beberapa teknik yang dapat digunakan.
Augmented reality dapat diklasifikasikan menjadi dua berdasarkan ada
tidaknya pengguaan marker yaitu :
1. Marker Augmented Reality
Sebuah metode yang memanfaatkan marker yang biasanya berupa ilustrasi
hitam dan putih berbentuk persegi atau lainnya dengan batas hitam tebal dan latar
belakang putih. Melalui posisi yang dihadapkan pada sebuah kamera komputer
atau smartphone, maka komputer atau smartphone akan melakukan proses
menciptakan sebuah dunia virtual 3D yaitu titik (0,0,0) dan sumbu yang terdiri dari

9

x, y dan z. Marker based tracking ini sudah lama dikembangkan sejak tahun 1980
an. Library atau SDK yang dapat digunakan untuk teknik ini adalah ARToolkit.
2. Markerless Augmented Reality
Salah satu metode Augmented Reality yang saat ini sedang berkembang adalah
metode Markerless Augmented Reality. Dengan metode ini pengguna tidak perlu
lagi menggunakan sebuah marker untuk menampilkan objek 3D atau yang lainnya.
Sekalipun dinamakan dengan markerless namun aplikasi tetap berjalan dengan
melakukan pemindaian terhadap objek, namun ruang lingkup yang dipindai lebih
luas dibanding dengan Marker Based Tracking. Seperti yang saat ini
dikembangkan oleh perusahaan Augmented Reality terbesar di dunia Total
Immersion. Adapun beberapa teknik yang digunakan dalam Markerless
Augmented Reality adalah sebagai berikut :
a. Face Tracking
Dengan menggunakan algoritma yang banyak dikembangkan, komputer dapat
mengenali wajah manusia secara umum dengan cara mengenali posisi mata,
hidung, dan mulut manusia, kemudian akan mengabaikan objek-objek lain di
sekitarnya seperti pohon, rumah, dan benda-benda lainnya.
b. 3D Object Tracking
Berbeda dengan Face Tracking yang hanya mengenali wajah manusia secara
umum, teknik 3D Object Tracking dapat mengenali semua bentuk benda yang ada
di sekitar, seperti mobil, meja, televisi, dan lain-lain.
c. Motion Tracking
Pada teknik ini komputer dapat menangkap gerakan, Motion Tracking telah
mulai digunakan secara ekstensif untuk memproduksi film-film yang mencoba
menyimulasikan gerakan. Contohnya pada film Avatar, dimana James Cameron
menggunakan teknik ini untuk membuat film tersebut dan menggunakannya secara
real-time.
II.2

Marker
Marker merupakan bentuk marker yang sering digunakan dalam teknologi

augmented reality. Marker atau fiducial marker bebentuk kotak dengan pola warna
hitam dan putih, didalamnya terdapat gambar yang telah dikenali sebelumnya.

10

Marker ini memiliki fungsi untuk menampilkan objek virtual nya. Berikut contoh
dari marker atau fiducial marker pada gambar 2.1

Gambar II. 1 Fiducial marker
II.3

Markerless
Menurut Madden markerless adalah AR yang digunakan untuk melacak

objek yang ada di dunia nyata tanpa marker yang spesial. Markerless sangat
berbeda dengan fiducial marker dan markerless ini melakukan proses pelacakan
bergantung pada natural feature-tracking. Markerless dalam library ARToolKit
dapat melakukan proses tracking pada sebuah foto atau dokumen dengan bidang
berbentuk persegi panjang atau bidang datar, proses tracking terhadap bidang datar
tersebut diharuskan dapat terdeteksi seluruhnya oleh kamera webcam agar hasil
yang didapat terlihat cukup baik, karena bila marker hanya terdeteksi sebagian saja
atau hanya dapat terlihat 50% maka objek yang dihasilkan tidak stabil. Tidak stabil
di sini objek yang dihasilkan bisa muncul dengan tampilan yang tidak cukup baik
ataupun tidak muncul sama sekali. AR markerless melakukan pelacakan dengan
objek yang sudah ada sebelumnya yang kemudian dijadikan image target atau
gambar yang akan dideteksi untuk menampilkan objek virtual. Seperti yang saat ini
dikembangkan oleh perusahaan Augmented Reality terbesar di dunia Total
Immersion dan Qualcomm, mereka telah membuat berbagai macam teknik
Markerless Tracking sebagai teknologi andalan mereka, seperti Face Tracking, 3D
Object Tracking, dan Motion Tracking.
a. Face Tracking

11

Dengan menggunakan algoritma yang mereka kembangkan, komputer dapat
mengenali wajah manusia secara umum dengan cara mengenali posisi mata,
hidung, dan mulut manusia, kemudian akan mengabaikan objek-objek lain di
sekitarnya seperti pohon, rumah, dan benda-benda lainnya. Teknik ini pernah
digunakan di Indonesia pada Pekan Raya Jakarta 2010 dan Toy Story 3 Event.
b. 3D Object Tracking
Berbeda dengan Face Tracking yang hanya mengenali wajah manusia secara
umum, teknik 3D Object Tracking dapat mengenali semua bentuk benda yang ada
disekitar, seperti mobil, meja, televisi, dan lain-lain.
c. Motion Tracking
Pada teknik ini komputer dapat menangkap gerakan, Motion Tracking telah
mulai digunakan secara ekstensif untuk memproduksi film-film yang mencoba
mensimulasikan gerakan. Contohnya pada filmAvatar, di mana James Cameron
menggunakan teknik ini untuk membuat film tersebut dan menggunakannya secara
realtime.
II.4

ARToolkit
ARToolkit merupakan software tookit layaknya GLUT. Di dalamnya terdiri

dari predefined functions yang bisa kita panggil (call) dalam mengembangkan
aplikasi AR. ARToolKit menggunakan OpenGL untuk rendering, GLUT untuk
aspek windows/event handler. API ARToolKit ditulis dalam bahasa C dan
disertakan pula beberapa contoh yang bisa dijadikan acuan dalam mengembangkan
aplikasi AR. Gambar di bawah mengilustrasikan hubungan antara aplikasi yang
dibuat dengan ARToolKit dan library yang diperlukan.
Application
ARToolit
GLUT
OpenGL

Standard API

Video Library

Operating System
3D graphic driver

Video Driver

Gambar II. 2 ARTookit Architecture

12

ARToolKit pertama kali dirilis secara terbuka di SIGGRAPH pada tahun
1999. Sedangkan untuk open source sendiri dirilis pada tahun 2001 dan
dikomersialkan oleh ARToolworks, ARToolKit telah diunduh hampir 1 juta kali.
Namun setelah diakuisisi oleh daqri, library ARToolkit yang sebelumnya tersedia
dengan lisensi berbayar, maka kini telah dirilis secara gratis dibawah lisensi LGPL
II.5

Tipe Data
Artoolkit memanipulasi beberapa variable yang berbeda. ARToolKit

menggunakan format image yang berbeda untuk modul yang berbeda. Gambar
dibawah mengilustrasikan beberapa format yang didukungnya. Beberapa format
hanya tersedia pada beberapa platform dan hardware yang spesifik.
Video

Video Format

Display

Tracking

Tracking Format

Display Format

Rendered Format

RGB24/RGB32

RGBA/AGBR

RGBA/BGRA

RGB24

YUV/VUY

RGB/BGR

RGB/BGR

RGB555

(Camera Format)

YUV422/YUV422P

YUV

YUV420/YUV420P
YUV411
Gambar II. 3 Data Flow ARToolkit
II.6

Tracking Cylindrical Object
Objek silinder digunakan untuk mendeteksi dan melacak gambar yang

digulung menjadi silinder. Objek silinder juga mendukung untuk deteksi dan
pelacakan secara sebagian marker saja.
Objek silinder ini sebenarnya sudah tersedia di library Vuforia SDK dengan
target manager yang telah diketahui sebelumnya. Sehingga dalam penelitian ini
tracking cylindrical object akan dicoba digunakan pada library ARToolkit dengan
tujuan sebagai pengembangan library. Untuk pengembangan nya akan
menggunakan metode markerless sebagai pembacaan terhadap marker nya, Untuk
itu bagaimana caranya agar marker yang dilacak tetap dapat menampilkan objek

13

yang cukup baik walaupun deteksi marker terhadap kamera hanya terlihat sebagian
saja dikarenakan memiliki bidang yang tidak datar. Berikut merupakan contoh dari
satu kasus object silinder pada gambar II.4.

Gambar II. 4 Cylindrical Object
Keterangan :
D = Top Diameter (Diameter Atas)
d = Bottom Diameter (Diameter Bawah)
sL = Side Length (Panjang Sisi)
II.7

C Sharp (C#)
C# merupakan sebuah bahasa pemrograman yang berorientasi objek yang

dikembangkan oleh Microsoft sebagai bagian dari inisiatif kerangka .NET
Framework. Bahasa pemrograman ini dibuat berbasiskan bahasa C++ yang telah
dipengaruhi oleh aspek-aspek ataupun fitur bahasa yang terdapat pada bahasabahasa pemrograman lainnya seperti Java, Delphi, Visual Basic, dan lain-lain)
dengan beberapa penyederhanaan. Menurut standar ECMA-334 C# Language
Specification, nama C# terdiri atas sebuah huruf Latin C yang diikuti oleh tanda
pagar yang menandakan angka #. Tanda pagar # yang digunakan memang bukan
tanda kres dalam seni musik, dan tanda pagar # tersebut digunakan karena karakter
kres dalam seni musik tidak terdapat di dalam keyboard standar.
Standar

European

Computer

Manufacturer

Association

(ECMA)

mendaftarkan beberapa tujuan desain dari bahasa pemrograman C#, sebagai
berikut:
1. Bahasa pemrograman C# dibuat sebagai bahasa pemrograman yang bersifat
bahasa pemrograman general-purpose (untuk tujuan jamak), berorientasi
objek, moderen, dan sederhana.

14

2. Bahasa pemrograman C# ditujukan untuk digunakan dalam mengembangkan
komponen perangkat lunak yang mampu mengambil keuntungan dari
lingkungan terdistribusi.
3. Portabilitas programmer sangatlah penting, khususnya bagi programmer yang
telah lama menggunakan bahasa pemrograman C dan C++.
4. Dukungan untuk internasionalisasi (multi-language) juga sangat penting.
5. C# ditujukan agar cocok digunakan untuk menulis program aplikasi baik dalam
sistem klien-server (hosted system) maupun sistem embedded (embedded
system), mulai dari perangkat lunak yang sangat besar yang menggunakan
sistem operasi yang canggih hingga kepada perangkat lunak yang sangat kecil
yang memiliki fungsi-fungsi terdedikasi.
6. Meskipun aplikasi C# ditujukan agar bersifat 'ekonomis' dalam hal kebutuhan
pemrosesan dan memori komputer, bahasa C# tidak ditujukan untuk bersaing
secara langsung dengan kinerja dan ukuran perangkat lunak yang dibuat
dengan menggunakan bahasa pemrograman C dan bahasa rakitan.
7. Bahasa C# harus mencakup pengecekan jenis (type checking) yang kuat,
pengecekan larik (array), pendeteksian terhadap percobaan terhadap
penggunaan Variabel-variabel yang belum diinisialisasikan, portabilitas kode
sumber, dan pengumpulan sampah (garbage collection) secara otomatis.
Pada akhir dekade 1990-an, Microsoft membuat program Microsoft Visual
J++ sebagai sebuah langkah percobaan untuk menggunakan Java di dalam sistem
operasi Windows untuk meningkatkan antarmuka dari Microsoft Component
Object Model (COM). Akan tetapi, akibat masalah dengan pemegang hak cipta
bahasa pemrograman Java, Sun Microsystems, Microsoft pun menghentikan
pengembangan J++, dan beralih untuk membuat pengganti J++, kompilernya dan
mesin virtual nya sendiri dengan menggunakan sebuah bahasa pemrograman yang
bersifat general-purpose. Untuk menangani proyek ini, Microsoft merekrut Anders
Helsberg, yang merupakan mantan karyawan Borland yang membuat bahasa Turbo
Pascal, dan Borland Delphi, yang juga mendesain Windows Foundation Classes
(WFC) yang digunakan di dalam J++. Sebagai hasil dari usaha tersebut, C# pun
pertama kali diperkenalkan pada bulan Juli 2000 sebagai sebuah bahasa

15

pemrograman modern berorientasi objek yang menjadi sebuah bahasa
pemrograman utama di dalam pengembangan di dalam platform Microsoft .NET
Framework.
Pengalaman Helsberg sebelumnya dalam pendesain bahasa pemrograman
seperti Visual J++, Delphi, Turbo Pascal) dengan mudah dilihat dalam sintaksis
bahasa C#, begitu pula halnya pada inti Common Language Runtime (CLR). Dari
kutipan atas interview dan makalah-makalah teknisnya ia menyebutkan kelemahankelemahan yang terdapat pada bahasa pemrograman yang umum digunakan saat
ini, misalnya C++, Java, Delphi, ataupun Smalltalk. Kelemahan-kelemahan yang
dikemukakannya itu yang menjadi basis CLR sebagai bentukan baru yang menutupi
kelemahan-kelemahan tersebut, dan pada akhirnya mempengaruhi desain pada
bahasa C# itu sendiri. Ada kritik yang menyatakan C# sebagai bahasa yang berbagi
akar dari bahasa-bahasa pemrograman lain. Fitur-fitur yang diambilnya dari bahasa
C++ dan Java adalah desain berorientasi objek, seperti garbage collection,
reflection, akar kelas (root class), dan juga penyederhanaan terhadap pewarisan
jamak (multiple inheritance). Fitur-fitur tersebut di dalam C# kini telah
diaplikasikan terhadap iterasi, properti, kejadian (event), metadata, dan konversi
antara tipe-tipe sederhana dan juga objek.
C# didisain untuk memenuhi kebutuhan akan sintaksis C++ yang lebih
ringkas dan Rapid Application Development yang 'tanpa batas' (dibandingkan
dengan RAD yang 'terbatas' seperti yang terdapat pada Delphi dan Visual Basic)
[5].
II.8

JavaScript
JavaScript adalah bahasa pemrograman tingkat tinggi dan dinamis.

JavaScript populer di internet dan dapat bekerja di sebagian besar penjelajah web
populer seperti Internet Explorer (IE), Mozilla Firefox, Netscape dan Opera. Kode
JavaScript dapat disisipkan dalam halaman web menggunakan tag SCRIPT.
JavaScript pertama kali dikembangkan oleh Brendan Eich dari Netscape di
bawah nama Mocha, yang nantinya namanya diganti menjadi LiveScript, dan
akhirnya menjadi JavaScript. Navigator sebelumnya telah mendukung Java untuk
lebih bisa dimanfaatkan para programmer yang non-Java. Maka dikembangkanlah

16

bahasa pemrograman bernama LiveScript untuk mengakomodasi hal tersebut.
Bahasa pemrograman inilah yang akhirnya berkembang dan diberi nama
JavaScript, walaupun tidak ada hubungan bahasa antara Java dengan JavaScript.
JavaScript bisa digunakan untuk banyak tujuan, misalnya untuk membuat efek
rollover baik di gambar maupun teks, dan yang penting juga adalah untuk membuat
AJAX. JavaScript adalah bahasa yang digunakan untuk AJAX [6].
II.9

Unity 3D
Unity 3D adalah sebuah ekosistem dari pengembangan game, mesin render

yang terintegrasi penuh dengan satu set peralatan yang intuitif dan alur kerja yang
cepat untuk menciptakan konten 3D dan 2D yang interaktif, mudah dipublikasikan
ke berbagai platform, aset tersedia di asset store, dan memiliki komunitas untuk
berbagi pengetahuan.
Adapun fitur-fitur yang dimilik oleh Unity 3D antara lain sebagai berikut:
1. Integrated development environment (IDE) atau lingkungan pengembangan
terpadu
2. Penyebaran hasil aplikasi pada banyak platform.
3. Engine grafis menggunakan Direct3D (Windows), OpenGL (Mac, Windows),
OpenGL ES (iOS), and proprietary API (Wii).
4. Game Scripting melalui Mono. Scripting yang dibangun pada Mono,
implementasi open source dari NET Framework. Selain itu Pemrogram dapat
menggunakan UnityScript (bahasa kustom dengan sintaks JavaScriptinspired),
bahasa C # atau Boo (yang memiliki sintaks Python-inspired).
Mesh merupakan bentuk dasar dari obyek 3D. Pembuatan mesh tidak
dilakukan pada Unity. Sementara GameObjects adalah kontainer untuk semua
Komponen lainnya. Semua objek dalam permainan disebut game objects. Material
digunakan dan dihubungkan dengan mesh atau renderer partikel yang melekat pada
game object. Material berhubungan dengan penyaji Mesh atau partikel yang
melekat pada GameObject tersebut. Mereka memainkan bagian penting dalam
mendefinisikan bagaimana objek ditampilkan. Mesh atau partikel Tidak dapat
ditampilkan Tanpa material karena material meliputi referensi untuk Shader yang

17

digunakan untuk membuat Mesh atau Partikel. Material digunakan untuk
menempatkan Tekstur ke GameObjects [7].
II.10 Game Crazy Ball
Game Crazy Ball ini adalah permainan sederhana yang menggunakan bola
sebagai pergerakannya. Tujuan permainan ini adalah pengguna diharuskan untuk
keluar dari tingkatan satu ke tingkatan berikutnya dengan menggunakan bola
sebagai pergerakan user nya. Pengguna diharuskan menyelesaikan setiap level
dengan cara mencapai pintu keluar untuk menyelesaikan permainan, Permainan
akan selesai jika pengguna menyelesaikan semua level. Permainan Crazy Ball ini
sangat unik dibandingkan game lainnya karena permainan ini memberikan interaksi
yang unik dalam setiap level nya. Tantangan dalam permainan ini berupa tantangan
geometris, musuh, benda-benda interaktif atau non interaktif yang memiliki
beberapa efek fisik maupun non fisik pada karakter pemain atau geometri
sekitarnya. Berikut merupakan gambar setiap level dalam game Crazy Ball.

Gambar II. 5 Game Crazy Ball
Game crazy ball ini akan digunakan sebagai referensi sebagai pembuatan
game ball logic karena game crazy ball ini merupakan permainan yang terbilang
unik dalam peraturan permainan nya. Oleh karena itu ide pembuatan game ball
logic ini berdasarkan game pendahulunya yaitu game crazy ball, sehingga untuk
cara permainan atau aturan permainan tidak jauh berbeda dengan game crazy ball.
1. Game Crazy Ball

18

a. Kelebihan : Pada game ini terdapat banyak rintangan seperti level 1 – level
10, sehingga permainan tidak mudah bosan karena setiap level nya
menampilkan rintangan yang berbeda beda.
b. Kekurangan : Permainan ini cenderung terlalu sulit ketika berada pada level
4 ke atas, karena pergerakan bola yang terlalu cepat ketika digerkaan dan
rintangan yang semakin sulit untuk dilewati.
2. Game Ball Logic
a. Kelebihan : Pada game ini permaian dibuat tidak terlalu sulit dalam hal
rintangan maupun pregerakan bola nya, karena rintangan akan dibuat
mudah dan untuk kecepatan bola ketika digerakan akan sedikit diturunkan.
b. Kekurangan : Game ini hanya menampilkan level 1 – level 3 dan hanya
mempunya tiga tingkatan kesulitan yakni level 1 = easy level 2 = medium
dan level 3 = hard
Kesimpulan dari perbandingan game diatas maka pada penelitian ini akan
mengambil game ball logic sebagai game yang akan diterapkan teknologi
augmented reality karena rintangan dalam setiap level pada game ini tidak terlalu
sulit dan juga level yang terbilang sedikit dibanding game pendahulunya yaitu game
crazy ball.
II.11 UML (Unified Modeling Language)
UML dalam sebuah bahasa untuk menentukan visualisasi, konstruksi, dan
mendokumentasikan artifact dari sistem software, untuk memodelkan bisnis, dan
sistem non-software lainnya. UML merupakan sistem arsitektur yang bekerja dalam
OOAD (Object Oriented Analysis and Design) dengan satu bahasa yang konsisten
untuk menentukan, visualisasi, konstruksi dan mendokumentasikan artifact yang
terdapat dalam sistem. Artifact adalah potongan informasi yang digunakan atau
dihasilkan dalam suatu proses rekayasa software. Artifact dapat berupa model,
deskripsi atau software.
Unified Modeling Language (UML) adalah keluarga notasi grafis yang
didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain
sistem perangkat lunak, khususnya sistem yang dibangun menggunakan
pemrograman brorientasi objek (OO). UML lahir dari penggabungan banyak

19

bahasa pemodelan grafis berorientasi objek yang berkembang pesat pada akhir
1980 dan awal 1990.
1. Use Case Diagram
Use Case adalah teknik untuk merekam persyaratan fungsional sebuah sistem.
Use Case mendeskripsikan interaksi tipikal antara para pengguna sistem dengan
sistem itu sendiri, dengan memberi sebuah narasi tentang bagaimana sistem tersebut
digunakan.
2. Activity Diagram
Activity Diagram adalah teknik unutk menggambarkan logika prosedural,
proses bisnis, dan jalur kerja. Dalam beberapa hal, diagram ini memainkan peran
mirip sebuah diagram alir, tetapi perbedaan prinsip antara diagram ini dan notasi
diagram alir adalah diagram ini mendukung behavior paralel.
3. Class Diagram
Class Diagram mendeskripsikan jenis-jenis objek dalam sistem dan berbagai
macam hubungan statis yang terdapat di antara mereka. Class Diagram juga
menunjukan properti dan operasi sebuah class dan batasan-batasan yang terdapat
dalam hubungan-hubungan objek tersebut.UML menggunakan istilah fitur sebagai
istilah umum yang meliputi properti dan operasi sebuah class.
4. Sequence Diagram
Interaction diagram menunjukan bagaimana kelompok-kelompok objek saling
berkolaborasi dalam beberapa behavior. UML memiliki beberapa bentuk
interaction diagram dan yang paling umum digunakan adalah sequance diagram.
Sebuah sequance diagram, secara khusus, menjabarkan behavior sebuah sekenario
tunggal. Diagram tersebut menunjukan sejumlah objek contoh dan pesan-pesan
yang melewati objek-objek ini di dalam use case.
II.12 Pengujian
Pengujian adalah suatu proses mengevaluasi suatu sistem atau komponen
dengan maksud untuk menemukan apakah itu memenuhi persyaratan yang
ditentukan atau tidak. Dengan kata lain pengujian ialah mengidentifikasi
kesenjangan, atau kesalahan. Dalam penelitian ini dilakukan pengujian black box.

20

Pengujian black box merupakan pengujian yang mengabaikan mekanisme
internal sistem atau komponen dan fokus semata-mata pada output yang dihasilkan
yang merespon input yang dipilih dan kondisi eksekusi. Pengujian yang dilakukan
untuk mengevaluasi pemenuhan sistem atau komponen dengan kebutuhan
fungsional tertentu. Metode ujicoba black box memfokuskan pada keperluan
fungsional dari software. Karena itu ujicoba black box memungkinkan pengembang
software untuk membuat himpunan kondisi input yang akan melatih seluruh syaratsyarat fungsional suatu program. Ujicoba black box bukan merupakan alternatif dari
ujicoba whitebox, tetapi merupakan pendekatan yang melengkapi untuk
menemukan kesalahan lainnya, selain menggunakan metode whitebox. Ujicoba
black box untuk menemukan kesalahan dalam beberapa kategori, diantaranya :
1. Fungsi-fungsi yang salah atau hilang
2. Kesalahan interface
3. Kesalahan dalam struktur data
4. Kesalahan performa
5. Kesalahan inisialisasi

BAB III
ANALISIS DAN PERANCANGAN SISTEM

III.1

Analisis Masalah
Berdasarkan dari latar belakang masalah yang sudah didapat, maka akan

dijelaskan secara lebih terperinci tentang kekurangan dari library ARToolkit.
Adapun kekurangan library ARtoolkit adalah dalam pelacakan dengan
menggunakan metode markerless hanya mampu mendeteksi sebuah marker yang
berbentuk suatu bidang datar saja, sehingga jika sebuah objek sudah dihasilkan
maka objek tersebut akan terlihat cukup baik jika marker yang dideteksi terlihat
seluruhnya pada kamera. Maka dari itu penggunaan marker dengan metode
markerless pada library ARtoolkit kurang begitu baik jika penerapannya pada
sebuah game karena marker yang dibutuhkan pada game haruslah marker yang
benar benar kuat dalam pelacakannya walaupun dari berbagai sudut pandang.
Dalam penelitian ini masalah yang diangkat adalah implementasi teknologi
augmented reality pada game ball logic menggunakan tracking cylindrical object
dengan tujuan melakukan pengembangan pada library ARToolkit yang masih
terbatasnya sebuah marker yang akan dilacak.
III.1.1 Analisis Penyelesaian Masalah
Dalam penyelesaian masalah tersebut, maka sistem tracking terhadap suatu
marker ini dibangun mengimplementasikan metode markerless dengan tracking
cylindrical object. Sistem ini bekerja dengan cara melakukan tracking terhadap
sebuah marker yang berbentuk silinder sehingga kamera tidak harus melakukan
pelacakan marker secara seluruhnya tapi cukup sebagian saja marker yang dapat
dideteksi tetapi object yang dihasilkan cukup baik.
III.2

Analisis Sistem
Analisis sistem menjelaskan permasalahan pada suatu sistem dan

mendeskripsikan kebutuhan pada pembangunan sistem pelacakan marker. Untuk
pelacakan marker menggunakan Library ARToolKit dengan cara kerja seperti pada
gambar III.1 berikut:

21

22

Gambar III. 1 Cara Kerja ARToolKit
Pada sistem yang akan dibangun terdapat beberapa proses yang memiliki
fungsi masing-masing.
III.3.1 Analisis Sistem Yang Berlaku
Analisis ini menjelaskan tentang suatu sistem yang masih berlaku pada
library ARToolkit, pada tahap ini juga analisis lebih difokuskan pada pelacakan
marker yang masih berbentuk persegi empat atau bidang datar. Proses natural
feature tracking diharuskan tertangkap kamera sepenuhnya agar objek yang
dihasilkan dari tracking pada marker dapat menghasilkan objek yang cukup baik,
untuk lebih jelasnya lihat seperti gambar III.2:

Gambar III. 2 Marker NFT Biasa

23

Sistem akan mengenali marker dengan menentukan titik kordinat dari marker dan
kamera, seperti pada gambar III.3:

Gambar III. 3 Koordinat Marker dan Koordinat Kamera

Gambar III. 4 Koordinat Marker
Pada gambar III.4 dapat dijelaskan bahwa kordinat marker akan dikenali sebagai
Xm, Ym dan Zm sedangkan kordinat kamera sebagai Xc, Yc dan Zc. Setelah proses
menentukan titik kordinat selesai maka selanjutnya masuk ke dalam tahap
menandai marker dengan menentukan feature point, feature point tersebut akan
berguna sebagai persamaan marker yang nantinya akan dibandingkan dengan
marker yang dideteksi oleh kamera dan apabila sesuai maka objek akan
ditampilkan. Seperti pada gambar III.5 berikut:

24

Gambar III. 5 Feature Point
Hijau merupakan feature freak, sedangkan merah mewakili sampel untuk
persamaan marker. Gambar III.5 diatas menampilkan feature freak sejumlah 512
point dan feature berwarna merah yang akan digunakan sebagai persamaan marker
sejumlah 79 point. Jika proses ini selesai maka selanjutnya masuk ke dalam tahap
menampilkan objek augmented reality, dalam tahap ini dilakukanlah pencocokan
marker dengan menggunkan feature point yang berwarna merah seperti gambar
III.5 diatas. Lebih jelasnya dapat dilihat pada gambar III.6 berikut:

Gambar III. 6 Pencocokan Marker
Proses ini merupakan tahapan terakhir dari sistem karena jika marker sudah cocok
maka akan menghasilkan sebuah objek augmented reality yang akan langsung
ditampilkan diatas marker, seperti gambar III.7 berikut:

25

Gambar III. 7 Objek Augmented Reality
III.3

Analisis Game
Ide pembuatan game ball logic ini berdasarkan game pendahulunya yaitu

game crazy ball, sehingga untuk cara permainan atau aturan permainan tidak jauh
berbeda dengan game crazy ball. Pada game ball logic ini pula ada beberapa area
permaianan / map yang diambil secara langsung dari game crazy ball. Di dalam
analisis game ini akan dijelaskan mengenai gambaran game crazy ball dan game
ball logic, analisis dilakukan dengan maksud untuk mengidentifikasi dan
mengevaluasi kebutuhan – kebutuhan ya