SlideShare una empresa de Scribd logo
1 de 38
PRAKTIK PENGEMBANGAN
KONTEN HTML5 UNTUK
E-LEARNING (EXTENDED)
E-LEARNING (EXTENDED)
MUHAMMAD YUSUF
MUHAMMAD.YUSUF@COMLABS.ITB.AC.ID
EXTENDED-1

MENGESET FPS
UNTUK TICKER
CANVAS
MENGESET FPS UNTUK TICKER CANVAS
(INDEX.HTML)
function init(){
stage = new createjs.Stage("kanvas1");
antrianLoad = new createjs.LoadQueue(false);
antrianLoad.installPlugin(createjs.Sound);
antrianLoad.addEventListener("complete",
handleComplete);
antrianLoad.loadManifest([{id:"suara1",
src:"computermagic.mp3"}]);
scorm.init();
createjs.Ticker.setFPS(30);
}
EXTENDED-2

MENAMBAHKAN OBJEK BITMAP KE CANVAS
SALIN FOLDER TOKOH YANG
BERISI GAMBAR YANG AKAN
DIGUNAKAN
MENAMBAHKAN OBJEK BITMAP KE CANVAS
(INDEX2.HTML)

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Materi 2</title>
<link rel=“stylesheet" href="style.css">
<script src="easeljs-0.7.0.min.js"></script>
<script src="preloadjs-0.4.0.min.js"></script>
</head>
MENAMBAHKAN OBJEK BITMAP KE CANVAS
(INDEX2.HTML)
<body onload=“init()”>
<table align="center" id="frameContent">
<tr height="120" class="headerTable">
<th colspan="3">Materi 2</th>
</tr>
<tr height="400" class="bodyTable">
<td colspan="3">
<canvas id="kanvas1" width="800" height="400">
</canvas>
</td>
</tr>
<tr height="80" class="footerTable">
<td width="80%"><a href="index.html"><img src="images/home.png" alt=""
style="padding-left: 10px;"></a></td>
<td width="10%"><a href="index.html"><img src="images/prev.png"
alt=""></a></td>
<td width="10%"><a href="index2.html"><img src="images/next.png"
alt=""></a></td>
</tr>
</table>
</body>
MENAMBAHKAN OBJEK BITMAP KE CANVAS
(INDEX2.HTML)
<script src="easeljs-0.7.0.min.js"></script>
<script src="preloadjs-0.4.0.min.js"></script>
<script>
var stage;
var antrianLoad;
function init(){
stage = new createjs.Stage("kanvas1");
antrianLoad = new createjs.LoadQueue(false);
antrianLoad.installPlugin(createjs.Sound);
antrianLoad.addEventListener("complete", handleComplete);
antrianLoad.loadManifest([{id:"gbrTubuh", src:"tokoh/tubuh.png"},
{id:"gbrTanganKanan", src:"tokoh/tangan_kanan.png"},
{id:"gbrTanganTongkat", src:"tokoh/tangan_tongkat.png"}]);
createjs.Ticker.setFPS(30);
}
</script>
MENAMBAHKAN OBJEK BITMAP KE CANVAS
(INDEX2.HTML)
createjs.Ticker.setFPS(30);
}
function handleComplete(event){
createjs.Ticker.addEventListener("tick", onTick);
var tubuhTokoh = new
createjs.Bitmap(antrianLoad.getResult(“gbrTubuh"));
tubuhTokoh.x=50;
tubuhTokoh.y=50;
stage.addChild(tubuhTokoh);
}
MENAMBAHKAN OBJEK BITMAP KE CANVAS
(INDEX2.HTML)

stage.addChild(tubuhTokoh);
}
function onTick(event){
stage.update();
}
</script>
MENAMBAHKAN OBJEK BITMAP KE CANVAS
(INDEX2.HTML)
createjs.Ticker.addEventListener("tick", onTick);
var tubuhTokoh = new
createjs.Bitmap(antrianLoad.getResult("gbrTubuh")
);
var tanganKananTokoh = new
createjs.Bitmap(antrianLoad.getResult("gbrTanganK
anan"));
tubuhTokoh.x=50;
tubuhTokoh.y=50;
MENAMBAHKAN OBJEK BITMAP KE CANVAS
(INDEX2.HTML)
var tubuhTokoh = new
createjs.Bitmap(antrianLoad.getResult("gbrTubuh")
);
var tanganKananTokoh = new
createjs.Bitmap(antrianLoad.getResult("gbrTanganK
anan"));
tubuhTokoh.x=50;
tubuhTokoh.y=50;
tanganKananTokoh.x=160;
tanganKananTokoh.y=240;
stage.addChild(tubuhTokoh);
MENAMBAHKAN OBJEK BITMAP KE CANVAS
(INDEX2.HTML)

tubuhTokoh.x=50;
tubuhTokoh.y=50;
tanganKananTokoh.x=160;
tanganKananTokoh.y=240;
stage.addChild(tanganKananTokoh);
stage.addChild(tubuhTokoh);
}
EXTENDED-3

MENGANIMASIKAN
BITMAP DI CANVAS
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

<script src="easeljs-0.7.0.min.js"></script>
<script src="preloadjs-0.4.0.min.js"></script>
<script src="tweenjs-0.5.0.min.js"></script>
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

tubuhTokoh.x=50;
tubuhTokoh.y=50;
tanganKananTokoh.x=160;
tanganKananTokoh.y=240;
tanganKananTokoh.regX=0;
tanganKananTokoh.regY=0;
stage.addChild(tanganKananTokoh);
stage.addChild(tubuhTokoh);
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

tanganKananTokoh.regX=0;
tanganKananTokoh.regY=0;
createjs.Tween.get(tanganKananTokoh, { loop: true })
.to({rotation: -30 }, 1000, createjs.Ease.linear)
.to({rotation: 0 }, 1000, createjs.Ease.linear);
stage.addChild(tanganKananTokoh);
stage.addChild(tubuhTokoh);
SILAKAN DITES.
HASILNYA ADALAH TANGAN KANAN DARI TOKOH YANG BERGERAK-GERAK.
MENAMBAHKAN OBJEK BITMAP KE CANVAS
(INDEX2.HTML)
createjs.Ticker.addEventListener("tick", onTick);
var tubuhTokoh = new
createjs.Bitmap(antrianLoad.getResult("gbrTubuh"));
var tanganKananTokoh = new
createjs.Bitmap(antrianLoad.getResult(“gbrTanganKana
n"));
var tanganTongkatTokoh = new
createjs.Bitmap(antrianLoad.getResult("gbrTanganTogk
at"));
tubuhTokoh.x=50;
tubuhTokoh.y=50;
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

tubuhTokoh.x=50;
tubuhTokoh.y=50;
tanganKananTokoh.x=160;
tanganKananTokoh.y=240;
tanganKananTokoh.regX=0;
tanganKananTokoh.regY=0;
tanganTongkatTokoh.x=145;
tanganTongkatTokoh.y=250;
tanganTongkatTokoh.regX=-10;
tanganTongkatTokoh.regY=100;
tanganTongkatTokoh.visible=false;
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)
createjs.Tween.get(tanganKananTokoh, { loop: false })
.to({rotation: -30 }, 500, createjs.Ease.linear)
.to({rotation: 0 }, 500, createjs.Ease.linear)
.to({visible:false},0);
createjs.Tween.get(tanganTongkatTokoh, { loop: false })
.wait(1000)
.to({visible:true}, 0)
.to({rotation: -20 }, 500, createjs.Ease.linear)
.to({rotation: 0 }, 500, createjs.Ease.linear);
stage.addChild(tanganKananTokoh);
stage.addChild(tanganTongkatTokoh);
stage.addChild(tubuhTokoh);
SILAKAN DITES.
HASILNYA ADALAH TANGAN KANAN DARI TOKOH YANG BERGERAK-GERAK.
SALIN BERKAS
BASKETBALL.PNG
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

antrianLoad.loadManifest([{id:"gbrTubuh",
src:"tokoh/tubuh.png"}, {id:"gbrTanganKanan",
src:"tokoh/tangan_kanan.png"}, {id:"gbrTanganTongkat",
src:"tokoh/tangan_tongkat.png"}, {id:”gbrBola",
src:"basketball.png"}]);
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

var tanganTongkatTokoh = new
createjs.Bitmap(antrianLoad.getResult("gbrTanganTongkat"));
var bola = new
createjs.Bitmap(antrianLoad.getResult("gbrBola"));
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

tanganTongkatTokoh.regX=-10;
tanganTongkatTokoh.regY=100;
tanganTongkatTokoh.visible=false;
bola.x=500;
bola.y=50;
bola.scaleX=0.1;
bola.scaleY=0.1;
bola.regX=bola.image.width/2;
bola.regY=bola.image.height/2;
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

createjs.Tween.get(tanganTongkatTokoh, { loop: false })
.wait(1000)
.to({visible:true}, 0)
.to({rotation: -20 }, 500, createjs.Ease.linear)
.to({rotation: 0 }, 500, createjs.Ease.linear);
createjs.Tween.get(bola, {loop: false})
.wait(2500)
.to({y:300, rotation:-360}, 3000,
createjs.Ease.bounceOut);
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

stage.addChild(tanganKananTokoh);
stage.addChild(tanganTongkatTokoh);
stage.addChild(tubuhTokoh);
stage.addChild(bola);
SILAKAN DITES.
HASILNYA ADALAH TERDAPAT BOLA YANG AKAN JATUH MEMANTUL.
EXTENDED-4

MENAMBAHKAN DAN MENSINKRONISASI EFEK
SUARA MENGGUNAKAN TIMELINE
SALIN BERKAS
PANTUL.MP3
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

<script
<script
<script
<script

src="easeljs-0.7.0.min.js"></script>
src="preloadjs-0.4.0.min.js"></script>
src="tweenjs-0.5.0.min.js"></script>
src="soundjs-0.5.0.min.js"></script>
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

antrianLoad.loadManifest([{id:"gbrTubuh",
src:"tokoh/tubuh.png"}, {id:"gbrTanganKanan",
src:"tokoh/tangan_kanan.png"}, {id:"gbrTanganTongkat",
src:"tokoh/tangan_tongkat.png"}, {id:"gbrBola",
src:"basketball.png"}, {id:"suaraPantul",
src:"pantul.mp3"}]);
MENGANIMASIKAN BITMAP DI CANVAS
(INDEX2.HTML)

}
function onCompleteTweenTanganTongkat(){
createjs.Sound.play("suaraPantul");
}
function onTick(event){
stage.update();
}
SELESAI. TERIMAKASIH.
RÈNGSÈ. HATUR NUHUN.
RÈNGSÈ. HATUR NUHUN.
SAMPAI BERJUMPA DI KESEMPATAN BERIKUTNYA.

Más contenido relacionado

La actualidad más candente

Javascript技巧参考大全
Javascript技巧参考大全Javascript技巧参考大全
Javascript技巧参考大全fgghyyfk
 
A slew of AACM 50th anniversary celebrations this weekend
A slew of AACM 50th anniversary celebrations this weekendA slew of AACM 50th anniversary celebrations this weekend
A slew of AACM 50th anniversary celebrations this weekendchicagonewsyesterday
 
HTML5を使ったウェブアプリケーションの高速化
HTML5を使ったウェブアプリケーションの高速化HTML5を使ったウェブアプリケーションの高速化
HTML5を使ったウェブアプリケーションの高速化hagino 3000
 
Feeds. использование и создание плагинов. Feeds API
Feeds. использование и создание плагинов. Feeds APIFeeds. использование и создание плагинов. Feeds API
Feeds. использование и создание плагинов. Feeds APIAlex S
 
Skaters and BMXers from all over the U.S. descend on Grant Park
Skaters and BMXers from all over the U.S. descend on Grant ParkSkaters and BMXers from all over the U.S. descend on Grant Park
Skaters and BMXers from all over the U.S. descend on Grant Parkchicagonewsyesterday
 
Pimp your site with jQuery!
Pimp your site with jQuery!Pimp your site with jQuery!
Pimp your site with jQuery!Elliott Kember
 
Here's the Downtown Sound lineup for 2015
Here's the Downtown Sound lineup for 2015Here's the Downtown Sound lineup for 2015
Here's the Downtown Sound lineup for 2015chicagonewsyesterday
 
George McCaskey's handling of the Ray McDonald affair offers a lesson to the ...
George McCaskey's handling of the Ray McDonald affair offers a lesson to the ...George McCaskey's handling of the Ray McDonald affair offers a lesson to the ...
George McCaskey's handling of the Ray McDonald affair offers a lesson to the ...irwinvifxcfesre
 
2014 it - app dev series - 03 - interagire con il database
2014   it - app dev series - 03 - interagire con il database2014   it - app dev series - 03 - interagire con il database
2014 it - app dev series - 03 - interagire con il databaseMongoDB
 
aggregation and indexing with suitable example using MongoDB.
aggregation and indexing with suitable example using MongoDB.aggregation and indexing with suitable example using MongoDB.
aggregation and indexing with suitable example using MongoDB.bhavesh lande
 
Javascript and jQuery for Mobile
Javascript and jQuery for MobileJavascript and jQuery for Mobile
Javascript and jQuery for MobileIvano Malavolta
 

La actualidad más candente (20)

Web2.0 with jQuery
Web2.0 with jQueryWeb2.0 with jQuery
Web2.0 with jQuery
 
Dotnet
Dotnet Dotnet
Dotnet
 
Javascript技巧参考大全
Javascript技巧参考大全Javascript技巧参考大全
Javascript技巧参考大全
 
A slew of AACM 50th anniversary celebrations this weekend
A slew of AACM 50th anniversary celebrations this weekendA slew of AACM 50th anniversary celebrations this weekend
A slew of AACM 50th anniversary celebrations this weekend
 
Get more votes!
Get more votes!Get more votes!
Get more votes!
 
HTML5を使ったウェブアプリケーションの高速化
HTML5を使ったウェブアプリケーションの高速化HTML5を使ったウェブアプリケーションの高速化
HTML5を使ったウェブアプリケーションの高速化
 
Jquery ui, ajax
Jquery ui, ajaxJquery ui, ajax
Jquery ui, ajax
 
Load3
Load3Load3
Load3
 
Feeds. использование и создание плагинов. Feeds API
Feeds. использование и создание плагинов. Feeds APIFeeds. использование и создание плагинов. Feeds API
Feeds. использование и создание плагинов. Feeds API
 
Skaters and BMXers from all over the U.S. descend on Grant Park
Skaters and BMXers from all over the U.S. descend on Grant ParkSkaters and BMXers from all over the U.S. descend on Grant Park
Skaters and BMXers from all over the U.S. descend on Grant Park
 
Pimp your site with jQuery!
Pimp your site with jQuery!Pimp your site with jQuery!
Pimp your site with jQuery!
 
Here's the Downtown Sound lineup for 2015
Here's the Downtown Sound lineup for 2015Here's the Downtown Sound lineup for 2015
Here's the Downtown Sound lineup for 2015
 
George McCaskey's handling of the Ray McDonald affair offers a lesson to the ...
George McCaskey's handling of the Ray McDonald affair offers a lesson to the ...George McCaskey's handling of the Ray McDonald affair offers a lesson to the ...
George McCaskey's handling of the Ray McDonald affair offers a lesson to the ...
 
Dart und JavaScript
Dart und JavaScriptDart und JavaScript
Dart und JavaScript
 
2014 it - app dev series - 03 - interagire con il database
2014   it - app dev series - 03 - interagire con il database2014   it - app dev series - 03 - interagire con il database
2014 it - app dev series - 03 - interagire con il database
 
Lesson 01
Lesson 01Lesson 01
Lesson 01
 
aggregation and indexing with suitable example using MongoDB.
aggregation and indexing with suitable example using MongoDB.aggregation and indexing with suitable example using MongoDB.
aggregation and indexing with suitable example using MongoDB.
 
Jquery p1
Jquery p1Jquery p1
Jquery p1
 
Sis quiz
Sis quizSis quiz
Sis quiz
 
Javascript and jQuery for Mobile
Javascript and jQuery for MobileJavascript and jQuery for Mobile
Javascript and jQuery for Mobile
 

Destacado

Membuat aplikasi quiz android dengan Intel XDK
Membuat aplikasi quiz android dengan Intel XDKMembuat aplikasi quiz android dengan Intel XDK
Membuat aplikasi quiz android dengan Intel XDKNur Rohman
 
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 4 - Pengembangan Aplikasi ...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 4 - Pengembangan Aplikasi ...Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 4 - Pengembangan Aplikasi ...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 4 - Pengembangan Aplikasi ...Muhammad Yusuf
 
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 3 - Pengenalan Intel XDK D...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 3 - Pengenalan Intel XDK D...Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 3 - Pengenalan Intel XDK D...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 3 - Pengenalan Intel XDK D...Muhammad Yusuf
 
Modul 5 pengembangan aplikasi mobile learning menggunakan intel xdk sesi 2
Modul 5   pengembangan aplikasi mobile learning menggunakan intel xdk sesi 2Modul 5   pengembangan aplikasi mobile learning menggunakan intel xdk sesi 2
Modul 5 pengembangan aplikasi mobile learning menggunakan intel xdk sesi 2Muhammad Yusuf
 
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 8 - Men-submit Aplikasi ke...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 8 - Men-submit Aplikasi ke...Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 8 - Men-submit Aplikasi ke...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 8 - Men-submit Aplikasi ke...Muhammad Yusuf
 
Modul 7 integrasi aplikasi dengan facebook api menggunakan intel xdk
Modul 7   integrasi aplikasi dengan facebook api menggunakan intel xdkModul 7   integrasi aplikasi dengan facebook api menggunakan intel xdk
Modul 7 integrasi aplikasi dengan facebook api menggunakan intel xdkMuhammad Yusuf
 
Pengenalan HTML5, Mobile Application, dan Intel XDK
Pengenalan HTML5, Mobile Application, dan Intel XDKPengenalan HTML5, Mobile Application, dan Intel XDK
Pengenalan HTML5, Mobile Application, dan Intel XDKMuhammad Yusuf
 
Modul 6 preview aplikasi pada device
Modul 6   preview aplikasi pada deviceModul 6   preview aplikasi pada device
Modul 6 preview aplikasi pada deviceMuhammad Yusuf
 
Praktik Pengembangan Konten E-Learning HTML5 Sederhana
Praktik Pengembangan Konten E-Learning HTML5 SederhanaPraktik Pengembangan Konten E-Learning HTML5 Sederhana
Praktik Pengembangan Konten E-Learning HTML5 SederhanaMuhammad Yusuf
 
Habis Phonegap Terbitlah Apache Cordova
Habis Phonegap Terbitlah Apache CordovaHabis Phonegap Terbitlah Apache Cordova
Habis Phonegap Terbitlah Apache CordovaKursus Web Programing
 
Pengembangan Bahan Ajar dengan Menggunakan Authoring Tools
Pengembangan Bahan Ajar dengan Menggunakan Authoring ToolsPengembangan Bahan Ajar dengan Menggunakan Authoring Tools
Pengembangan Bahan Ajar dengan Menggunakan Authoring ToolsMuhammad Yusuf
 

Destacado (11)

Membuat aplikasi quiz android dengan Intel XDK
Membuat aplikasi quiz android dengan Intel XDKMembuat aplikasi quiz android dengan Intel XDK
Membuat aplikasi quiz android dengan Intel XDK
 
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 4 - Pengembangan Aplikasi ...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 4 - Pengembangan Aplikasi ...Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 4 - Pengembangan Aplikasi ...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 4 - Pengembangan Aplikasi ...
 
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 3 - Pengenalan Intel XDK D...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 3 - Pengenalan Intel XDK D...Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 3 - Pengenalan Intel XDK D...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 3 - Pengenalan Intel XDK D...
 
Modul 5 pengembangan aplikasi mobile learning menggunakan intel xdk sesi 2
Modul 5   pengembangan aplikasi mobile learning menggunakan intel xdk sesi 2Modul 5   pengembangan aplikasi mobile learning menggunakan intel xdk sesi 2
Modul 5 pengembangan aplikasi mobile learning menggunakan intel xdk sesi 2
 
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 8 - Men-submit Aplikasi ke...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 8 - Men-submit Aplikasi ke...Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 8 - Men-submit Aplikasi ke...
Modul Intel XDK Workshop ver 1.0 Sept 2013 - Modul 8 - Men-submit Aplikasi ke...
 
Modul 7 integrasi aplikasi dengan facebook api menggunakan intel xdk
Modul 7   integrasi aplikasi dengan facebook api menggunakan intel xdkModul 7   integrasi aplikasi dengan facebook api menggunakan intel xdk
Modul 7 integrasi aplikasi dengan facebook api menggunakan intel xdk
 
Pengenalan HTML5, Mobile Application, dan Intel XDK
Pengenalan HTML5, Mobile Application, dan Intel XDKPengenalan HTML5, Mobile Application, dan Intel XDK
Pengenalan HTML5, Mobile Application, dan Intel XDK
 
Modul 6 preview aplikasi pada device
Modul 6   preview aplikasi pada deviceModul 6   preview aplikasi pada device
Modul 6 preview aplikasi pada device
 
Praktik Pengembangan Konten E-Learning HTML5 Sederhana
Praktik Pengembangan Konten E-Learning HTML5 SederhanaPraktik Pengembangan Konten E-Learning HTML5 Sederhana
Praktik Pengembangan Konten E-Learning HTML5 Sederhana
 
Habis Phonegap Terbitlah Apache Cordova
Habis Phonegap Terbitlah Apache CordovaHabis Phonegap Terbitlah Apache Cordova
Habis Phonegap Terbitlah Apache Cordova
 
Pengembangan Bahan Ajar dengan Menggunakan Authoring Tools
Pengembangan Bahan Ajar dengan Menggunakan Authoring ToolsPengembangan Bahan Ajar dengan Menggunakan Authoring Tools
Pengembangan Bahan Ajar dengan Menggunakan Authoring Tools
 

Praktik Pengembangan Konten HTML5 untuk E-Learning (Extended)

  • 1. PRAKTIK PENGEMBANGAN KONTEN HTML5 UNTUK E-LEARNING (EXTENDED) E-LEARNING (EXTENDED) MUHAMMAD YUSUF MUHAMMAD.YUSUF@COMLABS.ITB.AC.ID
  • 3. MENGESET FPS UNTUK TICKER CANVAS (INDEX.HTML) function init(){ stage = new createjs.Stage("kanvas1"); antrianLoad = new createjs.LoadQueue(false); antrianLoad.installPlugin(createjs.Sound); antrianLoad.addEventListener("complete", handleComplete); antrianLoad.loadManifest([{id:"suara1", src:"computermagic.mp3"}]); scorm.init(); createjs.Ticker.setFPS(30); }
  • 5. SALIN FOLDER TOKOH YANG BERISI GAMBAR YANG AKAN DIGUNAKAN
  • 6. MENAMBAHKAN OBJEK BITMAP KE CANVAS (INDEX2.HTML) <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Materi 2</title> <link rel=“stylesheet" href="style.css"> <script src="easeljs-0.7.0.min.js"></script> <script src="preloadjs-0.4.0.min.js"></script> </head>
  • 7. MENAMBAHKAN OBJEK BITMAP KE CANVAS (INDEX2.HTML) <body onload=“init()”> <table align="center" id="frameContent"> <tr height="120" class="headerTable"> <th colspan="3">Materi 2</th> </tr> <tr height="400" class="bodyTable"> <td colspan="3"> <canvas id="kanvas1" width="800" height="400"> </canvas> </td> </tr> <tr height="80" class="footerTable"> <td width="80%"><a href="index.html"><img src="images/home.png" alt="" style="padding-left: 10px;"></a></td> <td width="10%"><a href="index.html"><img src="images/prev.png" alt=""></a></td> <td width="10%"><a href="index2.html"><img src="images/next.png" alt=""></a></td> </tr> </table> </body>
  • 8. MENAMBAHKAN OBJEK BITMAP KE CANVAS (INDEX2.HTML) <script src="easeljs-0.7.0.min.js"></script> <script src="preloadjs-0.4.0.min.js"></script> <script> var stage; var antrianLoad; function init(){ stage = new createjs.Stage("kanvas1"); antrianLoad = new createjs.LoadQueue(false); antrianLoad.installPlugin(createjs.Sound); antrianLoad.addEventListener("complete", handleComplete); antrianLoad.loadManifest([{id:"gbrTubuh", src:"tokoh/tubuh.png"}, {id:"gbrTanganKanan", src:"tokoh/tangan_kanan.png"}, {id:"gbrTanganTongkat", src:"tokoh/tangan_tongkat.png"}]); createjs.Ticker.setFPS(30); } </script>
  • 9. MENAMBAHKAN OBJEK BITMAP KE CANVAS (INDEX2.HTML) createjs.Ticker.setFPS(30); } function handleComplete(event){ createjs.Ticker.addEventListener("tick", onTick); var tubuhTokoh = new createjs.Bitmap(antrianLoad.getResult(“gbrTubuh")); tubuhTokoh.x=50; tubuhTokoh.y=50; stage.addChild(tubuhTokoh); }
  • 10. MENAMBAHKAN OBJEK BITMAP KE CANVAS (INDEX2.HTML) stage.addChild(tubuhTokoh); } function onTick(event){ stage.update(); } </script>
  • 11.
  • 12. MENAMBAHKAN OBJEK BITMAP KE CANVAS (INDEX2.HTML) createjs.Ticker.addEventListener("tick", onTick); var tubuhTokoh = new createjs.Bitmap(antrianLoad.getResult("gbrTubuh") ); var tanganKananTokoh = new createjs.Bitmap(antrianLoad.getResult("gbrTanganK anan")); tubuhTokoh.x=50; tubuhTokoh.y=50;
  • 13. MENAMBAHKAN OBJEK BITMAP KE CANVAS (INDEX2.HTML) var tubuhTokoh = new createjs.Bitmap(antrianLoad.getResult("gbrTubuh") ); var tanganKananTokoh = new createjs.Bitmap(antrianLoad.getResult("gbrTanganK anan")); tubuhTokoh.x=50; tubuhTokoh.y=50; tanganKananTokoh.x=160; tanganKananTokoh.y=240; stage.addChild(tubuhTokoh);
  • 14. MENAMBAHKAN OBJEK BITMAP KE CANVAS (INDEX2.HTML) tubuhTokoh.x=50; tubuhTokoh.y=50; tanganKananTokoh.x=160; tanganKananTokoh.y=240; stage.addChild(tanganKananTokoh); stage.addChild(tubuhTokoh); }
  • 15.
  • 17. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) <script src="easeljs-0.7.0.min.js"></script> <script src="preloadjs-0.4.0.min.js"></script> <script src="tweenjs-0.5.0.min.js"></script>
  • 18. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) tubuhTokoh.x=50; tubuhTokoh.y=50; tanganKananTokoh.x=160; tanganKananTokoh.y=240; tanganKananTokoh.regX=0; tanganKananTokoh.regY=0; stage.addChild(tanganKananTokoh); stage.addChild(tubuhTokoh);
  • 19. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) tanganKananTokoh.regX=0; tanganKananTokoh.regY=0; createjs.Tween.get(tanganKananTokoh, { loop: true }) .to({rotation: -30 }, 1000, createjs.Ease.linear) .to({rotation: 0 }, 1000, createjs.Ease.linear); stage.addChild(tanganKananTokoh); stage.addChild(tubuhTokoh);
  • 20. SILAKAN DITES. HASILNYA ADALAH TANGAN KANAN DARI TOKOH YANG BERGERAK-GERAK.
  • 21. MENAMBAHKAN OBJEK BITMAP KE CANVAS (INDEX2.HTML) createjs.Ticker.addEventListener("tick", onTick); var tubuhTokoh = new createjs.Bitmap(antrianLoad.getResult("gbrTubuh")); var tanganKananTokoh = new createjs.Bitmap(antrianLoad.getResult(“gbrTanganKana n")); var tanganTongkatTokoh = new createjs.Bitmap(antrianLoad.getResult("gbrTanganTogk at")); tubuhTokoh.x=50; tubuhTokoh.y=50;
  • 22. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) tubuhTokoh.x=50; tubuhTokoh.y=50; tanganKananTokoh.x=160; tanganKananTokoh.y=240; tanganKananTokoh.regX=0; tanganKananTokoh.regY=0; tanganTongkatTokoh.x=145; tanganTongkatTokoh.y=250; tanganTongkatTokoh.regX=-10; tanganTongkatTokoh.regY=100; tanganTongkatTokoh.visible=false;
  • 23. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) createjs.Tween.get(tanganKananTokoh, { loop: false }) .to({rotation: -30 }, 500, createjs.Ease.linear) .to({rotation: 0 }, 500, createjs.Ease.linear) .to({visible:false},0); createjs.Tween.get(tanganTongkatTokoh, { loop: false }) .wait(1000) .to({visible:true}, 0) .to({rotation: -20 }, 500, createjs.Ease.linear) .to({rotation: 0 }, 500, createjs.Ease.linear); stage.addChild(tanganKananTokoh); stage.addChild(tanganTongkatTokoh); stage.addChild(tubuhTokoh);
  • 24. SILAKAN DITES. HASILNYA ADALAH TANGAN KANAN DARI TOKOH YANG BERGERAK-GERAK.
  • 26. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) antrianLoad.loadManifest([{id:"gbrTubuh", src:"tokoh/tubuh.png"}, {id:"gbrTanganKanan", src:"tokoh/tangan_kanan.png"}, {id:"gbrTanganTongkat", src:"tokoh/tangan_tongkat.png"}, {id:”gbrBola", src:"basketball.png"}]);
  • 27. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) var tanganTongkatTokoh = new createjs.Bitmap(antrianLoad.getResult("gbrTanganTongkat")); var bola = new createjs.Bitmap(antrianLoad.getResult("gbrBola"));
  • 28. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) tanganTongkatTokoh.regX=-10; tanganTongkatTokoh.regY=100; tanganTongkatTokoh.visible=false; bola.x=500; bola.y=50; bola.scaleX=0.1; bola.scaleY=0.1; bola.regX=bola.image.width/2; bola.regY=bola.image.height/2;
  • 29. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) createjs.Tween.get(tanganTongkatTokoh, { loop: false }) .wait(1000) .to({visible:true}, 0) .to({rotation: -20 }, 500, createjs.Ease.linear) .to({rotation: 0 }, 500, createjs.Ease.linear); createjs.Tween.get(bola, {loop: false}) .wait(2500) .to({y:300, rotation:-360}, 3000, createjs.Ease.bounceOut);
  • 30. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) stage.addChild(tanganKananTokoh); stage.addChild(tanganTongkatTokoh); stage.addChild(tubuhTokoh); stage.addChild(bola);
  • 31. SILAKAN DITES. HASILNYA ADALAH TERDAPAT BOLA YANG AKAN JATUH MEMANTUL.
  • 32. EXTENDED-4 MENAMBAHKAN DAN MENSINKRONISASI EFEK SUARA MENGGUNAKAN TIMELINE
  • 34. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) <script <script <script <script src="easeljs-0.7.0.min.js"></script> src="preloadjs-0.4.0.min.js"></script> src="tweenjs-0.5.0.min.js"></script> src="soundjs-0.5.0.min.js"></script>
  • 35. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) antrianLoad.loadManifest([{id:"gbrTubuh", src:"tokoh/tubuh.png"}, {id:"gbrTanganKanan", src:"tokoh/tangan_kanan.png"}, {id:"gbrTanganTongkat", src:"tokoh/tangan_tongkat.png"}, {id:"gbrBola", src:"basketball.png"}, {id:"suaraPantul", src:"pantul.mp3"}]);
  • 36. MENGANIMASIKAN BITMAP DI CANVAS (INDEX2.HTML) } function onCompleteTweenTanganTongkat(){ createjs.Sound.play("suaraPantul"); } function onTick(event){ stage.update(); }
  • 37.
  • 38. SELESAI. TERIMAKASIH. RÈNGSÈ. HATUR NUHUN. RÈNGSÈ. HATUR NUHUN. SAMPAI BERJUMPA DI KESEMPATAN BERIKUTNYA.