¿µ»óó¸®ÀÇ ±âÃʺÎÅÍ ¸Ó½Å·¯´× ¹× Çϵå¿þ¾î Á¦¾î±îÁö ¿µ»ó󸮸¦ ÃÖ´ë·Î È°¿ëÇϱâ
¾ËÆÄ°íÀÇ µîÀå ÀÌÈÄ ÀΰøÁö´ÉÀº 4Â÷ »ê¾÷Çõ¸íÀÇ ÇÙ½É Å°¿öµå·Î¼ ÇöÀç ±×¸®°í ¹Ì·¡ »çȸ¿¡ ´ë´ÜÇÑ ¿µÇâ·ÂÀ» ³¢Ä¥ °ÍÀ¸·Î ¿¹»óÇÏ°í ÀÖ½À´Ï´Ù. ÀΰøÁö´ÉÀº ¿¹¸¦ µé¾î °´Ã¼ÀνÄ, »óȲ°¨Áö, ¸ð¼ÇÀÎ½Ä µî ¿µ»óó¸®ÀÇ ÃֽŠ±â¼ú°ú ¿¬°èÇÔÀ¸·Î½á ¿ì¸®ÀÇ ÀÏ»ó»ýÈ°°ú ´õºÒ¾î »ê¾÷ Àü¹Ý¿¡ Çõ¸íÀûÀÎ º¯È¸¦ ÀÏÀ¸Å°°í ÀÖ½À´Ï´Ù.
º»¼´Â ¿µ»óó¸®ÀÇ ¾î·Á¿î À̷кÎÅÍ ¸»ÇÏÁö ¾Ê½À´Ï´Ù. P5.js ±â¹ÝÀÇ °£´ÜÇÑ ½Ç½À ¿¹Á¦¿¡¼ ½ÃÀÛÇÏ¿© ¿µ»óó¸®ÀÇ ´Ü°èº° ½Ç½ÀÀ» Á¦½ÃÇÔÀ¸·Î½á ÀÔ¹®ÀÚ ½º½º·Î ÀÀ¿ëÇÒ ¼ö ÀÖµµ·Ï °¡À̵åÇØ ÁÝ´Ï´Ù. º»¼¸¦ ÅëÇØ P5.js°¡ °¡Áø ½¬¿î ÄÚµù ȯ°æ ¹× ½Ã°¢ÀûÀÎ Ãâ·ÂÀÇ ÀåÁ¡À» ¿µ»ó󸮿¡ Á¢¸ñÇÔÀ¸·Î½á ´©±¸³ª ½±°Ô ¿µ»óó¸® ºÐ¾ß¿¡ Á¢±ÙÇÒ ¼ö ÀÖµµ·Ï ÁøÀÔ ¹®ÅÎÀ» ³·Ãß°í ÀÖ½À´Ï´Ù. ±âÇÏÇРó¸®, Çȼ¿ ó¸®, ÇÊÅ͸µ µî À̹ÌÁö ó¸®ÀÇ ±âÃÊ¿¡¼ ½ÃÀÛÇÏ¿© µ¿¿µ»ó ÆÄÀÏ ¹× ½Ç½Ã°£ ºñµð¿À ó¸® µî ´Ü°èº° ½Ç½ÀÀ» ÁøÇàÇÕ´Ï´Ù. ¶ÇÇÑ, ml5.js ¶óÀ̺귯¸®¸¦ ÀÌ¿ëÇÏ¿© µ¿¿µ»ó ¸Ó½Å·¯´×À» üÇèÇÏ°í, P5.js¿Í ¾ÆµÎÀ̳ë¿ÍÀÇ ¿¬µ¿À» ÅëÇØ ¿µ»óó¸® ¹× ¸Ó½Å·¯´×À» Çϵå¿þ¾î Á¦¾î¿Í ÀÚ¿¬½º·´°Ô Á¢¸ñ½ÃÅ°°í ÀÖ½À´Ï´Ù. ƯÈ÷, ÄÄÇ»ÅÍ °¡»ó ¼¼°èÀÇ ¿µ»óó¸® °á°ú¹°(¡æP5.js)°ú ½Ç¼¼°èÀÇ °á°ú¹°(¡æ¾ÆµÎÀ̳ë)À» »óÈ£ ¿¬µ¿ÇÔÀ¸·Î½á Àΰ£¿¡ º¸´Ù ÀÚ¿¬½º·¯¿î ¿µ»ó ÀÎÅÍÆäÀ̽º ¹æ½ÄÀ» Á÷Á¢ ½Ç½À ¹× ÀÀ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
P5.js´Â ÀÚ¹Ù½ºÅ©¸³Æ® ¾ð¾î·Î µÇ¾î ÀÖÁö¸¸, º»¼¿¡¼´Â ƯÁ¤ ¾ð¾î¿¡ ±¹ÇÑÇÏÁö ¾Ê°í C, C++, ÀÚ¹Ù, ÀÚ¹Ù½ºÅ©¸³Æ®, ÆÄÀ̽㠵î°ú °°Àº ¿©·¯ ÄÚµù ¾ð¾îµéÀÇ °øÅëºÐ¸ð ´Ù¼¸ °¡Áö(¡æº¯¼ö, Á¶°Ç, ¹Ýº¹, ¹è¿, ÇÔ¼ö)¸¦ ¿µ»ó󸮸¦ À§ÇÑ ÄÚµùÀÇ ±âº»À¸·Î »ï°í Ãʹݺο¡ ½Ç½ÀÇÕ´Ï´Ù. ±×¸®°í À̹ÌÁö ¹× µ¿¿µ»ó ó¸®, ¸Ó½Å·¯´×, ¾ÆµÎÀÌ³ë ¿¬µ¿ ¼øÀÇ ´Ü°èÀûÀÎ ½Ç½ÀÀ» ÅëÇØ ÄÚµù ÀÔ¹®ÀÚµµ µû¶ó¿Ã ¼ö ÀÖµµ·Ï Á¡ÁøÀûÀ¸·Î ¼³¸íÇÏ¿´½À´Ï´Ù. À̸¦ ÅëÇØ ´©±¸³ª º»ÀÎÀÇ ÇÁ·ÎÁ§Æ®¿¡ ¿µ»ó󸮸¦ ÀÀ¿ëÇÏ°í ½ÇÇöÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇÏ´Â °ÍÀ» ÃÖÁ¾ ¸ñÇ¥·Î »ï°í ÀÖ½À´Ï´Ù.
¥° P5.js ±âº»
01.P5.js: ½ÃÀÛ
1.1 p5.js¶õ? 16
1.2 p5.js ¼³Á¤ 18
1.3 p5.js ÄÚµù ȯ°æ 19
1.4 ±âº» Ç¥Çö: ĵ¹ö½º 22
1.5 ±âº» Ç¥Çö: Á¡°ú ¼± 24
1.6 ±âº» Ç¥Çö: ¿ø°ú »ç°¢Çü 26
1.7 ±âº» Ç¥Çö: ¹®ÀÚ 27
1.8 ±âº» Ç¥Çö: »ö»ó 29
¡¼½ÉÈ1.1¡½ 2Áø¼ö & 16Áø¼ö 30
02.P5.js: º¯¼ö
2.1 º¯¼ö ¼±¾ð, ÃʱâÈ ¹× ¿¬»ê 36
¡¼½ÉÈ2.1¡½ À¯´ÏÄÚµå(Unicode) & ¾Æ½ºÅ°ÄÚµå(ASCII Code) 44
¡¼½ÉÈ2.2¡½ µ¥ÀÌÅÍÇü(Data Type) ÃÑÁ¤¸® 46
2.2 º¯¼ö ±â¹Ý ¿òÁ÷ÀÓ Ç¥Çö 50
2.3 Àü¿ªº¯¼ö¿Í Áö¿ªº¯¼ö 55
2.4 ½Ã½ºÅÛ º¯¼ö¿Í ´Ù¾çÇÑ ¿òÁ÷ÀÓ ±¸Çö 58
03.P5.js: Á¶°Ç,¹Ýº¹
3.1 Á¶°Ç: if¹®, if-else¹®, ¹® 69
¡¼½ÉÈ3.1¡½ ºñ±³ ¿¬»êÀÚ º¸Ãæ 71
3.2 Á¶°Ç: ½Ã½ºÅÛ º¯¼ö, Áßø if¹® 78
3.3 ¹Ýº¹: for¹®, Áßø for¹® 87
04.P5.js: ¹è¿,ÇÔ¼ö
4.1 1Â÷¿ø ¹è¿ 95
4.2 2Â÷¿ø ¹è¿ 105
4.3 ÇÔ¼ö À¯Çü 1,2 108
4.4 ÇÔ¼ö À¯Çü 3,4 114
4.5 À̺¥Æ® ÇÔ¼ö 120
¥± À̹ÌÁö ó¸®
05.À̹ÌÁö Ãâ·Â
5.1 À̹ÌÁö Ãâ·Â 128
5.2 À̹ÌÁö ¿òÁ÷À̱â 139
5.3 À̹ÌÁö ¹Ýº¹ Ãâ·Â 146
5.4 À̹ÌÁö ¹è¿ 148
06.±âÇÏÇРó¸®
6.1 À̹ÌÁö À̵¿ 154
6.2 À̹ÌÁöÀÇ 2Â÷¿ø ȸÀü 156
6.3 À̹ÌÁöÀÇ 3Â÷¿ø ȸÀü 164
6.4 À̹ÌÁö È®´ë ¹× Ãà¼Ò 167
6.5 push() & pop() 174
6.6 À̹ÌÁö ÅؽºÃ³ ¸ÅÇÎ 180
¡¼½ÉÈ6.1¡½ 3Â÷¿ø ÀÔü µµÇü 192
07.Çȼ¿ 󸮥°
7.1 copy()¸¦ »ç¿ëÇÑ Çȼ¿ ¿µ¿ª º¹»ç 198
7.2 get()À» »ç¿ëÇÑ Çȼ¿°ª Àбâ 207
7.3 get()À» »ç¿ëÇÑ Çȼ¿ ¿ä¼Ò°ª Àбâ 216
7.4 get()À» »ç¿ëÇÑ À̹ÌÁö ó¸®: Á¡¹¦È 217
7.5 get()À» »ç¿ëÇÑ À̹ÌÁö ó¸®: ¸ðÀÚÀÌÅ©È 220
7.6 get(), set()À» »ç¿ëÇÑ À̹ÌÁö ó¸®: º¹¿ø 223
7.7 get(), set()À» »ç¿ëÇÑ À̹ÌÁö ó¸®: º¯È¯ 226
08.Çȼ¿ 󸮥±
8.1 pixels[]¸¦ »ç¿ëÇÑ Çȼ¿°ª Àбâ/¾²±â 230
8.2 pixels[]¸¦ »ç¿ëÇÑ À̹ÌÁö ó¸®: Á¡¹¦È, ¼±¹¦È 238
8.3 pixels[]¸¦ »ç¿ëÇÑ À̹ÌÁö ó¸®: ¸ðÀÚÀÌÅ©È 245
8.4 pixels[]¸¦ »ç¿ëÇÑ À̹ÌÁö ó¸®: º¯È¯ 247
8.5 pixels[]¸¦ »ç¿ëÇÑ À̹ÌÁö ó¸®: »çÄ¢ ¿¬»ê 255
8.6 pixels[]¸¦ »ç¿ëÇÑ À̹ÌÁö ó¸®: »óÈ£ÀÛ¿ë 258
¡¼½ÉÈ8.1¡½ ĵ¹ö½º¸¦ À̹ÌÁö ÆÄÀÏ·Î ÀúÀå 265
09.ÇÊÅ͸µ
9.1 tint()¸¦ »ç¿ëÇÑ ÇÊÅ͸µ 269
¡¼½ÉÈ9.1¡½ RGB & HSB Ä÷¯¸ðµå 280
9.2 filter()¸¦ »ç¿ëÇÑ ÇÊÅ͸µ 292
9.3 blend(), blendMode()¸¦ »ç¿ëÇÑ ºí·£µù 302
9.4 ¸¶½ºÅ©¸¦ »ç¿ëÇÑ ÇÊÅ͸µ 308
¥² µ¿¿µ»ó ó¸®
10.µ¿¿µ»ó ÆÄÀÏ Ã³¸®
10.1 µ¿¿µ»ó ÆÄÀÏ Ãâ·Â 319
10.2 µ¿¿µ»ó ÆÄÀÏÀÇ ´Ù¾çÇÑ Ãâ·Â ¹æ½Ä 322
10.3 µ¿¿µ»ó ÆÄÀÏÀÇ µ¿ÀÛ Á¦¾î 327
¡¼½ÉÈ10.1¡½ µ¿¿µ»ó ÆÄÀÏ Àç»ý/Á¤Áö/¼Óµµ/º¼·ý/Àç»ýÀ§Ä¡ Á¦¾î 331
10.4 pixels[]¸¦ »ç¿ëÇÑ µ¿¿µ»ó ó¸® 334
10.5 µ¿¿µ»ó ÇÊÅ͸µ 341
11.½Ç½Ã°£ ºñµð¿À ó¸®
11.1 ½Ç½Ã°£ ºñµð¿À Ãâ·Â 351
11.2 ºñµð¿ÀÀÇ ´Ù¾çÇÑ Ãâ·Â ¹æ½Ä 355
11.3 pixels[]¸¦ »ç¿ëÇÑ ºñµð¿À ó¸® 360
11.4 ºñµð¿À ÇÊÅ͸µ 365
¥³ ¸Ó½Å·¯´×
12.ML5 ¸Ó½Å·¯´×
12.1 ¸Ó½Å·¯´× ½Ç½ÀÀ» À§ÇÑ Áغñ 376
12.2 À̹ÌÁö ¹× ½Ç½Ã°£ »ç¹° ÀÎ½Ä 379
¡¼½ÉÈ12.1¡½ ¼ýÀÚ¸¦ Ç¥ÇöÇÏ´Â ´Ù¾çÇÑ ¸Þ¼Òµå 384
¡¼½ÉÈ12.2¡½ À̹ÌÁö ÆÄÀÏ Drag & Drop 385
12.3 ½Åü Æ÷ÀÎÆ® ÃßÀû 391
12.4 ¼Õ°¡¶ô Æ÷ÀÎÆ® ÃßÀû 402
13.ÀüÀÌÇнÀ ±â¹Ý ÀνÄ
13.1 ÀüÀÌÇнÀ(Transfer Learning) 417
¡¼½ÉÈ13.1¡½ ÇнÀ ¿Ï·áÇÑ ¸ðµ¨ÀÇ Àç»ç¿ë 425
13.2 ÀüÀÌÇнÀ ÀÀ¿ë 428
13.3 Ƽóºí¸Ó½Å(Teachable Machine) 443
¥´ P5.js & ¾ÆµÎÀÌ³ë ¿¬µ¿
14.¾ÆµÎÀÌ³ë ¼³Á¤
14.1 ¾ÆµÎÀ̳ë¶õ? 457
14.2 ¾ÆµÎÀÌ³ë ¼³Ä¡ 460
14.3 ¾ÆµÎÀ̳ë ÄÚµù ȯ°æ 462
14.4 ¾ÆµÎÀÌ³ë ½ÇÇà 463
14.5 ½Ç½À ÀÔ¡¤Ãâ·Â ºÎÇ° 468
15.¾ÆµÎÀÌ³ë ½ÃÀÛ
15.1 ½Ã¸®¾ó Åë½ÅÀ¸·Î º¯¼ý°ª È®ÀÎ 473
15.2 º¯¼ö ±â¹Ý ºÎÇ°ÀÇ Æ¯¼º È®ÀÎ 479
¡¼½ÉÈ15.1¡½ ÆÃĿijµå(Tinkercad) 481
¡¼½ÉÈ15.2¡½ ÃÊÀ½ÆÄ ¼¾¼·Î °Å¸® ±¸Çϱâ 502
15.3 Àüü ȸ·Îµµ 503
16.¿µ»óó¸® ±â¹Ý P5.js & ¾ÆµÎÀÌ³ë ¿¬µ¿
16.1 ¿¬µ¿ ½Ç½ÀÀ» À§ÇÑ Áغñ 506
¡¼½ÉÈ16.1¡½ ¿¬µ¿ ½Ã ÁÖÀÇ»çÇ× ¹× ½ÇÇà ¼ø¼ 508
16.2 P5.js¡æ¾ÆµÎÀ̳ë Çڵ彦ÀÌÅ· 510
¡¼½ÉÈ16.2¡½ parseInt() & toInt() 524
16.3 ¾ÆµÎÀ̳ë¡æP5.js Çڵ彦ÀÌÅ· 525
¡¼½ÉÈ16.3¡½ ½Ã¸®¾ó Åë½Å¿¡¼ ¹®ÀÚ¿ ¼Û¡¤¼ö½Å ½Ã À塤´ÜÁ¡ 537
16.4 ¾ÆµÎÀ̳ë¡êP5.js Çڵ彦ÀÌÅ· 538
¡¼½ÉÈ16.4¡½ p5.WebSerial°ú ¾ÆµÎÀ̳ëÀÇ µ¥ÀÌÅÍ ¼Û¡¤¼ö½Å ¸Þ¼Òµå 549
¡¼½ÉÈ16.5¡½ p5.WebSerial & p5.SerialPort 554
17.¸Ó½Å·¯´× ±â¹Ý P5.js & ¾ÆµÎÀÌ³ë ¿¬µ¿
17.1 ÀüÀÌÇнÀ°ú ¾ÆµÎÀÌ³ë ¿¬µ¿ 558
17.2 Ƽóºí¸Ó½Å°ú ¾ÆµÎÀÌ³ë ¿¬µ¿ 571
17.3 ÄÚ/¼Õ°¡¶ô Æ÷ÀÎÆ® ÃßÀû°ú ¾ÆµÎÀÌ³ë ¿¬µ¿ 577
¸¶¹«¸®
¸¶¹«¸® 584