Welcome Text


SELAMAT DATANG DI BLOG NAUFAL ZUHDI ENJOY!!! .

Kamis, 19 Januari 2017

Desain Pemodelan Grafik dalam Penyajian Chart | BAB V


PENUTUP

5.1 Kesimpulan
Desain pemodelan gra k merupakan suatu proses penciptaan suatu obyek baru dengan menggunakan software dan melalui beberapa tahapan yakni membuat, menyimpan dan memanipulasi model dan citra. Proses komunikasi menggunakan elemen visual, seperti tulisan, bentuk, dan gambar yang dimaksudkan untuk menciptakan persepsi akan suatu pesan yang disampaikan. Bidang ini melibatkan proses komunikasi visual. Unsur dasar pemodelan desain gra s yaitu meliputi garis (line), bentuk (shape), tekstur (texture), ruang (space), ukuran (size), dan warna (colour). Peralatan utama yang digunakan dalam desain gra s adalah pikiran (ide). Disamping teknologi (komputer) sebuah desain gra s yang baik membutuhkan kreati tas. Prinsip pemodelan desain gra s yaitu meliputi kesederhanaan, kesatuan, penekanan (eksentuasi), irama (repetisi), dan proporsi (proportion). Desain Pemodelan Gra s juga berkaitan erat dengan gra k komputer. Berikut kegiatan yang terkait dengan gra k komputer :
ˆ Pemodelan geometris yaitu menciptakan model matematika dari objekobjek 2D dan 3D.
ˆ Rendering yaitu memproduksi citra yang lebih solid dari model yang telah dibentuk.
ˆ Animasi yaitu menetapkan/menampilkan kembali tingkah laku/behavior objek bergantung waktu.
ˆ Kerangka Gra k Komputer.
ˆ Graphic library/package (contoh:Open GL) adalah perantara aplikasi dan display hardware (Graphic System.
79
BAB 5. PENUTUP 80
ˆ Application program memetakan objek aplikasi ke tampilan/citra dengan memanggil graphics library.
ˆ Hasil dari interaksi user menghasilkan/modi kasi citra.
ˆ Citra merupakan hasilakhir dari sintesa, desain, manufaktur, visualisasi dll
desain pemodelan gra k bisa juga di implementasikan terhadap bentuk chart, dimana data yang dimasukkan dalam chart tersebut adalah hasil dari pembuatan objek biasa atau objek bergerak (animasi). Data tersbut di ambil dari proses menjalankan program atau perenderan (penyatuan) objek.
BAB 5. PENUTUP 81
DAFTAR PUSTAKA
1. shading modelling tugas desain pemodelan gra k . https://faris6593.blogspot.co.id/2014/04/shadingmodelling-tugas-desain-pemodelan-gra k.html (05 January 2015)
2. komponen desain pemodelan gra k . https://azwarpengetahuan.wordpress.com/2012/11/27/komponendesain-gra s/ (05 January 2015)
3. proses perancangan gra s . https://rakyatmultimedia.wordpress.com/2011/03/02/prosesperancangan-gra s-secara-umum/ (05 January 2015)
4. daftar warna . https://id.wikipedia.org/wiki/Daftar_warna
5. penggunaan warna dalam desain gra s . http://aldianlo.com/penggunaanwarna-dalam-desain-gra s/ (05 January 2015)
6. daftar warna . https://id.wikipedia.org/wiki/Daftar_warna (05 January 2015)
7. pengertian tipogra dan teknik penyusunannya . http://www.ceritadesain.com/2014/12/PENGERTIANTIPOGRAFI-DAN-TEHNIK-PENYUSUNANNYA.html (05 January 2015)
8. desain web dasar . https://bertzzie.com/knowledge/desain-web-dasar/Tipogra .html (05 January 2015)
9. arti tipogra dan fungsinya . http://helliumworks.blogspot.co.id/2010/12/tipogra arti-dan-fungsinya.html (05 January 2015)
10. tata letak layout . http://teoridesain.com/2016/05/penjelasan-tata-letaklayout.html (08 January 2015)
11. tata letak layout .https://loekmanulkim.wordpress.com/2012/03/19/tataletak-layout/(08 January 2015)
12. jenis jenis layout . https://ghaleebmumtaz.wordpress.com/2015/04/10/jenisjenis-layout/ (08 January 2015)
13. teknik menyunting . http://desheila12 komjayabaya.blogspot.co.id/2014/09/teknikmenyunting-teknik-tata-letak.html (08 January 2015)
14. pengertian gantt chart dan cara membuat gant chart . ilmumanajemenindustri.com/pengertiangantt-chart-cara-membuat-gantt-chart/ (08 January 2015)
15. analisis sistem informasi gantt chart . https://fairuzelsaid.wordpress.com/2009/11/24/anaslisissistem-informasi-gantt-chart/ (08 January 2015)
16. panduan lengkap mendesain logo . http://www.desainstudio.com/2012/12/panduanlengkap mendesain-logo-html (08 January 2015)
BAB 5. PENUTUP 82
17. tinjauan umum tentang logo . https://sangdes.blogspot.co.id/2015/02/tinjauanumum-tentang-logo.html# (08 January 2015)
18. https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4FP8NkmP3BcBGhgzwmY5k4Sm_uuleGDKwbOZCIxi-zyIUJUYJGMyD_pHCFywAF2ES0G-SfQiTZEnXqMr5eOBsejdybgrSdxl5cx-szdXaNvKfSXfVldHMoWyyqOXRGCBKQKpHo1vWkiM/s1600/STAR+ONE+06.jpg (08 January 2015)
19. http://www.kamuskbbi.id/kbbi/?de nisi=search&search_text=penampang http://3.bp.blogspot.com/-F4GcNf5nd38/UlddFpzLtLI/AAAAAAAAB1o/UuYg6uy_tE/s1600/bitebrands+-+comedy+central+logo+-+thelab.jpg (08 January 2015)
20. membuat maskot logo ilustratif . http://www.desainstudio.com/2013/04/membuatmaskot-logo-ilustratif-dengan.html (08 January 2015)
21. cara membuat border logo dari segi 5 . http://berbagiinfosederhana.blogspot.co.id/2012/03/caramembuat-border-logo-dari-segi-5-di.html (08 January 2015)
22. mengenal seleksi masking . http://bloggerlobby.blogspot.co.id/2012/10/mengenalseleksi-atau-masking_18.html (17 January 2015)
23. depth of eld . https://megakamerablog.wordpress.com/2014/05/24/depthof- eld/(17 January 2015)
24. pengertian resolusi gambar . http://www.jendelasarjana.com/2014/05/pengertianresolusi-gambar.html (17 January 2015)
25. membuat gambar 3D . http://muara-info.blogspot.co.id/2012/08/membuatgambar-3d-dari-adobe-illustrator.html (17 January 2015)
26. apa itu komunikasi data, gantt chart . https://fachlevi.wordpress.com/tugaspti/apa-itu-komunikasi-data/ gantt chart (17 January 2015)
27. analisis sistem informasi gantt chart . https://fairuzelsaid.wordpress.com/2009/11/24/anaslisissistem-informasi-gantt-chart/ (17 January 2015)
28. macam macam format le dan fungsinya . http://tecno-yes.blogspot.co.id/2013/08/macammacam-format- le-dan-fungsinya.html (17 January 2015)
29. sedikit mengenal strawberry prolog . https://anggamaulana20.wordpress.com/2013/04/14/sedikitmengenal-strawberry-prolog/ (17 January 2015)

Desain Pemodelan Grafik dalam Penyajian Chart | BAB IV


CONTOH KASUS

4.1 Penggunaan Strawberry Prolog dalam chart

4.1.1 Jenis-jenis game yang paling banyak dibuat

Permainan video (bahasa Inggris:video game) adalah permainan yang menggunakan interaksi dengan antar muka pengguna melalui gambar yang dihasilkan oleh peranti video. Permainan video umumnya menyediakan sistem penghargaan – misalnya skor – yang dihitung berdasarkan tingkat keberhasilan yang dicapai dalam menyelesaikan tugas-tugas yang ada di dalam permainan.

Kata "video" pada "permainan video" pada awalnya merujuk pada peranti tampilan raster.Namun dengan semakin dipakainya istilah "video game", kini kata permainan video dapat digunakan untuk menyebut permainan pada peranti tampilan apapun. Sistem elektronik yang digunakan untuk menjalankan permainan video disebut platform, contohnya adala komputer pribadi dan Konsol permainan. 

Prolog adalah dialek dari bahasa pemrograman Prolog. Sintaksnya sangat dekat dengan ISO-Prolog tetapi memiliki banyak ekstensi yang bukan bagian dari standar. Gagasan utama dari Strawberry Prolog sangat mudah digunakan dan oleh karena itu beberapa universitas menggunakan prolog untuk kursus. 

Pada pembuatan game strawberry prolog kali ini, akan dibuat game dengan judul battlefire, berikut ini adalah kode program dalam pembuatannya. Kemudian pada game ini akan dibuat statistik game yang sering di kembangkan menggunakan aplikasi Strawberry Prolog dalam penyajian chart. Chart di buat dengan menggunakan google chart dengan bahasa HTML. Berikut ini adalah code HTML yang di buat :

<html>

<head>

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> 

<script type="text/javascript"> 

google.charts.load("current", {packages:["corechart"]}); 

google.charts.setOnLoadCallback(drawChart); 

function drawChart() { 

var data = google.visualization.arrayToDataTable([

['Task', ''], 

['Othello', 18],

['TicTacToe', 2],

['Chess', 1], 

['Matches', 12],

['Batlefire', 7],

]);

var options = {

title: 'Game Prolog yang sering di kembangkan',

pieHole: 0.4, 

};

var chart = new google.visualization.PieChart(document.getElementById('donutchart'));

chart.draw(data, options); 

}

</script>

</head>

<body> 

<div id="donutchart" style="width: 900px; height: 500px;"></div> 

</body>



4.1.2 Cara pembuatan game battlefire pada gantt chart

Pada subbab ini akan di bahas pengembangan game battlefire dan di buat ke dalam gantt chart. aplikasi yang di gunakan adalah Strawberry Prolog 2.9 Light Edition.dan berikut ini adalah syntax dalam pembuatan game battlefire

?- G_aksi_red:=0, 

G_aksi_blue:=0, 

G_skor_blue:=0, 

G_skor_red:=0, 

G_level:=1, 

G_life_red:=10, 

G_life_blue:=10, 

G_zero:=0, 

G_loadpic is bitmap_image("battlefire1.bmp",_), 

G_loadpic2 is bitmap_image("battlefire2.bmp",_), 

G_Tentaranembak1 is bitmap_image("Tentaranembak1.bmp",_), 

G_Tentaranunduk1 is bitmap_image("Tentaranunduk1.bmp",_), 

G_Tentaraketembak1 is bitmap_image("Tentaraketembak1.bmp",_),

G_Tentaranembak2 is bitmap_image("Tentaranembak2.bmp",_), 

G_Tentaranunduk2 is bitmap_image("Tentaranunduk2.bmp",_), 

G_Tentaraketembak2 is bitmap_image("Tentaraketembak2.bmp",_), 

G_Pelurubiru is bitmap_image("pelurubiru.bmp",_), 

G_Pelurumerah is bitmap_image("pelurumerah.bmp",_), 

G_Dorblue is bitmap_image("dor_blue.bmp",_), 

G_Dorred is bitmap_image("dor_red.bmp",_), 

G_Tembok is bitmap_image("Tembok.bmp",_), 

G_Timeup is bitmap_image("timeup.bmp",_), 

G_white is bitmap_image("white.bmp",_), 

G_timeblock is bitmap_image("timeblock.bmp",_),

G_cleantime is bitmap_image("cleantimeup.bmp",_),

window(G_splash,_,window_splash(),"Loading Game",333,134,700,400).

window_splash(init):- 

G_loading := 0, 

G_waktu is set_timer(_,0.02,waktu_splash).

window_splash(paint):- 

draw_bitmap(0,0,G_loadpic,_,_).

waktu_splash(end):- 

text_out(300,200,print("Loading " + G_loading + "%")), (G_loading < 100 -> G_loading <>= G_loading + 1, line(0,250, G_loading * 7, 250) 

else close_window(G_splash),

window(G_main,_,window_home(_),"Welcome",333,134,700,400)). 

window_home(paint):- 

draw_bitmap(0,0,G_loadpic2,_,_), 

button(_,_,menu_mulai(_),"start",160,220,150,40), 

button(_,_,menu_keluar(_),"exit",380,220,150,40). 

menu_mulai(press):- 

close_window(G_main), 

window(_,_,win_func(_),"BattleFire",100,100,800,420).

menu_keluar(press):- 

close_window(G_main).

%----------------menggambar posisi awal dengan menggunakan fungsi paint--------------------

win_func(paint):- 

draw_bitmap( 0, 140, G_Tentaranunduk1, _, _), 

draw_bitmap( 610, 140, G_Tentaranunduk2, _, _), 

draw_bitmap( 170, 220, G_Tembok, _, _), 

draw_bitmap( 550, 220, G_Tembok, _, _).

%----------------mendeklarasikan fungsi inisialisasi yang berisi menu dan timer--------------------- 

win_func(init):- 

G_timer is set_timer(_,1,time_func), 

menu( pop_up, _, _, menu_Pilihan(_),"&Pilihan"), 

menu( normal, _, _, menu_tentang(_), "&About"),

menu(right,_,_,help(),"Help").

help(press):- 

shell_execute("help.txt").

menu_Pilihan(init):- 

menu( pop_up, G_Menu, _, menu_level(_), "&Level"), 

menu(normal,_,_,menu_exit(_),"&Keluar").

menu_exit(press):- 

close_window(_). 

win_func(close) :-

not( yes_no("","Keluar Dari Permainan?", ?)).

menu_level(init):- 

menu(normal,_,_,mudah(_),"&Mudah"),

menu(normal,_,_,normal(_),"&Normal"), 

menu(normal,_,_,susah(_),"&Sulit").

%---------------------inisiasi level default (mudah) ------------------------%

mulai_game(press):- 

draw_bitmap( 300, 10, G_cleantime, _, _), 

draw_bitmap( 100, 20, G_cleantime, _, _),

draw_bitmap( 600, 20, G_cleantime, _, _), 

G_aksi_red:=0, 

G_aksi_blue:=0,- 

G_skor_blue:=0, 

G_skor_red:=0, 

G_life_red:=99, 

G_life_blue:=99, 

G_time:=31, 

draw_bitmap( 0, 140, G_Tentaranunduk1, _, _), 

draw_bitmap( 610, 140, G_Tentaranunduk2, _, _),

draw_bitmap( 170, 220, G_Tembok, _, _), 

draw_bitmap( 550, 220, G_Tembok, _, _).

%----------------------------- inisiasi level mudah -------------------------%

mudah(press):- 

message("level","Anda memilih level mudah",i), 

draw_bitmap( 300, 10, G_cleantime, _, _), 

draw_bitmap( 100, 20, G_cleantime, _, _), 

draw_bitmap( 600, 20, G_cleantime, _, _), 

G_aksi_red:=0, 

G_aksi_blue:=0, 

G_skor_blue:=0, 

G_skor_red:=0, 

G_life_red:=99, 

G_life_blue:=99, 

G_level:=1, 

G_time:=31,

draw_bitmap( 0, 140, G_Tentaranunduk1, _, _), 

draw_bitmap( 610, 140, G_Tentaranunduk2, _, _),

draw_bitmap( 170, 220, G_Tembok, _, _), 

draw_bitmap( 550, 220, G_Tembok, _, _).

%----------------------------- inisiasi level normal -------------------------% 

ormal(press):- 

message("level","Anda memilih level normal",i), 

draw_bitmap( 300, 10, G_cleantime, _, _), 

draw_bitmap( 100, 20, G_cleantime, _, _), 

draw_bitmap( 600, 20, G_cleantime, _, _), 

G_aksi_red:=0, 

G_aksi_blue:=0, 

G_skor_blue:=0, %------- untuk membuat skor-------------% 

G_skor_red:=0, %------- untuk membuat skor-------------% 

G_life_red:=99, 

G_life_blue:=99,

G_level:=2, 

G_time:=31,

draw_bitmap( 0, 140, G_Tentaranunduk1, _, _), 

draw_bitmap( 610, 140, G_Tentaranunduk2, _, _),

draw_bitmap( 170, 220, G_Tembok, _, _), 

draw_bitmap( 550, 220, G_Tembok, _, _).

%----------------------------- inisiasi level susah -------------------------% 

susah(press):- 

message("level","Anda memilih level sulit",i),

draw_bitmap( 300, 10, G_cleantime, _, _),

draw_bitmap( 100, 20, G_cleantime, _, _), 

draw_bitmap( 600, 20, G_cleantime, _, _), 

G_aksi_red:=0, 

G_aksi_blue:=0, 

G_skor_blue:=0, 

G_skor_red:=0,

G_life_red:=99, 

G_life_blue:=99, 

G_level:=3, 

G_time:=31, 

draw_bitmap( 0, 140, G_Tentaranunduk1, _, _),

draw_bitmap( 610, 140, G_Tentaranunduk2, _, _),

draw_bitmap( 170, 220, G_Tembok, _, _),

draw_bitmap( 550, 220, G_Tembok, _, _).

%-------------menjalankan fungsi timer----------------% time_func(end):- G_time=0-> G_time:=0 else G_time:=G_time-1, T:=printq(G_time),

font(20,40,"Arial"), text_out(350,20,T),

%-----------------------Respon komputer per detik ----------------%

(G_time=29-> G_level=3-> musuhcek(_)),

(G_time=29-> G_level=2-> musuhnunduk(_)), 

(G_time=29-> G_level=1-> musuhberdiri(_)), 

(G_time=28-> G_level=3-> musuhcek(_)),

(G_time=28-> G_level=2-> musuhberdiri(_)), 

(G_time=28-> G_level=1-> musuhberdiri(_)), 

(G_time=27-> G_level=3-> musuhcek(_)),

(G_time=27-> G_level=2-> musuhcek(_)), 

(G_time=27-> G_level=1-> musuhnunduk(_)), 

(G_time=26-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=26-> G_level=2-> musuhcek(_)), 

(G_time=26-> G_level=1-> musuhcek(_)), 

(G_time=25-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=25-> G_level=2-> musuhcek(_)), 

(G_time=25-> G_level=1-> musuhberdiri(_)), 

(G_time=25-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=25-> G_level=2-> musuhcek(_)), 

(G_time=25-> G_level=1-> musuhberdiri(_)), 

(G_time=24-> G_level=3-> musuhnunduk(_)),

(G_time=24-> G_level=2-> musuhcek(_)), 

(G_time=24-> G_level=1-> musuhberdiri(_)), 

(G_time=23-> G_level=3-> musuhcek(_)),

(G_time=23-> G_level=2-> musuhcek(_)), 

(G_time=23-> G_level=1-> musuhberdiri(_)), 

(G_time=22-> G_level=3-> musuhcek(_)),

(G_time=22-> G_level=2-> musuhcek(_)), 

(G_time=22-> G_level=1-> musuhberdiri(_)), 

(G_time=21-> G_level=3-> musuhnunduk(_)),

(G_time=21-> G_level=2-> musuhcek(_)), 

(G_time=21-> G_level=1-> musuhberdiri(_)), 

(G_time=20-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=20-> G_level=2-> musuhcek(_)), 

(G_time=20-> G_level=1-> musuhberdiri(_)), 

(G_time=19-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=19-> G_level=2-> musuhcek(_)), 

(G_time=19-> G_level=1-> musuhberdiri(_)), 

(G_time=18-> G_level=3-> musuhcek(_)),

(G_time=18-> G_level=2-> musuhcek(_)), 

(G_time=18-> G_level=1-> musuhberdiri(_)), 

(G_time=17-> G_level=3-> musuhcek(_)),

(G_time=17-> G_level=2-> musuhcek(_)), 

(G_time=17-> G_level=1-> musuhberdiri(_)), 

(G_time=16-> G_level=3-> musuhnunduk(_)),

(G_time=16-> G_level=2-> musuhcek(_)), 

(G_time=16-> G_level=1-> musuhberdiri(_)), 

(G_time=15-> G_level=3-> musuhcek(_)),

(G_time=15-> G_level=2-> musuhcek(_)), 

(G_time=15-> G_level=1-> musuhberdiri(_)), 

(G_time=14-> G_level=3-> musuhcek(_)),

(G_time=14-> G_level=2-> musuhcek(_)), 

(G_time=14-> G_level=1-> musuhberdiri(_)), 

(G_time=13-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=13-> G_level=2-> musuhcek(_)), 

(G_time=13-> G_level=1-> musuhberdiri(_)), 

(G_time=12-> G_level=3-> musuhnunduk(_)),

(G_time=12-> G_level=2-> musuhcek(_)), 

(G_time=12-> G_level=1-> musuhberdiri(_)), 

(G_time=11-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=11-> G_level=2-> musuhcek(_)), 

(G_time=11-> G_level=1-> musuhberdiri(_)), 

(G_time=10-> G_level=3-> musuhnunduk(_)),

(G_time=10-> G_level=2-> musuhcek(_)), 

(G_time=10-> G_level=1-> musuhberdiri(_)), 

(G_time=9-> draw_bitmap( 372, 26, G_timeblock, _, _)),

(G_time=9-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=9-> G_level=2-> musuhcek(_)), 

(G_time=9-> G_level=1-> musuhberdiri(_)), 

(G_time=8-> G_level=3-> musuhnunduk(_)),

(G_time=8-> G_level=2-> musuhcek(_)), 

(G_time=8-> G_level=1-> musuhberdiri(_)), 

(G_time=7-> G_level=3-> musuhcek(_)),

(G_time=7-> G_level=2-> musuhcek(_)), 

(G_time=7-> G_level=1-> musuhberdiri(_)), 

(G_time=6-> G_level=3-> musuhcek(_)),

(G_time=6-> G_level=2-> musuhcek(_)), 

(G_time=6-> G_level=1-> musuhberdiri(_)), 

(G_time=5-> G_level=3-> musuhcek(_)),

(G_time=5-> G_level=2-> musuhcek(_)), 

(G_time=5-> G_level=1-> musuhberdiri(_)), 

(G_time=4-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=4-> G_level=2-> musuhcek(_)), 

(G_time=4-> G_level=1-> musuhberdiri(_)), 

(G_time=3-> G_level=3-> musuhberdiri(_), musuhcek(_)),

(G_time=3-> G_level=2-> musuhcek(_)), 

(G_time=3-> G_level=1-> musuhberdiri(_)), 

(G_time=2-> G_level=3-> musuhnunduk(_)),

(G_time=2-> G_level=2-> musuhcek(_)), 

(G_time=2-> G_level=1-> musuhberdiri(_)), 

(G_time=1-> G_level=3-> musuhcek(_)),

(G_time=1-> G_level=2-> musuhcek(_)), 

(G_time=1-> G_level=1-> musuhberdiri(_)), 

(G_time=0 -> 

G_time:=0, 

draw_bitmap( 310, 20, G_Timeup, _, _),

(G_life_blue<G_life_red->message("Kalah","Anda kalah, kemampuan menembak anda payah",i)), 

(G_life_blue>G_life_red->message("Menang","Anda Menang, kemampuan menembak anda hebat!",i)), 

(G_life_blue=G_life_red->message("Seri","Seimbang, Kemampuan anda lumayan",i))).

%---------------------isi dari fungsi respon komputer----------------------

musuhberdiri(_):- 

G_aksi_red:=1, 

draw_bitmap( 610, 150, G_Tentaranembak2, _, _).

musuhnunduk(_):-

G_aksi_red:=0,

draw_bitmap( 610, 140, G_Tentaranunduk2, _, _).

musuhcek(_):- 

G_aksi_blue=1->

G_aksi_red:=1, 

draw_bitmap( 610, 150, G_Tentaranembak2, _, _),

wait(0.1),

draw_bitmap(550,197,G_Dorred,_,_),

G_aksi_red:=2, afterfire_red(_).

%-------------------peluru keluar dari senapan-------------- 

afterfire_blue(_):- 

wait(0.2), 

draw_bitmap( 360, 195, G_Pelurubiru, _, _),

efektembak1(_), 

wait(0.3),

draw_bitmap( 0, 140, G_Tentaranunduk1, _, _),

draw_bitmap( 168, 192, G_white, _, _),

G_aksi_blue:=0.

afterfire_red(_):- 

wait(0.2), 

draw_bitmap( 370, 192, G_Pelurumerah, _, _), 

efektembak2(_), 

wait(0.3), 

draw_bitmap( 610, 140, G_Tentaranunduk2, _, _), 

draw_bitmap( 295, 193, G_white, _, _), 

G_aksi_red:=0. 

%------------------Efek Tembak (kena atau tidak)----------------------------------------- 

efektembak1(_):-

G_aksi_red=1-> 

wait(0.2), 

draw_bitmap( 610, 150, G_Tentaraketembak2, _, _), 

draw_bitmap( 240, 192, G_white, _, _),

wait(1),

draw_bitmap( 610, 140, G_Tentaranunduk2, _, _), 

G_life_red:=G_life_red-1, 

skorblue(_), 

G_aksi_red:=0.

efektembak2(_):-

G_aksi_blue=1-> 

wait(0.2), 

draw_bitmap( 0, 150, G_Tentaraketembak1, _, _), 

draw_bitmap( 235, 192, G_white, _, _), 

wait(1),

draw_bitmap( 0, 140, G_Tentaranunduk1, _, _), 

G_life_blue:=G_life_blue-1, 

skorred(_), 

G_aksi_blue:=0.

%------------------membuat tentara player berdiri, menunduk, menembak---------------------

win_func(key_down(38,_)):-

G_aksi_blue:=1, draw_bitmap( 0, 150, G_Tentaranembak1, _, _).

win_func(key_down(40,_)):- 

wait(0.8), G_aksi_blue:=0, 

draw_bitmap( 0, 140, G_Tentaranunduk1, _, _).

win_func(key_down(32,_)):-

G_aksi_blue=1->

draw_bitmap(165,197,G_Dorblue,_,_), 

G_aksi_blue:=2, afterfire_blue(_), 

wait(0.6).

%--------------------buat hitung dan tampilkan skor(tambahan)--------------------------------% 

skorblue(_):- 

G_skor_blue:=(G_skor_blue+1), 

Skorblue:=printq(G_skor_blue),

font(15,30,"Arial"),

text_out(100,20,Skorblue).

skorred(_):-

G_skor_red:=(G_skor_red+1),

Skorred:=printq(G_skor_red), 

font(15,30,"Arial"), 

text_out(600,20,Skorred). 

dari penggalan program di atas, harus terdapat gambar yang mendukung dalam format (.PNG), ukuran gambar yang sesuai, dan gambar harus pada satu folder pada file Strawberry Prolog. kemudian setelah selesai dalam pengembangan game tersebut, maka jika di jalankan programnya akan seperti gambar di bawah ini 


Dan dari seluruh tahapan pengembangan game tersebut akan di buat dalam gantt chart dan berikut ini adalah syntaxx dalam bentuk HTML:

google.charts.load('current', {'packages':['gantt']}); 

google.charts.setOnLoadCallback(drawChart);

function daysToMilliseconds(days) { return days * 24 * 60 * 60 * 1000; }

function drawChart() {

var data = new google.visualization.DataTable(); 

data.addColumn('string', 'Task ID'); 

data.addColumn('string', 'Task Name'); 

data.addColumn('date', 'Start Date'); 

data.addColumn('date', 'End Date');

data.addColumn('number', 'Duration');

data.addColumn('number', 'Percent Complete'); 

data.addColumn('string', 'Dependencies');

data.addRows([ 

['Research', 'Mencari game asli dari battlefire', new Date(2016, 0, 1), new Date(2016, 0, 5), null, 100, null], 

['Write', 'Membuat dan menambah window Pembuka', null, new Date(2016, 0, 9), daysToMilliseconds(3), 25, 'Research,Outline'],

['Cite', 'Memahami syntax geme', null, new Date(2016, 0, 7), daysToMilliseconds(1), 20, 'Research'], 

['Complete', 'membuat tutorial dan manualbook', null, new Date(2016, 0, 10), daysToMilliseconds(1), 0, 'Cite,Write'], 

['Outline', 'Membuat gambar untuk grafik game', null, new Date(2016, 0, 6), daysToMilliseconds(1), 100, 'Research'] 

]);

var options = { height: 275 };

var chart = new google.visualization.Gantt(document.getElementById('chart_div'));

chart.draw(data, options); }



4.1.3 Konsumsi pemakaian Memori dan CPU saat run program

Pada saat menjalankan game akan terdapat statistik penggunaan memori dan CPU. Dan berikut ini adalah statistiknya. 



Dan akan di buat dalam penyajian gauge chart. Berikut ini adalah syntax dalam bentuk HTML: 

google.charts.load('current', {'packages':['gauge']});

google.charts.setOnLoadCallback(drawChart);

function drawChart() {

var data = google.visualization.arrayToDataTable([

['Label', 'Value'], 

['Memory', 56], 

['CPU', 7], 

]);

var options = { 

width: 400, height: 120, 

redFrom: 90,redTo: 100,

yellowFrom:75, yellowTo: 90,

minorTicks: 5 

};

var chart = new google.visualization.Gauge(document.getElementById('chart_div'));

chart.draw(data, options);

setInterval(function() { 

data.setValue(0, 1, 40 + Math.round(60 * Math.random())); 

chart.draw(data, options); 

}, 13000); 

setInterval(function() { 

data.setValue(1, 1, 40 + Math.round(60 * Math.random()));

chart.draw(data, options);

}, 5000); 

setInterval(function() { 

data.setValue(2, 1, 60 + Math.round(20 * Math.random()));

chart.draw(data, options); }, 

26000); 

}



4.2 Penggunaan aplikasi Blender dalam chart

4.2.1 Jenis-jenis objek yang paling banyak di buat

Pada aplikasi blener dapat membuat objek biasa ataupun objek yang dapat bergerak atau animasi. Kemudian dalam hal ini akan di imlementasikan banyaknya pemakaian blender dalam pembuatan objek biasa atau animasi. Dan akan di buat dalam bentuk donut chart, barikut ini adalah syntax dalam bentuk HTML nya. 

<html> 

<head> 

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>

<script type="text/javascript"> 

google.charts.load("current", {packages:["corechart"]}); 

google.charts.setOnLoadCallback(drawChart); 

function drawChart() { 

var data = google.visualization.arrayToDataTable([ 

['Task', ''], 

['Objek biasa', 25], 

['Animasi', 75], 

]); var options = { 

title: 'objek yang sering di buat dalam blender', 

pieHole: 0.4,

}; 

var chart = new google.visualization.PieChart(document.getElementById('donutchart'));

chart.draw(data, options);

}

</script> 

</head> 

<body> 

<div id="donutchart" style="width: 900px; height: 500px;"></div> 

</body> 



4.2.2 Pembuatan objek Animasi pada Blender

Pertama saya akan membuat pemain bola dengan bantuan kubus, pertama sesuaikan ukuran kubus, karena akan dijadikan kepala. Kemudian ubah object mode menjadi edit mode, tekan CTRL+R dan scrool hingga membentuk beberapa ruas, sehingga akan membentuk seperti gambar dibawah ini 

\centering

Kemudian seleksi 8 sisi pada bagian bawah kubus, dengan cara SHIFT+KLIK KANAN yang digunakan untuk pembuatan badan. Seperti gambar di bawah ini. Dan kemudiamn tekan huruf E dan sesuaikan panjangnya 


  

Selanjutnya saya akan membuat tangan dengan cara, membuat ruas pada bagian sisi tubuh kanan dan kiri. tekan CTRL+R dan buat 2 buah perpotongan. Dan kemudian seleksi 2 sisi tersebut dan tekan E kemudian sesuikan panjangnya 

 


Dan akan menghasilkan tubuh seperti gambar di bawah ini 



Kemudian sisipkan armateur dengan cara tekan SHIFT+A pilih armateur dan pilih single bone. Kemudian letakkan pada tepat di sampig object manusia 



Selanjutnya untuk mempermudah dalam pembuatan tulang pada object manusia, saya akan membuat tulang tersebut terlihat pada bagian dalam object manusia, dengan cara pilih menu kotak pada sebelah kanan toolbar. dan pilih X-ray



Selanjutnya posisikan armateur tersebut tepat di tengah object manusia tersebut, untuk memudahkannya tekan CTRL+ALT+Q kemudian sesuaikan sumbu X,Y,Z agar armateur tepat di tengah object manusia 



Kemudian buat sususan tulang agar menjadi seperti kerangka tubuh object dengan cara klik kanan pada armateur, ubah object mode menjadi edit mode, selanjutnya, jika kita ingin membuat kerangka kepala, klik kanan pada ujung dari armateur, kemudian tekan E+Z, dan tarik ke atas. Jika kita ingin membuat tangan tekan E+X dan tarik. Untuk membuat kaki tekan E+Z tarik ke bawah. Sehingga akan membentuk kerangka seperti gambar dibawah ini 



Kemudian satukan kerangka tadi dengan objek tubuh, dengan cara, pada object mode, klik kanan pada tubuh, kemudian tekan shift+klik kanan pada armateur (kerangka). Kemudian tekan CTRL+P pilih armature deform with automatic weights 



Kemudian ubah object mode menjadi poe mode, tujuannya adalah untuk mengubah posisi pada object. Dengan cara, klik salah satu armateur yang di ubah posisinya. Kemudian geser sesui dengan keinginan, pada sumbu X, Y , Z 



Kemudian saya tambahkan bola, dengan cara tekan shift+A pilih mesh dan pilih UV shepre. Kemudian sesuikan ukuran ukurannya, menjadi seukuran bola 


Kemudian, saya akan menduplikat objek tubuh, yang berperan sebagai penjaga gawang. Cara menduplikasinya adalah dengan menyeleksi dahulu  object tuhdan object armateur, kemudian tekan tombol shift+D dan tubuh beserta armateur akan terduplikasi 



Selanjutnya saya akan membuat object gawang dengan menggunkan kubus. Pertama buat kubus menjadi lebih kecil, dengan menekan tombol S, kemudian buat agar kubus memanjang dengan cara menekan tombol S+X sehingga kubus memanjang kea rah sumbu X 



Selanjutnya saya akan membuat gawang. Pertama buat ruas pada setiap ujung balok tersebut, dengan menekan tombol CTRL+R, kemudian ubah pengaturan seleksi menjadi face select. Seleksi sisi pada tiap ujung balok. Tekan E dan Tarik kebawah 



Kemudian buat ruas dan seleksi kembali sisi pada ujung bawah dari balok tersebut. Tekan E dan tarik kebelakang 



Kemudian seleksi kembali sisi ujung tas balok , tekan dan tarik ke bawah sampai menyentuh ujung bawah gawang. Sehingga akan menghasilkan gambar seperti dibawah ini 



Kemudian tambahkan plane untuk menjadi lapangan bola nya, ubah ukuran nya dengan menekan tombol S. selanjutnya Ubah warna masing masing object dan tambahkan lampu pada tiap sisi lapangan, dan berikan warna pada tiap objek. jika di lihat dari sisi atas akan seperti gambar di bawah ini 



dan berikut ini adalah hasil render tanpa di jadikan animasi. 



jika ingin di buat menjadi animasi maka di haruskan membuat pergerakan per frame nya. 

seluruh tahapan tersebut akan dibuat gantt chart nya, dan berikut ini adalah syantax dalam bentuk HTML nya. 

google.charts.load('current', {'packages':['gantt']}); 

google.charts.setOnLoadCallback(drawChart); 

function daysToMilliseconds(days) { return days * 24 * 60 * 60 * 1000; } 

function drawChart() { 

var data = new google.visualization.DataTable(); 

data.addColumn('string', 'Task ID'); 

data.addColumn('string', 'Task Name'); 

data.addColumn('date', 'Start Date'); 

data.addColumn('date', 'End Date'); 

data.addColumn('number', 'Duration');

data.addColumn('number', 'Percent Complete'); 

data.addColumn('string', 'Dependencies'); 

data.addRows([ 

['Research', 'Membuat objek biasa', new Date(2016, 0, 1), new Date(2016, 0, 4), null, 100, null],

['Write', 'Merender Objek agar menjadi animasi', null, new Date(2016, 0, 9), daysToMilliseconds(3), 100, 'Research,Outline'], 

['Cite', 'Memberikan struktur tulang pada objek', null, new Date(2016, 0, 7), daysToMilliseconds(1), 30, 'Research'], 

['Outline', 'Menggerakkan Objek dan mengatur frame', null, new Date(2016, 0, 6), daysToMilliseconds(1), 50, 'Research'] 

]); 

var options = { height: 275 }; 

var chart = new google.visualization.Gantt(document.getElementById('chart_div')); 

chart.draw(data, options); } 

dan ini adalah chart nya :

\centering

4.2.3 Konsumsi pemakain memori dan CPU pada saat merender

Pada saat merender animasi pada blender, terdapat pemakain memori dan CPU yang sangat tinggi di karenakan frame dari objek animasi sangat banyak. 

\centering

Terlihat dari gambar di atas ketika merender pemakaian memori 68% dan CPU 98%. dari data tersebut akan saya buat dalam bentuk gauge chartnya. Berikut ini adalah syntak dalam bentuk HTML: 

google.charts.load('current', {'packages':['gauge']}); 

google.charts.setOnLoadCallback(drawChart); 

function drawChart() 


var data = google.visualization.arrayToDataTable([ 

['Label', 'Value'], 

['Memory', 68], 

['CPU', 98], ]); 

var options = { 

width: 400, height: 120, 

redFrom: 90, redTo: 100, 

yellowFrom:75, yellowTo: 90, 

minorTicks: 5 

};

var chart = new google.visualization.Gauge(document.getElementById('chart_div')); 

chart.draw(data, options); 

setInterval(function() { 

data.setValue(0, 1, 40 + Math.round(60 * Math.random())); 

chart.draw(data, options); 

}, 13000); 

setInterval(function() { 

data.setValue(1, 1, 40 + Math.round(60 * Math.random())); 

chart.draw(data, options);

}, 5000); 

setInterval(function() { 

data.setValue(2, 1, 60 + Math.round(20 * Math.random())); 

chart.draw(data, options);

}, 26000); 

}

dan ini adalah gauge chart dari proses merender objek tersebut

\centering