ã 
DOMèŠçŽ ã®ãã€ãã£ãJSãšæ¯èŒããŠãCanvasã§ã®ã¢ãã¡ãŒã·ã§ã³ã¢ã«ãŽãªãºã ã®å®è£
ã¯éåžžãäœåãçç£çã§ãã ããã¯ããç¥ãããäºå®ã§ããïŒåŸã§èª¬æããå°æ°ã®ããŒãã£ã¯ã«ã®æ©èœã䜿çšïŒãåŸæ¥ã®ãNGãã劚ãããã®ã®ãã¹ãŠãå®è£
ããæ¹æ³ãèŠã€ããããšãã§ããŸãããåççãªãŠãŒã¶ãŒãéªãéããã«é§åãããŸãã è² è·ã軜ãããããã«ãè¿å¹Žã§ã¯ãæå°éã®éªçïŒ5ã15ïŒã§ãã»ãšãã©ç®ç«ããªãããã«ããµã€ãäžã§éªããçºå°ãããã®ãè¯ããšèããããŠããŸãã 广ããããããã»ããµã«ã»ãšãã©è² è·ãããããŸããã
ãããã£ãŠãå¬ã
NGãŸã§æ°æ¥ã«ãªããŸã§ ããã£ã³ãã¹ã«æé«ã®ã¢ã«ãŽãªãºã ãšDOMã®é¡äŒŒç©ãå®è£
ããããã®ããã«ãœã³ãæé
ããããšãææ¡ããŸããäž»ã«å€ä»£ã®ãã€ãã£ãã¢ã«ãŽãªãºã ãããŒã¹ãšããŠãæå€§ã§jQueryãã©ã°ã€ã³ã§ã©ããããŠæ¥ç¶ããããããŸãã ãããã®ã¢ã«ãŽãªãºã ã®ã»ãšãã©ã¯ãããã»ããµã®è² è·ã忣ããŠããªãããå¹çãæªããããéªçã®æ°ãå°ãªãå Žåã§ããããã»ããµã®è² è·ã¯100ïŒ
ã§ãã
以äžã¯ã¬ãã¥ãŒèšäºã®äŸã§ã ã10ãè¶
ããå®è£
ãèæ
®ãããŠããŸããããã¹ãŠãèªç¶çã«ããããã§ã¯ãããŸããã ããã«ãã¢ã«ãŽãªãºã ã®éçºãšãã®å®è£
ãå¹çããè¡ãããã®åºç€ãåŸãããã«ãããã€ãã®ãæ°ã«å
¥ããæ€èšããŸãïŒå¥ã®5ã6ã®ãªãã·ã§ã³ãååŸããŸãïŒã ããã«åºã¥ããŠããªããžã§ã³ãäœæã§ããŸãã
Githubã«ã¯12ã®ãã¢ïŒä»¥äžã«ãªã³ã¯ãç¹°ãè¿ããŸãïŒãšããã€ãã®ã¢ã«ãŽãªãºã ããããŸãã
ãã€ãã®ããã«ãHabréã®èšäºã®å¯¿åœã¯1.5æ¥ãè¶
ããªããããæå¹ãªåšåº«ãæ°ããããšã¯ã§ããŸããã ããããæ°å¹Žã®åŸãããŸããŸãªå¥è·¡ãèµ·ãããŸãã蚪åè
ã®æµããèœã¡ãã©ã³ãã ãªç人ã5æ¥éã1ã€ã®èšäºãå¿ããªããã£ã³ã¹ãåŸãŸãã 圌ãã¯åœŒãã«è³ããã
å¿åã®ãµã³ã¿ã¯ããŒã¹ã®ã¯ã©ããªã©ã®é·ãããã»ã¹ã«çµã³ä»ããããŠããããéªãéããããã®ãªãã·ã§ã³ãè°è«ããéçºããããã®ãã€ã³ãã£ã³ã°ããã€ã§ãååŸã§ãããšåæã«ãäŒæ¥ã«å¯æ¥ã«çµã³ä»ããããŠããªãæ¹ãè¯ãã§ãã çµæã¯çŸåšããã«ãããŸãïŒ
geekadm.ru /
# /
2015 ããããŠãã¡ãã
46.101.141.171/snow.html?v=4ã®ãããªäžéå®éšããããŸã
-HabraAdmã®éªã«ã¯è¿œå ã®å¹æããããŸãã
äºåçãªãããã«ãœã³ãã¯ã1察ã®åå è
ãšïŒãŸãã¯ïŒã¯ã©ãã®èšªåè
ïŒ1ïŒ ã
ïŒ2ïŒã«ãã£ãŠã¢ã¬ã³ãžãããŸããã ãã®çµæãCanvasã䜿çšãããšã³ãžã³ã§æå€§10åã®ãªãã·ã§ã³ã倿ããŸããã ãããã®æ°ã¯ã¯ããã«å€ããªãå¯èœæ§ããããŸããããã¹ãŠã«èªç±æéãå¿
èŠãªã®ã§ãã¢ã¯ã·ã§ã³ã¯ãªãŒãã³ãªãã®ã«å€ãããŸããã ããšãã°ãPeter Gehrigã«ããéªçã®èœäžã¢ãã«ã2003å¹Žã«æ¢ã«äœæããããšã³ãžã³ã«ããã蟌ããããšãã§ããŸãã 2005-2006å¹Žã®æ¹èšã§ã¯ã20-30æã®éªçãããã»ããµã«ãããã«è² è·ããããïŒ10-20ïŒ
ã黿ºãšãããªã«ãŒãã«äŸåããŸãã以äžãJSã¯ã·ã³ã°ã«ã¹ã¬ããã§ããããã
1ã€ã®ããã»ããµã³ã¢ã®èªã¿èŸŒã¿ã«ã€ããŠèª¬æããŸã ïŒå€ããã©ãŒã©ã ã«ãããšãOpera 9ãIE6ãªã©ã®å€ããã©ãŠã¶ãŒã§ãåæ§ã§ããããããå£ã£ãŠããŸããã åãã¢ã«ãŽãªãºã ã䜿çšããCanvasã§ã¯ã5å以äžã®ãªããžã§ã¯ããå®è¡ã§ããŸãã
ãã¢
æŽå²ãèŠãŠããã®ã³ãŒã¹ãèŠãŠã¿ãŸããã
2002幎ãã2005幎é ãŸã§ãæåããå§ããŸãããã Javascriptã¯ãèœäžããéªçãã¢ãã¡ãŒã·ã§ã³åããèœåã瀺ããŸããã 確ãã«ãããã¯å€æããŸãããåœç¶ã®ããšã§ãããã¹ã¯ãªããäžã®ã¢ãã¡ãŒã·ã§ã³ã¯éçç£çã§ããããããã»ããµã«å€§ããªè² è·ããããŠããŸãã ãã®ãããåœæã¯ãªãœãŒã¹ã倧å¹
ã«ç¯çŽãããããã©ãŠã¶ã¹ããªãŒã ã§æå€§100ïŒ
ãŸã§ããã»ããµãããŒãããå¿
èŠãããïŒ1ã³ã¢ã§ïŒãä»ã®ã¿ãïŒOpera 9ãªã©ã®ãã©ãŠã¶ïŒãšãŠã£ã³ããŠãé
ãããŸããããããŠãããã¯ãã®ãããªããŒãžãžã®èšªåè
ã®ã²ã©ãé ãããdigããåŒãèµ·ãããŸããã
8幎åŸããã®åé¡ã®è§£æ±ºçããã©ãŠã¶ãŒã¬ãã«ã§èŠã€ãããŸããã Chromeããå§ãŸãäž»èŠãªãã©ãŠã¶ã¯ãé衚瀺ã®ã¿ãã§ã¹ã¯ãªããã®å®è¡ãäžæåæ¢ãå§ããŸããã ããã¯ãä»ã®ãŠã£ã³ããŠãããã°ã©ã ã®è¡šç€ºã劚ããªãããã«ããŸããïŒãã ããå¥ã®ãŠã£ã³ããŠã«åãæ¿ããŠãäžæåæ¢ããããŠã£ã³ããŠãç»é¢ã«æç»ãããŠããªãããéšåçã«è¡šç€ºãããŠããå Žåã®ã¿è² è·ã軜æžããŸãïŒã ãã ããã¢ãã€ã«æä»£ã«é¢é£ããŠãã¢ãã¡ãŒã·ã§ã³ãèªã¿èŸŒãã§ããŒãžãéãããšã¯ãŸã ç©æ¥µçã«èªèãããŠããŸããã
ããããé·å¹Žã«ããã£ãŠãããé«åºŠãªã¢ãã¡ãŒã·ã§ã³ã¡ã«ããºã ã§ããCanvasãç»å ŽããŸããã å¥ã®é©æ°çãªã¡ã«ããºã -CSSã®ã¢ãã¡ãŒã·ã§ã³-ã¯è² è·ãç¯çŽããã®ã«åœ¹ç«ã¡ãŸããããŸããJavascript + DOMã®ã¢ãã¡ãŒã·ã§ã³ãšãŸã£ããåãããã«ããã»ããµã®ãšãã«ã®ãŒãæ¶è²»ããŸãã ã€ãŸããæé©ãªãœãªã¥ãŒã·ã§ã³ãæ¢ãå Žåã¯ãCanvasã§è¡ãå¿
èŠããããŸãã
äŸã§ãããããã«ãCanvasã§ã¯ãå¹³åçãªãã¹ã¯ãããã³ã³ãã¥ãŒã¿ãŒãŸãã¯ã©ãããããã§ã30ã40ïŒ
ã®è² è·ã§100åã®éªçãèµ·åã§ããŸãã ããã¯ãæé©åãããJS + DOMã¢ã«ãŽãªãºã ãå®è¡ã§ãããããçŽ5åå¹ççã§ãã
æŽå²ãžã®ãªããŒãžã¥ãšããŠãæé©åãšCanvasãžã®å€æãåŸ
ã£ãŠãããå€å
žçãªãã¢ã«ãŽãªãºã ãæ€èšããŸãã
ãsnowfall jsãããsnow flakes jsããªã©ã®åèªãGithubã§æ€çŽ¢ãããšãå€ãã®ã¢ã«ãŽãªãºã ãç°¡åã«èŠã€ããããšãã§ããŸãã ãããã¯ã
äžèšã®ãã¢ãªã³ã¯ ïŒãŸãã¯
æ¡åŒµã³ã㌠ïŒã§
12ã®ã¹ã¯ãªããã®é©åãªéžæãè£å®
ããŸã ã
ã¢ã«ãŽãªãºã ã®æŠèŠãšäŸ
ïŒäŸãå«ãããŒãžã衚瀺ãããšãã¯ãããã»ããµã³ã¢ã®100ïŒ
ã®èªã¿èŸŒã¿ã«åããŠãã ãããèšäºã«ãªã³ã¯ã衚瀺ãããšãã¯ãèªã¿èŸŒã¿ã¬ãã«ãèŠåãããŸããïŒå€ãã®ã¢ã«ãŽãªãºã ã¯ãå¹çãæªãããšã«å ããŠãéªçã®å®éã®åäœãšåäœã䌌ãŠããŸããã ãããããå€ãã®äººã¯ãæ£åŒŠæ³¢äžã®éªçã®åãã®çŸå®ã®å°è±¡çãªäžäžèŽãèŠããŠããŸãã äžåºŠïŒãŸãã¯
ããæ°ãã ïŒ
èŠããããšãåŠå®çãªäŸãšããŠé·ãéèšæ¶ãããŠããŸãã ãããã£ãŠãã¢ã«ãŽãªãºã ã®ã¿ã¹ã¯ã¯å¹æçã§ããã ãã§ãªããçŸå®ãåæ ããããšã§ããããŸãã ïŒå¹çã®èгç¹ããã調å颿°ã®èšç®ã倱ãããã¯ãã§ããïŒ
以åã«ã¬ãã¥ãŒããã¢ã«ãŽãªãºã ã®ãã¡ã2ã€ã¯çŸå®ã«æãè¿ããšèããããšãã§ããŸã-ã©ã³ãã ãªåãïŒåº§æšã§ã¯ãªãé床ãå€ããå¿
èŠããããŸãïŒãšåè¿°ã®Peter Gehrigã¢ã«ãŽãªãºã ïŒ2003ïŒã§ã¯ãåãã¯4ã€ã®å€æ°ã«ãã£ãŠå¶åŸ¡ããããã®ãã¡ã®1ã€ã¯èª¿åçã«å€åãã ãããããã®åšæçãªåœ±é¿ã ãã ãããã®æ©äŒã«ãæ°ããå®è£
ãè°è«ããŠè²¯éç®±ã«è¿œå ã§ããŸãã
èŠã€ãã£ãP. Gehrigã¢ã«ãŽãªãºã ã®å®è£
ãããäŸã®ããããŒãžãèŠã€ãããŸããïŒ
www.softtime.ru/javascript/snow-falling.html ã äœã屿©ã«atããŠããã®ãã¯æããã§ãã å°æ°ã®éªçïŒ15-20ïŒãããã»ããµãŒãããŸãããŒãããŸããïŒåŒ±ãããŒãããœã³ã³ã§ã¯10-20ïŒ
ïŒãChromeããã³Firefoxã§åäœããŸãããOpera 9ãIE5ããã³6ãããã³åæã®Firefoxã®äžéšã¯ãµããŒããªã¹ãã«èšèŒãããŠããŸãã ãã¡ããã圌ãã¯Canvasãç¥ããŸããã§ããã
ç§ãã¡ãèŠããã®ãããŒãã«ã«æã£ãŠè¡ããŸãããã
*ïŒç²åã®æ°ã
*ïŒã¢ãã¡ãŒã·ã§ã³ã®ã¿ã€ãã
*ïŒå®éšçšã®ãµã³ãããã¯ã¹ã®ååšã
*ïŒCPUè² è·ïŒMacBookãFirefox 43ïŒïŒChromeã¯éåžž10ïŒ
å¹ççã§ãïŒ;
*ïŒæ©èœã«é¢ããã³ã¡ã³ãã
ïŒå®éã®ããã»ããµããŒãããŒã¿ã¯ãããŸããŸãªã³ã³ãã¥ãŒã¿ãããŸããŸãªã°ã©ãã£ãã¯ã«ãŒããæèŒããã³ã³ãã¥ãŒã¿ãããã³åºç¯å²ã«ãããã¢ãã€ã«ããã€ã¹ã«å¯ŸããŠç€ºããããã®ãšã¯ç°ãªããŸãããããã¯ãã°ã©ãã£ãã¯ã¹ãçµ±åãããäžé»åã©ãããããã®åãã瀺ããŠããŸããïŒ
Canvasã䜿çšããŠã¹ã¯ãªãããç°¡åã«èŠãŠã¿ãŸãããã
çŽç²ã§ã¯ãªãjs | ãã¢ïŒ400x400ã éªãéãéªã ã㟠|
---|
ãã¢ããšã®ããŒãã£ã¯ã«ïŒ 100 | |
ã¿ã€ãïŒãã£ã³ãã¹ |
ãµã³ãããã¯ã¹- ã¯ã |
è² è·ïŒ 70ïŒ
|
ã³ãŒãè¡ïŒ 106 + ProcessingJSïŒ800KïŒ |
ããã¯ãRapierã®ãããªèšèªãäœæãã800Kã®éå§çž®ã³ãŒãã®ProcessingJSç°å¢ã§æç»ãããŸãã éªã ããŸã¯åãã³ãŒãã§æãããŠããŸãã äŸã¯ç¹å¥ãªãã®ã§ãã ïŒè€éãªæ¹æ³ã§åçŽãªåé¡ã解決ããããã«ïŒã·ã§ã«ã§äœã§ãã§ããããšã瀺ããŠããŸãããã®å Žåã§ããCanvasã¯å£æ»
çã«DOMãœãªã¥ãŒã·ã§ã³ã«è² ããŠããŸããã |
èšäºïŒenïŒ ã2012 | ã³ãŒãïŒ Github | ãã¢ïŒ å
šç»é¢ |
---|
ãã¢ããšã®ããŒãã£ã¯ã«ïŒ 500 | |
ã¿ã€ãïŒãã£ã³ãã¹ |
ãµã³ãããã¯ã¹ïŒ ãã |
è² è·ïŒ 100ïŒ
|
ã³ãŒãè¡ïŒ* .html + ThreeCanvasJSã®50 + 100ïŒ72KïŒ |
ThreeCanvas.jsã©ã€ãã©ãªããã®72Kå§çž®ã¢ã³ããã¯ã³ãŒãã ããŠã¹ã®åããå転ãã3Dã·ãŒã³ã ããã§ã¯ãã¹ã ãŒãºãªåãã®ããã«äœãããã¬ãŒããèšå®ãããŠããããããã¹ãŠãçŸããã§ãããããã¯ã°ã©ãŠã³ãã¢ã¯ã·ã§ã³ãšããŠã¯ããŸãé©åã§ã¯ãããŸããã |
幎ïŒ2010 | ã³ãŒãïŒ JS | ãã¢ãšèª¬æïŒ å
šç»é¢ |
---|
ãã¢ãããã®ããŒãã£ã¯ã«ïŒ 60 ãç»åã®å¹³é¢å
ã§ã¹ãã³ | |
ã¿ã€ãïŒãã£ã³ãã¹ |
ãµã³ãããã¯ã¹ïŒ ãã |
è² è·ïŒ 100ïŒ
|
ã³ãŒãè¡ïŒ 160 |
éåžžã«é »ç¹ãªã¢ãã¡ãŒã·ã§ã³ã§ã¯ãCanvasã®å©ç¹ãçè§£ã§ããŸããã æãããéªçã¯ãã®è»žãäžå¿ã«å転ããŠãããããŸããããšã®ãããã£ãããšããèœäžã§ãã ãããããããã®ããã€ãã¯æ£åŒŠæ³¢ã«æ²¿ã£ãŠãæ©ãããŸãã1ã€ã®å¹³é¢ã®ãããã¯ãŸã£ãããªã¢ãªãºã ãäžããŸãããå察ã«ã广ã®ç¥èŠãæåŠãããããéèŠãªå¹æãäœæããŸãã ã³ãŒã-ããã©ãããããã®åãšã³ã³ãã¯ããã瀺ããŠããŸãã èŠããã«ãåªããåªåã¯ãæ¶è²»è
ã«å¯Ÿãã广ãšã¯ãããã«ç°ãªã广ãéæããããšãç®çãšããŠããŸã-DOMäžã®ãšãã«ã®ãŒæ¶è²»ãšã³ãžã³ãããåªããŠããŸããã |
Canvasãªãã§DOMïŒã¬ã€ã€ãŒïŒã§åäœããã¹ã¯ãªããã®äŸãèŠãŠã¿ãŸãããã
|
幎ïŒ2009 | ãã¢ïŒ jSnow-jQuery Snow Effect ããã«ã¹ã¯ãªãŒã³ | ã³ãŒãïŒ JS ïŒéå§çž®ã®ã¬ã¬ã·ãŒïŒ |
---|
ãã¢ããšã®ããŒãã£ã¯ã«ïŒ 25 | |
ã¿ã€ãïŒDOM |
ãµã³ãããã¯ã¹ïŒ ãã |
è² è·ïŒ 70ïŒ
|
ã³ãŒãè¡ïŒ 160 + jQuery |
Fiddleãµã³ãããã¯ã¹ã®ãªãã·ã§ã³ïŒã©ãã§ãã·ã³ããªãã¯ã¹ããŒãã¬ãŒã¯ã䜿çšãããŸãïŒïŒ
|
ãã®ã¹ã¯ãªããã«ã¯ãç²åã®åãã®ç¹åŸŽçãªææžãæåããããŸãïŒåŽé¢ã«åŒ·ãïŒã ããèŠããšããããã¯éåžžã«å€§ããªæ£åŒŠæ³¢ã§ãããçªã®äžå€®ã«ãã倧ããªæžŠå·»ãã®ããã«èŠããŸãã 圌ã¯è³æºã®æµªè²»ã«éåžžã«ææãããŠããŸãã ãœãŒã¹ã³ãŒãããŒãžã§ã³1.2-ããã«ãŒã«ãã£ãŠçŽå€±ãŸãã¯åžžã«é£èªåãããã ã¢ã³ããã¯ãããããŒãžã§ã³1.1.mod2ïŒä»ã®äœæè
ã«ãã£ãŠå€æŽãããïŒ-Codepenãµã³ãããã¯ã¹ã«ãããŸããããã£ã³ã»ã«ããã$ .browserãåç
§ãããããæ°ããjQueryã§ã¯æ©ââèœããŸããã ãããŠã圌ãã¯é梱ã®å
åã瀺ããŠããŸãã æ£åŒŠæ³¢ãèŠèœãšãæéããªããšãã«ãäœãããããŒïŒ äŸ ïŒã§èŠæ ããããŸãã æ°åã®äŸã®ãã¡ã2ã€ïŒå®è¡ãšã³ãŒãïŒã詳ããèŠããšããã®äŸããã®1ã€ã§ãã ãã®ããããµã³ãããã¯ã¹ã§jSnowããŒãžã§ã³ãå®è¡ããŠåŸ¹åºçã«åãäžããŸãã
|
è峿·±ãããšã«ãäœæè
ã®ããã±ãŒãžããŒãžã§ã³1.1ãŸãã¯1.2ã¯ã¯ããã«é«éã§ãïŒåãå€éšèšå®ã§
ããã»ããµã«
ããŒããããã®ã¯40ïŒ
ã§ã
1.1.mod2ã¯55ïŒ
ã§ãïŒã ïŒãã«ããŠã£ã³ããŠã¢ãŒãã§ã¯ãã£ãã«ãé«éã«åäœããŸãããïŒãããããäžå¿
èŠãªãã§ãã¯ã¯ã¹ããŒãã¬ãŒã¯ã¬ã³ããªã³ã°ãµã€ã¯ã«ã«åœ±é¿ãäžããŸãïŒãæ©èœããmodã«è¿œå ãããŸããïŒã ã³ãŒãèªäœã¯ããŸãæé©åãããŠããŸãã-ã«ãŒã«ã§èšå®ã§ããã€ã³ã©ã€ã³ã¹ã¿ã€ã«ãèšè¿°ããŸãã
ãã®åŸãããè峿·±ããã®ã«ãªããŸãã-ãã¹ããããèšå®ã§ã³ãŒãå
ã«å€æ°ã®ãã°ãèŠã€ãããŸããïŒããã¯ãå
šå¡ãèŠã€ãã£ããšããæå³ã§ã¯ãããŸããïŒã ã³ãŒãã«ããã€ãã®å€æŽãå ããå¿
èŠããããŸãïŒjQ 2+ãšã®éäºææ§ãåé€ããã¹ããŒãã¬ãŒã¯ã®åæäœçœ®ãèšç®ãããŠã£ã³ããŠã®å·Šç«¯ãè¶
ããªãããã«ããŸã-ãããŒã§ã¯ãã¹ã¯ããŒã«ããŒã®ãç¹æ»
ãã«ã€ãªãããäžã®å¢çç·ã§ãåãããšãè¡ããšäŸ¿å©ã§ãïŒãããæ¹è¯ãããææ°ããŒãžã§ã³ã䜿çšããŠãã ããã
Mods-versionsïŒ2009-2010ïŒã¯ããã€ãã®ç·æ¥ã®ãæ©èœãã远å ããŸãã-éªçã®ã¹ã ãŒãºãªæ¶å€±ã®èšå®ïŒfadeAwayïŒ1ïŒããã³éªçã®ãã£ãŒã«ããç§»åããã«ã¹ã¯ããŒã«ããæ©èœïŒfollowScrollïŒ1ïŒã éçºè
ãåŒãã ããã«ãååã¯å
ã®ãŸãŸã§ãã
å€ãã³ãŒãããããã°ããç®çã¯ãã¢ã«ãŽãªãºã ãCanvasã«è»¢éããéåºŠãæ¯èŒããããšã§ãã
ïŒåã€ããã®é害-ååãªåèªã§ã¯ãããŸãããïŒèšå®ã§ã¯ãä»ã®äººãæ¹å€ããã®ãšåãééããç¹°ãè¿ããŸãã éçºè
ã«ãšã£ãŠã¯ã2Dã§éããã«ãã«ã©ãŒã®éªãçºçããªãããšã¯éèŠã§ã¯ãããŸãããäž»ãªããšã¯ãã«ã©ãŒåããæè¡çãªå¯èœæ§ãããããšã§ãã ããã§ããéªçãé£ã¶ã®ã§ã¯ãªããçŸå®ã«ã¯å¡ããããŸãã ããããå°çã®äººå£ã®3/4ããããç¥ããªããããæåãåŸ
ã£ãŠããŸã...éªçã®ã»ããã§ã¯ãéªçã«äŒŒãã»ãšãã©ã®Unicodeæåã䜿çšãããŸããã
ãã®ãããæ©èœã倱ããã¹ãããã¹ã¿ãŒããã¿ã³ã远å ããããšãªããæé«ã®MODããã20è¡çãïŒ90è¡ïŒãããã¯åœ¢åŒã§30ïŒ
å°ãªãïŒ1.5KïŒèªã¿ãããã³ãŒãã倿ããŸããã ãã®äžéããŒãžã§ã³ã¯ã³ã³ãã¯ãã§ããã以åãšåæ§ã«ãŠã£ã³ããŠã§æ©èœãããã©ã¡ãŒã¿ãŒã§é«ãïŒé«ãïŒæ°å€ïŒã絶察ã«èšå®ã§ããŸãã ç¹ã«ãã©ã°ã€ã³ã¯ã³ã³ããã¹ãã³ã¬ã¯ã·ã§ã³ããŸã£ãã䜿çšããªããããããã¯ããŸã䟿å©ã§ã¯ãããŸããããããã£ãŠã$ïŒïŒã®å¥åŠãªå€èгã§åé¡ãããŸãããJSnowïŒ...ïŒãã€ãŸã ã³ã³ããã¹ããªãã ç°¡åã«ããããŸãããã
ããã§ã¯ãã¢ãžã®ãªã³ã¯ã«éå®ããŸã ã
ãããŠãã¿ã¹ã¯ãè€éã«ããŸã-jQueryã³ã³ããã¹ãã³ã¬ã¯ã·ã§ã³ã®äœ¿çšãéå§ããŸãã ã³ã³ããã¹ãããªãå Žåããã®åäœãä¿æããŸã-ãŠã£ã³ããŠãš$ïŒ 'body'ïŒã®ã³ã³ããã¹ãã®ããã«ããŠã£ã³ããŠã§ã®äœæ¥ãéžæããã³ã³ãããŒãããã¯ã§ã®äœæ¥ã远å ããŸãïŒããšãã°ã$ïŒ 'ãContSnow'ïŒã§å®è¡ããŸãã ãïŒïŒã ã³ã³ãããæºåããå¿
èŠããããŸãã絶察äœçœ®ã®æ¿å
¥ããããããã¯ãå¿å°ããããã«ãäœçœ®ïŒçžå¯Ÿãå¿
èŠã§ãã ãŠã£ã³ããŠå
šäœã§ç°ãªãåäœããããããã¯ã¯ãŠã£ã³ããŠãã«ããŒããããããã®ãããªãããã¯ãããå Žåã¯ãã¹ãŠã®ããŒãžã³ã³ãã³ããäžããå¿
èŠããããŸãã ïŒãã以å€ã®å Žåã¯ä»¥åãšåæ§ã«å¯èœã§ããããªãè€éãªã®ã§ããããïŒããããæåã®ã¹ã¯ãªãããŸãã¯2çªç®ã®ã¹ã¯ãªããã®ããããã䜿çšããŸããïŒæ¬¡ã®ãããªçµæã«ãªããŸãã

ã㢠ïŒã¬ããžããªå
ã®ã³ãŒãïŒ ããã¯DOMã§ããè² è·ã¯ã¹ããªãŒã ããã30ïŒ
ïŒ15ïŒ
-åèšïŒã§ããããã¬ãŒãã¯12ã§ãã
åçã倧ããéæã§ãããšããäºå®ã«ããçšåºŠåœ±é¿ãåããŠããŸããå®éãjQueryãã³ã¬ã¯ã·ã§ã³ãæäŸã§ããã®ã«ããªã1ã€ã®ã³ã³ãããŒã ãã§åäœããã®ã§ããïŒ 70-120åã®ããŒãã£ã¯ã«ã«å¯ŸããŠ30-50ïŒ
ã®è² è·ã
ãããããšã倿ããŸããã ã¹ãããã¹ã¿ãŒãã¯ããã¿ã³ã«åå²ããããå
±æããããšãã§ããŸãã
æžããããã®ãé©çšããããšãããšãããã«ã³ã¬ã¯ã·ã§ã³ã§ã¹ã¯ãªãããå®è¡ããããšã®éå®çšæ§ã«ç®ããããŸãã å®è¡-ã¯ããæ°ååã®ã¹ã¯ãªããã®ã€ã³ã¹ã¿ã³ã¹ã§ãããéªçã®ããããã«é
åžã§ããŸãã ãã ããåããã©ã¡ãŒã¿ãŒãã³ã¬ã¯ã·ã§ã³ã®ãã¹ãŠã®ãããã¯ã«å ±åãããŸãããããã¯å®çšçã§ã¯ãããŸããã ããå€ãã®å Žåãå¥ã®ã¿ã¹ã¯ãå®è¡ããå¿
èŠããããŸã-ããã€ãã®ãŠã£ã³ããŠïŒä»®æ³ããã£ãŒãïŒãèµ·åããŸãããç°ãªããã©ã¡ãŒã¿ãŒã䜿çšããããã1ã€ã®èŠçŽ ã«ããããäŒããå¿
èŠããããŸãã ã»ãšãã©ã®å Žåãå€ãã®èŠçŽ ãéåžžã«å€ãã®.jSnowèµ·åãå¿
èŠã§ããããšã倿ããŸãã
CSSã«ãŒã«ãèšè¿°ããããšãšé¡äŒŒããŠããŸãã ã«ãŒã«ã¯ããã©ã°ã€ã³ãå®è¡ãããšãã«è¡ããã©ã¡ãŒã¿ãŒã®å®£èšãšåãã§ãããã©ã°ã€ã³ã®ã»ã¬ã¯ã¿ãŒãé
眮ãããŸãã ããããçŸåšãã¡ã«ããºã ãã«ãŒã«ã®èšè¿°ãåŸã
ã«èç©ããæ¹æ³ã¯ãããŸããïŒäžæ¹ã®ãã©ã³ããµã€ãºãšä»æ¹ã®ãã©ã³ããµã€ãºã«äŒŒãŠããŸãïŒã åãèŠçŽ ã§ãã©ã°ã€ã³ã2åèµ·åãããšããã©ã°ã€ã³ã®å¥ã®ã€ã³ã¹ã¿ã³ã¹ïŒã¯ããŒãžã£ãŒãšã·ã£ããããŠã³æ©èœãåããé·æéå®è¡æ©èœïŒã远å ãããæ¢ã«å®è¡äžã®ãã©ã°ã€ã³ã«ã¯ããããã£ã远å ãããŸããã ãã®å ŽåãJSONèšå®ã§ã¯ãªããã»ã¬ã¯ã¿ãŒïŒã¯ã©ã¹ãæã€æååã®ã¿ïŒããªã¹ãããæ¹ã䟿å©ã§ãã ããããèšå®ãäœæãããã®ãããªæ¹æ³ãå¿
èŠã§ãããæ©èœããåäžã®ãã©ã°ã€ã³ãæãåºããŸããã ãã¢ã®æãé«åºŠãªããŒãžã§ã³ã§ã¯ããã©ã°ã€ã³ãã§ããããã«4ã€ã®é åã§èµ·åãäœæããŸãã

demo ã ïŒã¬ãã®ç«ïŒ ã75åã®ããŒãã£ã¯ã«ãš12 FPSã§50ïŒ
ãèªã¿èŸŒã¿ãŸãããã©ã°ã€ã³ã®æ¹åã«ããçŽ300ãã€ãã®å§çž®ã³ãŒãã远å ãããŸããããä»ã§ã¯ããå€ãã®çç±ã§ãã©ã°ã€ã³ãšåŒã¶ããšãã§ããŸãã 確ãã«ã1ã€ã®ã¡ãœããã¯ãããŸããã
DOMãæäœããããã®ãã®ä»ã®ã¹ã¯ãªãã
ãã®ãããªæ³šæã¯ãæãé«åºŠãªã¹ã¯ãªããã§ã¯ãªãã1ã€ã®ã¹ã¯ãªããã«åããããŠããŸããå
ãèŠããšãããã¯Canvasã¹ã¯ãªããã®å°ãã®ç«¶äºçžæã§ããããšãããããŸãã 广çã«æžãããŠããªããã®ã¯ç«¶åä»ç€Ÿã«ã¯ãªããŸããããããã£ãŠãã³ãŒãã«äœåãªãã®ãèš±å¯ããããšã¯ã§ããªããããæ¯èŒå¯Ÿè±¡ããããŸãã
ããšãã°ã
Snowstormãšããéåžžã«äººæ°ã®ããDOMã¹ã¯ãªãããããã20Kã®å§çž®ã³ãŒããéåžžã«å€æ°ã®èšå®ãã¢ãã€ã«ããã€ã¹ã§ã®ç¡å¹åãªã©ããããŸããå°ããªã¹ã¯ãªããã«ã€ããŠåŠã¶ã¹ãããšããããŸãã ããããäœèšãªãã®ãšãããæå€±ã«ã€ãªãããã©ãããç ç©¶ããããšã¯ãé£ããäœæ¥ã§ãã ç°¡åã«æžããŠèšå®ãæ¡åŒµããŸãã ããããã®éèŠæ§ã¯ããã¹ããšå®è·µãéããŠæããã«ãããŸãã
ããã«å¥ã®å°ããªã¹ã¯ãªãããèŠãŠãããŸããããããã¯ãé©åã«èšèšããããã¢ããµã³ãããã¯ã¹ã«ã¯èŠãããŸããã§ããããè峿·±ãåäœããããŸãïŒäžèšã®P. Gehrigã«ããïŒã ãµã³ãããã¯ã¹ã«çœ®ãã®ã«å€§ããªå°é£ã¯ãããŸãããæ¹åã®å¿
èŠã¯ãããŸãããjQueryã¯ããã䜿çšããŸããããçŸä»£ã®doctypeã«æ
£ããã«ã¯æéãããããŸããã ãŸããã·ã¹ãã ãã©ã³ãã®ç¹æ®ãªUnicodeæåã§ã¯ä»¥åã¯åé¡ããããŸããããä»ã§ã¯æ¹åãããŠãããããèœäžããæåã¯èœäžããããã¹ãïŒåŒ·èª¿è¡šç€ºãããïŒéªçã«çœ®ãæããããŸãã
幎ïŒ2005幎ã èšå® ã ã³ãŒã ã jsFiddleã§ éªã éã |
ãã¢ããšã®ããŒãã£ã¯ã«ïŒ 25 |  |
ã¿ã€ãïŒ DOM |
ãµã³ãããã¯ã¹ïŒ ã¯ã |
è² è·ïŒ 10ïŒ
ïŒ8 FPSã«ããïŒ |
ã³ãŒãè¡ïŒ 90 |
å
ã®ã¹ã¯ãªããèšå®ã§ã®ãã®ãããªå°ããªã·ã¹ãã è² è·ã¯ãFPSã»ãããäœãããã«çºçããŸãã ãã¡ãããããã¯é »ç¹ãªã¹ã©ã€ãã·ã§ãŒãšããŠã®åãã§é¡èã§ãã ããã¯å€ããã©ãŠã¶ã«å¿
èŠã§ãããå€ãã¹ã¯ãªããã®ã³ã¡ã³ãã§èŠåãããŠããŸãã 30 FPSã§ã¯ãè² è·ã¯35ïŒ
ã§ãåãèšå®ã®ä»¥åã®ã¹ã¯ãªãããšã»ãŒåãã§ãã
ãã®ã¹ã¯ãªããã«ã¯ããã©ãŠã³éåã远å ããç»é¢ã®ãé æ¹ãããã®èœäžãå¢å ããã³ãèè§£ãïŒéæåºŠã®å¢å ïŒä»è¿ãŸãã¯äžãžã®å€æŽãå ããããŠããŸãã
|
幎ïŒ2006幎ã èšå®ã§ãé ããããèœã¡ãŠããéª ã jsFiddle |
ãã¢ããšã®ããŒãã£ã¯ã«ïŒ 25 |  ïŒãã«ã¹ã¯ãªãŒã³ã§èŠãïŒ |
ã¿ã€ãïŒ DOM |
ãµã³ãããã¯ã¹ïŒ ã¯ã |
jsFiddleã«ããŠã³ããŒãïŒ 60ïŒ
ïŒ16 FPSïŒ |
ã³ãŒãã®è¡ïŒ 100 |
ããã§ã¯ããµã€ãºèšå®ã¯éåžžã«ãæ°ãŸãããã§ã-æé·çã®ããããªå€æŽã§ã巚倧ãªéªçãååŸããããæé·ããªãããšãã§ããŸãããããã£ãŠãä»ã®è¡åã·ããªãªãéžæããå¿
èŠããããå¹æã¯æçµçã«ãŠã£ã³ããŠã®ãµã€ãºãšè¡åã«äŸåããŸãïŒèªå調æŽã§ã¯ãããŸããïŒã è² è·ã®é¡èãªå¢å ã¯ã倧ããªéæãªæåïŒç»åïŒã®ã¬ã³ããªã³ã°ã«é¢é£ããŠããŸãã ïŒãœãŒã¹ã³ãŒãã¯å³å¯ã«èšè¿°ãããŠãããããéåŒãåŸã®å®éã®ã³ãŒãéã¯2åã«ãªããŸããïŒ
|
Githubã§ãã¹ãŠã®ã³ãŒããªãã·ã§ã³ãsnowã§æžããŸãããã ãã¢ããŒãžãäœæããªãã£ãåä»»è
ã®æ¬ é¥ãèæ
®ã«å
¥ãããããã³ãŒããèŠã人ã¯ã¯ããã«å°ãªããªããŸãã Githubã䜿çšãããšãgh-pagesãã©ã³ãã§äœæ¥ããå Žåã«ãã¢ãéåžžã«ç°¡åã«å®è¡ã§ããŸãã ããã§ããã¹ãŠã®ããŒãžã§ã³å€æŽã倿Žå±¥æŽã«ç°¡åã«èšé²ãããéããèŠãããŸãã GithubïŒ
github.com/spmbt/snowfallsCSSã¢ãã¡ãŒã·ã§ã³ã¯ã©ãã§ããïŒ
ããã«ã广çãªã¢ã«ãŽãªãºã ãšçŽ æŽãããçµæãæ±ããŠãä»ã®äººãæžããäŸãèŠãŠãããŸãã
1. DOMã¹ããŒãã¬ãŒã¯ã®å転ã䌎ãCSS3ã®è² è·ã®é«ã
ã¢ãã¡ãŒã·ã§ã³ã®äŸïŒã»ãŒ
å¯äžã®CSSã¢ãã¡ãŒã·ã§ã³ ïŒ
-www.jqueryscript.net/animation/jQuery-Plugin-For-Snowfall-Effect-with-Rotating-Snowflakes.html ïŒãã®ãµã€ãã«ã¯ãã¹ã¯ãªããããšã®èª¬æãã³ãŒãããã¢ããããŸããããµã³ãããã¯ã¹ã¯ãããŸãããïŒ
2. CSSïŒCodepenïŒã®
3ã€ã®ç»åã¬ã€ã€ãŒã®ã¢ãã¡ãŒã·ã§ã³ã
ã·ã¹ãã ã«ããŸãè² è·ããããªãã¹ã¯ãªãããèŠã€ããããã«ããã£ã³ãã¹äžã§ããå€ãã®ã¢ãã¡ãŒã·ã§ã³ãèŠãããã«ããŸãã
ããŠã¹ã®åãã«ãã£ãŠã¢ã¯ãã£ãã«ãããCanvasã®ã¢ãã¡ãŒã·ã§ã³ã®äŸã§ã¯ã蚱容ã§ããéªçã®æ°ã¯ãç»é¢äžã§çŽ200-300ããã®é£ç¶çæã§ã¯ãªããçŽ50-100ã§ããããšã
ããããŸã
-www.jqueryscript.net/animation/Yet-Another-Falling- Snow-Animation-with-jQuery-Canvas-GlauserChristmas.htmlã©ã€ãã©ãªã®ãªãCanvasã®å¥ã®ã¢ãã¡ãŒã·ã§ã³ãäžåœèªã®ãã¢ãšã³ã¡ã³ãïŒ
www.jqueryscript.net/animation/Nice-Snow-Falling-Effect-with-jQuery-Canvas-Nice-Snowing.htmläœããã®çç±ã§ãCanvasãå«ãããããã¹ãŠã®ã¢ãã¡ãŒã·ã§ã³ã¯ãããã»ããµïŒããæ£ç¢ºã«ã¯ãã·ã³ã°ã«ã¹ã¬ããJSãããŒãã§ãã1ã€ã®ã³ã¢ïŒãããŒãããããã«èšå®ãããŠããŸãã ããã¯ãã¹ã¯ãªããã®ãã¢ã§ã¯æ£åžžãšèŠãªãããããã§ãã
ïŒãããããããã¯åå¥ã®ã°ã©ãã£ãã¯ã¹ã«ãŒãã§åœãŠã¯ãŸããŸããïŒã©ããããããããã¯ãã¹ãŠå¥åŠã§ã
snowã䜿çšããã¹ã¯ãªããã®äžã§ãCPUã»ãŒããŒã¯ã»ãšãã©ãããŸããããDOMãšCanvasã®äž¡æ¹ã§äœ¿çšã§ããŸãã 100åã§ã¯ãªããæ°ååã®éªçã§ãåãå
šè² è·å¹æãåŸãããããšã瀺ããŠããŸãã200-400åã®å Žåãéåžžã®ã«ãŒãã«è² è·ã10-20ïŒ
èæ
®ããããšããå§ãããŸãã
广çãªãã£ã³ãã¹ã®éžæ
ãã ããã¯ãªãŒã³ãªCanvasã«ã¯çµæžçãªã¹ã¯ãªããã1ã€ãããŸããã ã»ãŒåœŒã®ã¹ã¿ã€ã«ã§äŸãè¡ããŸãã
幎ïŒ2015 | ãã¢ïŒ HTML5 CanvasãšJavascriptã䜿çšããéªå¹æ ããã«ã¹ã¯ãªãŒã³ | jsFiddleã«ã³ããŒãã |
---|
ãã¢ããšã®ããŒãã£ã¯ã«ïŒ 25 | |
ã¿ã€ãïŒ ãã£ã³ãã¹ |
ãµã³ãããã¯ã¹- ã¯ã |
è² è·ïŒ 45ïŒ
|
ã³ãŒãè¡ïŒ 90 |
ãã®äŸã¯ãäžèšã®äŸã®ããã«ããã以äžäœãããªããã¹ãŠã®ã³ãŒããå¶åŸ¡ããå Žåãæåã¯è¿ãããšã瀺ããŠããŸãã 200åã®ããŒãã£ã¯ã«ïŒChromeå
ïŒã§ãè² è·ã¯45ïŒ
ïŒ2ã€ãŸãã¯3ã€ã®ããã»ã¹-Chromeãš2ã€ã®Chromeãã«ããŒãç£èŠããå¿
èŠããããŸãïŒã2000幎ã§ã¯60ïŒ
ã§ããFirefoxã®å Žå-ã»ãŒåãã§ããã10ïŒ
é
ãïŒè¯ãæ¡ä»¶äžïŒããã©ã³ãã ãªæå¶å åã |
ãããããã£ã³ãã¹ã¯è»œè² è·ã§ã¯åé¡ããããŸãã å€ãã®å Žåã2ã€ã®ããŒãã£ã¯ã«ã§ã®è² è·ã¯40ã60ïŒ
ã§ã25ã®å Žåãšåãã§ãããå®è¡ãããŠããªãsetIntervalïŒïŒã®å Žåã¯0ã§ãã ãã©ãããäœæãããšããã»ããµãŒãããŒãããïŒ30 FPS-30ã®å²åïŒããã©ããã®éã¯ããã»ã©éèŠã§ã¯ãããŸããã æããã«ããããªã«ãŒãã®åè³ªãæªããšãçµæã¯æªåããã©ããã§æ¹åãèŠãããªããªããŸããCanvasãããå Žåã¯åžžã«é床ãäœäžãå§ããFPSãäžããããšã«ãã£ãŠã®ã¿ä¿®æ£ãè¡ãããšãã§ããŸãã
ãã詳现ã«ã¯ãçµæã¯æ¬¡ã®ãšããã§ãã çµæãžã®åœ±é¿ãå°ãªãjsFiddle
ã䜿çšã ã忢ãã¿ã³ã
远å ããŠãµã³ãã«ãã³ããŒããŸãã ããã»ããµã®è²»çšãèœã¡çããŸã§ïŒããŠã¹ãåãããã«ãäœãããã«ïŒå¥ã®æ°ã®éªçãéå§ãã1åã»ã©åŸ
ã¡ãŸãã ã¢ã¯ãã£ããã£ã¢ãã¿ãŒïŒIntel HD Graphics 5000ãããªãæèŒããMacBookïŒã§çµæã確èªããŸãã ããšãã°ã4ã³ã¢ããã»ããµã§WindowsãèŠããšã25ïŒ
ãè¶
ããè² è·ã¯ãããŸããã èšäºã§ããã§
èšåãããŠãã
100ïŒ
ã¯ãã·ã³ã°ã«ã³ã¢ã®èªã¿èŸŒã¿ã«é¢é£ããŠããŸã ã 25ïŒ
ã«4ãæããå¿
èŠããããŸãããã©ãŠã¶ã¯ç°ãªãæ¹æ³ã§äžŠååããæ¹æ³ãç¥ããªãã ãã§ãããã©ãããããã®ãã®è² è·ã¯éåžžã«ææã§ããããããããããªãèŠããšãã®ããã«ãšãã«ã®ãŒæ¶è²»ã«ã€ãªãããŸãã
æªå®æã®ã¬ã³ããªã³ã°-10ïŒ
ã®è² è·ïŒããã¯ã°ã©ãŠã³ãïŒã
0ç²å-30ïŒ
;
2ããŒã-35ïŒ
;
25åã®ç²å-40ïŒ
;
200åã®ç²å-50ïŒ
;
1000-55ïŒ
;
2000-65ïŒ
ã
ãã®å Žåãèªã¿åãã¯åžžã«ç¹°ãè¿ãããããã§ã¯ãªããä»ã®å®è¡äžã®ããã°ã©ã ãšã¡ã¢ãªäœ¿çšéã«äŸåããŸãã
ããããCanvasã®åºçŸã«ããã誰ããããã«ããã°ã©ãã³ã°ãæ¥ãããšããªãã£ãçç±ã®éµã§ãã ããã»ããµãå®è£
ã®æåã®å¯èœãªäžå®å
šæ§ãããã³ãã©ãŠã¶ã§ã®äžå®å
šãªãµããŒãã«ããã蚱容ããããããã¬ãŒããå®çŸã§ããªãã£ããããåãã®è³ªãè¯å¥œãªå ŽåãããŒãã£ã¯ã«ã®æ°ã§ã¯ãªããããã¬ãŒãã«äŸåããåæã«çæ³çã«ã¯20ïŒ
ã«åãŸããããã©ãŒãã³ã¹ã®è³æ Œããæž¡ãããšãã§ããŸããã ã¬ã€ã€ãŒäžã®ã¢ãã¡ãŒã·ã§ã³ã䜿çšãããšãå°ãªããšã5ã€ã®ããŒãã£ã¯ã«ãå®è¡ãããã®è³æ Œã«åæ Œã§ããŸãã ããã©ãŒãã³ã¹ãåäžããCanvasã䜿çšããªãIE8ã§ã¯
çŽ0.5ïŒ
ã«ãªããŸãã ã
ã«ã¹ã¿ã ãã£ã³ãã¹ã¢ã«ãŽãªãºã
canvasã§çµæžçãªã¢ã«ãŽãªãºã ã®ç¬èªã®ããªã¢ã³ããäœæããŸãããã æåã«ãå¹³é¢ãããŒã©ã¹ã«éããéªçãåç²åã®é床ã«é©çšãããå°ããªã©ã³ãã ãŠã©ãŒã¯ã§é¢šäžã«ç§»åãããŸãã çªé¢šã®å°è±¡ã¯ãããŸããããããã¯éåžžã«èªç¶ã«å€æããŸãã 2çªç®ã®å¹æã¯èŠå·®ã§ããããã¯ãå°ããªç²åããããã£ãããšèœäžããå Žåã§ãã·ãŒã³ã®ç«äœæãçã¿åºããŸãã
ãã®ãããªèšå®ã§ã¯ãæåã®ãã³ã±ãŒããè¡ããŸããã
幎ïŒ2015 | : , , | |
---|
: 100 | |
: Canvas |
â |
: 35% |
: 50 |
, , , , . «» , . *.999 «». , . , .
â . , , , ( , ). |
| 2 : , | |
---|
: 1000 | |
: Canvas |
â |
: 40-50% (30 FPS) |
: 50 |
, : , . «» .
, . , . .
, , . . , ( , 30% , 120 ). |
Kafeman
䞊è¡ããŠãã«ãã§ãã³ã¯éªããã®ä»ã®äŒæ¥ã®å¹æã§å°æ¬ãäœããŸãããæåã®ã¢ã€ãã¢ã¯ãADMã¯ã©ãã®èšªåè
ã«å¹æã®ãããŠã§ã«ã«ã ããŒãžãäœæããããšã§ãããã¹ãŠãããæ·±å»ã«ãªãå¯èœæ§ããããŸãããæŽå²ã¯ä»®å®æ³ã®æ°åã蚱容ããŸãããå ããŠãçŽç²ã«å®éã®ééªïŒèŠã«èšªããã¢ã€ãã¢ãè£
食1ã2ã3ïŒãšå¯æ¥ã«ãããã®äžå¿«ãªã¡ãã€ãã®éªç²åãã·ãã¥ã¬ãŒãããŸããå®ç§ã¯ãŸã éæãããŠããŸããããæ¹åã«ã¯ããããçç±ããããŸããããã§ãªããã°ãé¡ã«åœ«ãããæ°ãæ£ããéªã¯èšæ¶ãããŸãããããã§ã¯ã圢ã®ãªããã¬ãŒã¯ãšãã®ãŒãããã¡ãã€ãã®ã¬ã³ããªã³ã°ã詊ãå¿
èŠããããŸãããããŠãäœããã®æ¹æ³ã§ç©éªãæé·ãããå¿
èŠããããŸãïŒjsfiddle.net/162e4jte/3ã§ãããå®å®é£è¡å£«ãææå
šäœã飲ã¿èŸŒãã»ã©ã§ã¯ãããŸãããæåã«ã圌ã¯çµæ žãšããŠè§£äœããæº¶ããŸããïŒjsfiddle.net/162e4jte/1ããã®åäœã¯ãä»ã®èè
ã®ã¹ã¯ãªããã§çºèŠãããŸããããŸããå°æ¥çã«ã¯ããšã³ãžã³ãžã§ãã¬ãŒã¿ãŒã1ã€ã«çµåãããšããã¢ã€ãã¢ãå®è¡ã«å€ããŸããçµæã«ãããšããµãŒãããŒãã£ã®èè
ã®ã¹ã¯ãªããã®å¡ã«å ããŠã3ã4åã®ããŒãã£ã¯ã«ã¢ãŒã·ã§ã³ã¢ã«ãŽãªãºã ãš2ã€ã®å®è£
æ¹æ³ãããããããã®å
±ééšåã¯æåºããããµã³ãããã¯ã¹ãšãªããžããªã§ããªãè¯å¥œã§ããããã€ãã®çµ±èšãå°çæž©æåã«ãããã¹ããŒãšåæ§ã«Javascriptãšé£åããéªãžã®é¢å¿ãäœäžããŠãããCanvasãšJavascript-æé·ããŠããŸããããã§ãã©ã®çµã¿åããã§å®å®ããé¢å¿ã確ä¿ãããããããããŸãããããã«
éªã®å¹æã«å¯ŸããŠå®éã«å®è¡å¯èœãª2ã€ã®ããã°ã©ãã³ã°æ¹æ³ïŒDOMã¬ã€ã€ãŒãšCanvasïŒã«ã¯ãç¬èªã®ã¢ããªã±ãŒã·ã§ã³ãããããããŸããæå€§çŽ50åã®ããŒãã£ã¯ã«ã§ãDOMãåã¡ãŸããããã¹ãŠã®ã¢ãŒãã§ã¯ãªããããã»ããµãŒã®è² è·ãå°ããã¿ã¹ã¯ãå¿
èŠã§ããé«ãããã¬ãŒãã¯ããŒãäžããŸãã50ãè¶
ããïŒãã ããèªä¿¡ãæã£ãŠ-200ãè¶
ããïŒ-äœããããã¬ãŒããæãŸãã-Canvasãåã¡ãŸãããã ããããã»ããµãªãœãŒã¹ã®30ïŒ
ããããŠã³ããŒããå¢ããå¿
èŠããããŸããå¢çãšåºæºã¯éåžžã«äžå®å®ã§ãããããŒããŠã§ã¢ããã©ãŠã¶ããã©ãŠã¶ã§ã®ãšã³ãžã³å®è£
ã®æåã«äŸåããŸããã¢ãã€ã«ãŠãŒã¶ãŒã¯ã5å以äžã®ããŒãã£ã¯ã«ã«å¯ŸããŠãããŒããšæèšããŸãã倧ããªãããªã«ãŒãã䜿çšãã鿢ç»ã¯ãDOMã®200åã®ããŒãã£ã¯ã«ãšCanvasã®5000åã®åé¡ãçunderstandã«çè§£ããŸãããå
žåçãªåçšã¢ããªã±ãŒã·ã§ã³ã®ã¢ã«ãŽãªãºã ããäœèšãªãã®ïŒäŒæ¥ã®ãšãªã¢ã§ã®ãŠãŒã¶ãŒã®æ³šæïŒã¯ãã¹ãŠåé€ããç°ãªãããã€ã¹ã§ã¢ã«ãŽãªãºã ããã¹ããããŠãŒã¶ãŒã«ãã¬ããžã®ãããã«ã€ããŠæ±ºå®ããå¿
èŠããããŸãã Canvasã§ããå€ãã®åå©ãåããäœãããã€ã«ãããŒã·ã§ã³ããçæçãªè±ç«ããããããããŸãããã©ã®ãã¿ã³ã§ã¢ãã¡ãŒã·ã§ã³ããªãã«ãããŠãŒã¶ãŒã®èšå®ã§ãã¢ã¯ã·ã§ã³ãããŸããã£ããããšãèŠããŠãããŠãåé¡ãããŸãããéªã¯Yandexãã©ãŠã¶ã»ã©ééçã§ã¯ãªãã®ã§ããã®ãã¿ã³ãæèçã«ãå£ããçç±ã¯ãããŸãããæ°å¹Žã®ãã¡ã«ããã£ã³ãã¹ã®ç¶æ³ãæ¹åãããå°æ°ã®ããŒãã£ã¯ã«ãšå¢å ãããããã¬ãŒãã®é åããã£ããéžæããããšãæåŸ
ã§ããŸããéªã®å°æ¬ã®è¡šçŸã®å¯èœæ§ã¯åºæ¬çã«ãã®æ®µéã§äœ¿ãæããããŸãïŒãã®ã°ã«ãŒãã§ã¯è¿å¹Žã質çã«æ°ãããã®ã¯ç»å ŽããŠããŸããïŒãååã«å®æããã¹ã¯ãªããã«ã¯ãå¿
èŠã«å¿ããŠèªèãããå€ãã®ããããã£ããããäžéšã®ããã©ãŒãã³ã¹äžå®è¡äžå¯èœãªããããã£ïŒ3D圢åŒã§ã®éªçã®å転ïŒã¯å®è¡ãããŸããããããã¯èª°ã«ãè¿·æããããŸããããã ãããã£ã³ãã¹ã§ã®çç£çãªã¬ã³ããªã³ã°ã«ããããã®ãããªã¹ã¯ãªããã衚瀺ãããããšãäºæ³ãããŸãïŒ30ïŒ
ã®è² è·ã§ïŒãã³ãŒãã£ã³ã°ã®èŠç¹-èšå®ã«ãã£ãŠDOMãŸãã¯Canvasã®ãªããžã§ã¯ããæäŸããã³ã³ã¹ãã©ã¯ã¿ãŒãäœæã§ããŸãããã¶ã€ããŒã¯ç°ãªãèè
ãæžãããšãã§ããŸãã ïŒãã®ã¢ãããŒãã§ã¯ããããžã§ã¯ããHabraADMeïŒGithabïŒã«ç·šæãããŠããgithub.com/clubadm/snowmachineããã®ãªããžããªããjsFiddleãä»ããŠçŸåšã®ã³ãŒããå®è¡ããŸãã