¾Ö´Ï¸ÞÀ̼ÇÀº ½±°Ô ¸»Çؼ ¿òÁ÷ÀÌ´Â ±×¸²ÀÌ´Ù. À¥ ÆäÀÌÁö°¡ °¡¸¸È÷ ÀÖÁö
¾Ê°í °è¼Ó ²ÞƲ°Å·Á »ç¿ëÀÚÀÇ ÁÖÀǸ¦ ²ô´Â ±â¹ýÀÌ´Ù. ÀÏ¹Ý À¥ ÆäÀÌÁö¿¡¼µµ ¸ÚÁö°Ô ÆîÃÄÁö´Â ¸Þ´º, ȸé Áß¾Ó¿¡ ¿¸®´Â Æ˾÷â, ³×ºñ°ÔÀ̼Ç, ÀÚ·á ¸ñ·Ï µîÀ» À§ÇØ ¾Ö´Ï¸ÞÀ̼ÇÀÌ È°¿ëµÈ´Ù. ÀÏ´Ü ¿¹»Ú°í ¿òÁ÷ÀÓÀÌ
ÀÖ¾î ¾îµðÂë¿¡¼ ¹«½¼ ÀÏÀÌ ¹ú¾îÁö´ÂÁö Á÷°üÀûÀ¸·Î º¸¿©¼ ÁÁ´Ù.
Áö±Ý±îÁö ÀÌ·¯ÇÑ ¾Ö´Ï¸ÞÀÌ¼Ç È¿°ú´Â Ç÷¡½Ã·Î ±¸ÇöÇß¾ú´Ù. ±×·¯³ª HTML5°¡ µµÀÔµÇ¸é¼ CSS³ª
jQuery·Îµµ °£´ÜÇÑ ¾Ö´Ï¸ÞÀ̼ÇÀ» ó¸®ÇÒ ¼ö ÀÖ°Ô µÇ¾ú´Ù. ¸Þ´º, ¾ÆÄÚµð¾ð, Æ˾÷⠵ ´ëÇÑ ¾Ö´Ï¸ÞÀ̼ÇÀº jQuery·Îµµ ÃæºÐÇÏ´Ù.
¿òÁ÷ÀÓÀÌ °¡Àå ¸¹Àº ¿¹´Â °ÔÀÓÀÌ´Ù. °ÔÀÓÀº º»ÁúÀûÀ¸·Î µ¿ÀûÀ̹ǷΠÇѽõµ
°¡¸¸È÷ ÀÖÁö ¾Ê°í ȸéÀÌ °è¼Ó ¹Ù²ï´Ù. °ÔÀÓ°°Àº º¹ÀâÇÑ ¾Ö´Ï¸ÞÀ̼ÇÀº ĵ¹ö½º°¡ ´ã´çÇÑ´Ù. ĵ¹ö½º´Â ÀÓÀÇÀÇ ±×¸²À» ±×¸± ¼ö ÀÖÀ¸¹Ç·Î Ç¥Çö ´É·ÂÀÌ ¹«ÇÑÇØ Ç÷¡½ÃÀÇ ¿µ¿ªÀ» °ÅÀÇ ´Ù ¼ÒÈÇس½´Ù.
¾Ö´Ï¸ÞÀ̼ÇÀº »ç½Ç ±²ÀåÈ÷ ´Ü¼øÇÏ°í °£´ÜÇÑ ±â¹ýÀÌ´Ù. ½Ã°£ÀÇ È帧¿¡
µû¶ó ÁÖ±âÀûÀ¸·Î ±×¸²À» ¹Ù²Ù¾î ´Ù½Ã ±×¸®±â¸¦ ¹Ýº¹ÇÏ¸é µÈ´Ù. ½Ã°£ÀÌ °³ÀԵǹǷΠ¿ø·ÐÀûÀ¸·Î ŸÀ̸ӷΠ±¸ÇöÇÏ´Â
°ÍÀÌ Á¦ÀÏ ½±´Ù. ¾Ö´Ï¸ÞÀ̼ÇÀÌ ¹«ÇÑÈ÷ ¹Ýº¹µÇ´õ¶óµµ ´ÙÀ½°ú °°Àº ¹«ÇÑ ·çÇÁ¸¦ »ç¿ëÇؼ´Â ¾ÈµÈ´Ù.
for (;;) {
//
¾Ö´Ï¸ÞÀÌ¼Ç Ã³¸®
}
ÀÌ·¸°Ô Çϸé ÀÌ ·çÇÁ¸¦ ºüÁ® ³ª¿Ã ¼ö ¾øÀ¸¹Ç·Î ȸéÀ» ´Ù½Ã ±×¸®Áöµµ ¸øÇÏ°í »ç¿ëÀÚÀÇ Á¶ÀÛ¿¡µµ ¹ÝÀÀÇÏÁö ¸øÇϹǷÎ
´Ù¿îµÈ °Í°ú °°´Ù. ¹«ÇÑÈ÷ ¹Ýº¹ÇÏ´õ¶óµµ Æ´Æ´ÀÌ ¸Å ÇÁ·¹ÀÓÀ» ±×·Á¾ß ÇÑ´Ù. ±×·¡¼ ŸÀ̸Ӱ¡ Á¦°ÝÀÌ´Ù. ´ÙÀ½ ¿¹Á¦´Â ±Ø´ÜÀûÀ¸·Î °£´ÜÇÑ ¾Ö´Ï¸ÞÀ̼ÇÀ»
º¸¿©ÁØ´Ù.
anim.html
<script>
var
canvas;
var
ctx;
var x
= 10;
var
delta = 1;
window.onload
= function() {
canvas
= document.getElementById("canvas");
if
(canvas == null || canvas.getContext == null) return;
ctx
= canvas.getContext("2d");
setInterval(draw,
30);
}
function
draw() {
ctx.clearRect(0,
0, canvas.width, canvas.height);
ctx.fillRect(x,
10, 20, 20);
if
(x + 20 > canvas.width || x < 0) {
delta
= -delta;
}
x
+= delta;
}
</script>
¾Ö´Ï¸ÞÀÌ¼Ç ´ë»ó º¯¼ö´Â °ªÀ» °è¼Ó À¯ÁöÇØ¾ß ÇϹǷΠÀü¿ªÀ¸·Î ¼±¾ðÇØ¾ß ÇÑ´Ù.
onload¿¡¼ ÃÊ´ç 33¹øÀÇ ¼Óµµ·Î draw ÇÔ¼ö¸¦
ÁÖ±âÀûÀ¸·Î È£ÃâÇÑ´Ù. Àü¿ª º¯¼ö x´Â 10, delta´Â 1·Î ÃʱâÈÇÏ°í
draw ÇÔ¼ö´Â ¸Å ÇÁ·¹ÀÓ¸¶´Ù ÀÌ °ªÀ» ±ÔÄ¢ÀûÀ¸·Î º¯°æÇÏ¿© ¾Ö´Ï¸ÞÀ̼ÇÀ» ¼öÇàÇÑ´Ù.
ÀÌÀü ÇÁ·¹ÀÓÀ» Áö¿ì°í ´Ù½Ã ±×·Á¾ß ÇϹǷΠclearRect¸¦ ¸ÕÀú
È£ÃâÇÑ´Ù. Áö¿ìÁö ¾ÊÀ¸¸é ÀÌÀüÀÇ »ç°¢ÇüÀÌ °è¼Ó ³²¾Æ ÀÖ¾î ¸·´ë ¸ð¾çÀ¸·Î Á¡Á¡ Ä¿Áú °ÍÀÌ´Ù. ȸéÀ» ¿ÏÀüÈ÷ Áö¿ö ÀÌÀü ÀÜ»óÀ» ±ú²ýÇÏ°Ô ºñ¿î ÈÄ »õ·Î¿î x À§Ä¡¿¡
»ç°¢ÇüÀ» ±×¸°´Ù. x¿¡ delta¸¦ ´õÇÏ°í ĵ¹ö½º ÁÂ¿ì º®¿¡
ºÎµúÄ¡¸é deltaÀÇ ºÎÈ£¸¦ º¯°æÇÏ¿© ¹æÇâÀ» ¹Ù²Û´Ù. ¸Å
ÇÁ·¹ÀÓ¸¶´Ù x ÁÂÇ¥°¡ ¹Ù²î¹Ç·Î »ç°¢ÇüÀÌ ¿òÁ÷ÀδÙ.
¿ÞÂʺ®¿¡ ºÎµúÄ£ Á¶°ÇÀº x°¡ À½¼öÀÎÁö¸¦ º¸¸é µÈ´Ù. ¿À¸¥ÂÊ º®¿¡ ºÎµúÄ£ Á¶°ÇÀº »ç°¢ÇüÀÇ ¿ÞÂʺ¯ ÁÂÇ¥°¡ ¾Æ´Ñ ¿À¸¥ÂÊ º¯ÀÇ ÁÂÇ¥¸¦ ºÁ¾ß ÇϹǷΠx¿¡ »ç°¢ÇüÀÇ ÆøÀÎ 20À» ´õÇÑ ÈÄ ÀÌ °ªÀ» ĵ¹ö½ºÀÇ Æø°ú ºñ±³Çؾß
ÇÑ´Ù. ¾î´ÀÂÊÀÌµç ºÎµúÄ¡¸é deltaÀÇ ºÎÈ£°¡ ¹Ù²î¹Ç·Î ¹Ý´ë
¹æÇâÀ¸·Î ¿òÁ÷ÀδÙ. °¡¸¸È÷ ³»¹ö·Á µÖµµ »ç°¢ÇüÀÌ Á¿ì·Î ¿Ô´Ù¸® °¬´Ù¸® ¾î½½··°Å¸± °ÍÀÌ´Ù.
delta¿Í ŸÀÌ¸Ó È£Ãâ ÁÖ±â·Î ¾Ö´Ï¸ÞÀÌ¼Ç ¼Óµµ¸¦ Á¦¾îÇÑ´Ù. delta°ªÀ» Áõ°¡½ÃÅ°¸é »ç°¢ÇüÀÇ À̵¿ ¼Óµµ°¡ »¡¸®°í ŸÀÌ¸Ó È£Ãâ Áֱ⸦ ´Ã¸®¸é ¾Ö´Ï¸ÞÀ̼ÇÀº ´õ ´À·ÁÁø´Ù.
ŸÀ̸ӿ¡¼ draw¸¦ ÁÖ±âÀûÀ¸·Î È£ÃâÇØ¾ß ÇϹǷΠ¿¹Á¦ÀÇ ±¸Á¶°¡ Á¶±Ý
º¹ÀâÇÏ´Ù. À͸í ÇÔ¼ö¸¦ »ç¿ëÇϸé draw ¸Þ¼µå¾È¿¡¼ ¸ðµç
°ÍÀ» ó¸®ÇÒ ¼ö ÀÖÀ¸¹Ç·Î ¿¹Á¦°¡ Á¶±Ý ´õ °£´ÜÇØÁø´Ù. ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºÇصµ °á°ú´Â °°´Ù.
anim2.html
<script>
var
canvas;
var
ctx;
var x
= 10;
var
delta = 1;
window.onload
= function() {
canvas
= document.getElementById("canvas");
if
(canvas == null || canvas.getContext == null) return;
ctx
= canvas.getContext("2d");
draw();
}
function
draw() {
var
x = 10;
var
delta = 1;
setInterval(function()
{
ctx.clearRect(0,
0, canvas.width, canvas.height);
ctx.fillRect(x,
10, 20,20);
if
(x + 20 > canvas.width || x < 0) {
delta
= -delta;
}
x
+= delta;
},
30);
}
</script>
draw ÇÔ¼ö ¾È¿¡¼ À͸í ÇÔ¼ö·Î ŸÀ̸Ӹ¦ ¼³Ä¡ÇÏ°í À͸í ÇÔ¼ö°¡ ÁÖ±âÀûÀ¸·Î
È£ÃâµÇ¾î ¾Ö´Ï¸ÞÀ̼ÇÀ» ó¸®ÇÑ´Ù. ¿ÀÇØÇÏÁö ¸» °ÍÀº ¸ðµç Äڵ尡
draw ÇÔ¼ö¿¡ ÀÛ¼ºµÇ¾î ÀÖÁö¸¸ ±×·¸´Ù°í Çؼ draw ¾È¿¡¼ °è¼Ó ·çÇÁ¸¦ µµ´Â °ÍÀÌ ¾Æ´Ï¶ó´Â
Á¡ÀÌ´Ù. draw´Â ŸÀÌ¸Ó ÇÔ¼ö¸¦ µî·ÏÇÏ°í ¹Ù·Î ¸®ÅÏÇÒ »ÓÀÌ¸ç ¸Å ÇÁ·¹ÀÓ¸¶´Ù À͸í ÇÔ¼ö°¡ È£ÃâµÇ¾î ÁÖ±âÀûÀ¸·Î
±×¸²À» ±×¸°´Ù.
°è¼Ó draw ÇÔ¼ö ¾È¿¡¼ ½ÇÇàµÇ´Â °ÍÀÌ ¾Æ´Ï¶ó ÁÖ±âÀûÀ¸·Î ŸÀ̸Ó
ÇÔ¼ö¸¦ È£ÃâÇϹǷΠÈ帧À» ºí·ÏÇÏÁö ¾ÊÀ¸¸ç »ç¿ëÀÚ ÀԷ¿¡µµ ¹ÝÀÀÇÒ ¼ö ÀÖ´Ù. ÀÌ ¿¹Á¦¿¡¼ drawÀÇ Áö¿ª º¯¼öÀÎ x, delta¸¦ À͸í ÇÔ¼ö¿¡¼ °è¼Ó ÂüÁ¶ÇÒ
¼ö ÀÖ´Â °ÍÀº ½ÇÇà±â°¡ Ŭ·ÎÀú¸¦ À¯ÁöÇÏ°í Àֱ⠶§¹®ÀÌ´Ù. °£´ÜÇÑ ¾Ö´Ï¸ÞÀ̼ÇÀº ÀÌ ¹æ¹ýÀ¸·Îµµ ÀÛ¼ºÇÒ ¼ö
ÀÖÁö¸¸ draw ¾È¿¡¼ ¸ðµç °ÍÀ» ó¸®ÇØ¾ß ÇϹǷΠȮÀ强ÀÌ ¶³¾îÁø´Ù.