Unity¤Ë´ØÏ¢¤¹¤ëµ­»ö¤Ç¤¹

Äɲ䵤줿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
ºï½ü¤µ¤ì¤¿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£

¡¡NavMeshComponents ¤È NavMeshAgent ¤òÍøÍѤ·¤¿·ÐÏ©°ÜÆ°½èÍý¤Î¼ÂÁõÎã¤Ç¤¹¡£
£²¥Ñ¥¿¡¼¥ó¤Î¼ÂÁõÎã¤ò£²¤Ä¤Î¼ê½ç¤Ëʬ¤±¤Æ²òÀ⤷¤Þ¤¹¡£¤Ê¤ª¡¢¤³¤ì¤é£²¤Ä¤Î¶µºà¤Ï¤Ä¤Ê¤¬¤Ã¤Æ¤¤¤Þ¤»¤ó¤Î¤Ç¡¢³Ø½¬½çÈÖ¤ÏǤ°Õ¤Ç¤¹¡£­£¤À¤±¡¢­¤¤À¤±¡¢¤Ç¤âÌäÂꤢ¤ê¤Þ¤»¤ó¡£

¡¡¤³¤Î¼ê½ç¤Ë¤ª¤¤¤Æ¤Ï¡¢¥²¡¼¥àÆâ¤Ç¾ã³²Êª¤¬Æ°Åª¤ËÀ¸À®¤µ¤ì¤ë¤³¤È¤Ë¤è¤ê¡¢ºÆ Bake ¤ò¼«Æ°Åª¤Ë¹Ô¤¤¡¢·ÐÏ©¤¬ÊѲ½¤¹¤ë¥±¡¼¥¹¤Î¼ÂÁõÎã¤Ç¤¹¡£


&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/bUg751maKV.gif, 50%)

----

&ref(https://image02.seesaawiki.jp/i/o/i-school-memo/951v7erSaw.gif, 50%)


&ref(https://image02.seesaawiki.jp/i/o/i-school-memo/vI6YIACGDF.gif, 50%)


&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/qTl9oHgGsH.gif, 50%)


¡¡¾åµ­¤ÎÆ°²è¤Î¤è¤¦¤Ë¡¢¾ã³²Êª¤¬·ÐÏ©Æâ¤Ë°ÜÆ°¤·¤Æ¤­¤¿¤êÀ¸À®¤µ¤ì¤¿¥¿¥¤¥ß¥ó¥°¤Ç¡¢¤¹¤°¤Ë¿·¤·¤¤·ÐÏ©¤ÎºÆ·×»»¤ò¹Ô¤¤¡¢ÌÜŪÃϤòÌܻؤ¹µ¡Ç½¤Ç¤¹¡£

----

*Àß·×

¡¡NavMeshComponents ¤Ï£²£Ä¤Ç¤Î NavMesh µ¡Ç½¤Î³èÍѤΤۤ«¡¢¥²¡¼¥àÆâ¤Ç¤ÎưŪ¤Ê Bake ¤ò¼«Æ°Åª¤Ë¹Ô¤¦µ¡Ç½¤¬¤Ä¤¤¤Æ¤¤¤Þ¤¹¡£
¤³¤ì¤Ï¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤éÀßÄê²Äǽ¤Ç¤¹¡£

¡¡¤³¤Á¤é¤Îµ¡Ç½¤òÍøÍѤ¹¤ë¤È¡¢Î㤨¤Ð¾ã³²ÊªÍѤΥª¥Ö¥¸¥§¥¯¥È¤¬À¸À®¤µ¤ì¤¿¤ê¡¢°ÜÆ°¤·¤¿¤ê¤¹¤ë¤È¡¢
¨ºÂ¤Ë Bake ¤Î¥ê¥Ó¥ë¥É(¥ê¥Ù¥¤¥¯)¤¬Áö¤ê¡¢Bake ÈϰϤò¹¹¿·¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
¤è¤Ã¤Æ¡¢¤½¤Î¿·¤·¤¤ Bake ¤µ¤ì¤¿ÈϰϤòÍøÍѤ·¤Æ¡¢¿·¤·¤¤·ÐÏ©·×»»¤¬¹Ô¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£



&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/bUg751maKV.gif, 50%)


----

*»öÁ°½àÈ÷¤È Bake

¡¡»öÁ°¤Î½àÈ÷¤È¤·¤Æ¤Ï¡¢''%%%[[¡Ú£²£Ä¡ÛNavMeshComponents ¤òÍøÍѤ·¤¿·ÐÏ©°ÜÆ°½èÍý¤Î¼ÂÁõÎã­¡>¡Ú£²£Ä¡ÛNavMeshComponents ¤òÍøÍѤ·¤¿·ÐÏ©°ÜÆ°½èÍý¤Î¼ÂÁõÎã­¡]]%%%''¤Î³Ø½¬¤È¼ÂÁõ¤¬½ªÎ»¤·¤Æ¤¤¤ë¤³¤È¤òÁ°Äó¤È¤·¤Æ¤¤¤Þ¤¹¡£

¡¡²¼µ­¤Î»²¹Í²èÁü¤Î¤è¤¦¤Ë¡¢¥¿¥¤¥ë¥Þ¥Ã¥×¾å¤Ë°ÜÆ°²Äǽ¤Ê¥ë¡¼¥È¤¬ Bake ¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£


&ref(https://image02.seesaawiki.jp/i/o/i-school-memo/0ojzhAzkUH.png, 50%)


&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/4hrno5A1Dl.png, 50%)


¡¡²èÌ̱¦Ã¼¤Î¹õ¤¤Éôʬ¤¬ÌÜɸÃÏÅÀ¤Ç¤¹¡£


&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/biC6LYLN5p.png, 50%)

----

*NavMeshBuilder2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎÀßÄê

¡¡Update Method ¤ÎÀßÄê¤ò Manual ¤Ç¤Ï¤Ê¤¯ Update¡¢¤¢¤ë¤¤¤Ï Fixed Update ¤ËÀßÄꤷ¤Æ¤ª¤¯¤³¤È¤Ç¡¢
¥²¡¼¥à¼Â¹ÔÃæ¤Ë¤ª¤¤¤Æ¡¢¾ã³²Êª¤Ê¤É¤¬Äɲ䵤줿¤ê°ÜÆ°¤·¤¿¾ì¹ç¡¢Update ¥á¥½¥Ã¥É¤Î¥¿¥¤¥ß¥ó¥°¤ÇºÆÅÙ Bake ¤¬¹Ô¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
´ðËÜŪ¤Ë¤Ï Update ¤ÎÀßÄê¤ÇÌäÂꤢ¤ê¤Þ¤»¤ó¡£


''¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü''
&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/2fuvPqy_wV.png, 35%)


¡¡Update Async ¤Ë¥Á¥§¥Ã¥¯¤òÆþ¤ì¤Æ¤ª¤¯¤È¡¢ÆâÉô¤Ç AsyncOperation ¥¯¥é¥¹¤òÍøÍѤ·¤¿ÈóƱ´ü½èÍý¤Ë¤è¤ë Bake ¤¬¹Ô¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
(¤¿¤À¤·¡¢AsyncOperation ¤¬ private ¤Ê¥á¥ó¥ÐÊÑ¿ô¤Ç¤¢¤ë¤¿¤á¡¢³°Éô¤«¤é¤Î³èÍѤ¬¤Ç¤­¤ë¤è¤¦¤Ë¤Ï¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó¡£)

¡¡¤³¤Á¤é¤â´ðËÜŪ¤Ë¤Ï¥Á¥§¥Ã¥¯¤ÏÉÔÍפǤ¹¡£

----

*¾ã³²ÊªÍѤΥª¥Ö¥¸¥§¥¯¥È¤ÎºîÀ®

¡¡Ç¤°Õ¤ËºîÀ®¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡²¼µ­¤Ï¥µ¥ó¥×¥ë¤Ç¤¹¡£


''¥µ¥ó¥×¥ë²èÁü''
&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/s8UoZb5dLL.png, 35%)


''¥µ¥ó¥×¥ë²èÁü''
&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/5bw7XNjqsS.png, 35%)

----

¡¡NavMeshSourceTag2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥¿¥Ã¥Á¤·¡¢Area ¤ò 1 ¤ËÀßÄꤷ¤Þ¤¹¡£
½é´üÀßÄê¤Ç¤Ï 1 ¤ËÀßÄꤹ¤ë¤³¤È¤Ç¡¢''Bake »þ¤Ë·ÐÏ©Âоݤ«¤é½ü³°¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È(¾ã³²Êª°·¤¤)''¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡NavMeshSourceTag2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥¿¥Ã¥Á¤·¡¢Area ¤ò 1 ¤ËÀßÄꤹ¤ë¤³¤È¤Ç
''Bake »þ¤Ë·ÐÏ©Âоݤ«¤é½ü³°¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È(¾ã³²Êª°·¤¤)''¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡³°Éô¤«¤é¤ÎÀÜ¿¨È½Äê¤ËÂбþ¤Ë¤¹¤ë¤¿¤á¡¢Tag ¤ò Wall ¤ËÀßÄꤷ¤¿¾å¡¢
¥ª¥Ö¥¸¥§¥¯¥È¤Î·Á¾õ¤Ë±þ¤¸¤¿£²£ÄÍÑ¥³¥é¥¤¥À¡¼¤È Rigidbody2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥¿¥Ã¥Á¤·¤Æ¤¤¤Þ¤¹¡£

¡¡³°Éô¤«¤é¤ÎÀÜ¿¨¤Ç¾ã³²Êª¤¬°ÜÆ°¤·¤Ê¤¤¤è¤¦¤Ë¡¢Freeze Position ¤ä Freeze Rotation ¤Î¥Á¥§¥Ã¥¯¤òÆþ¤ì¤Æ¤ª¤¤¤Æ¤â¤è¤¤¤Ç¤·¤ç¤¦¡£

¡¡Å¬µ¹¡¢¼«Ê¬¤Î¥×¥í¥¸¥§¥¯¥È¤Ë¹ç¤ï¤»¤ÆºîÀ®¤·¤Æ¤¯¤À¤µ¤¤¡£


&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/4LprYPAlMe.png, 35%)


¡¡¥×¥ì¥Ï¥Ö¤Ë¤·¤Æ¤ª¤¯¤³¤È¤ÇưŪÀ¸À®¤ËÂбþ¤Ç¤­¤Þ¤¹¡£
¤Þ¤¿ÀìÍѤΥ¯¥é¥¹¤ò¥¢¥¿¥Ã¥Á¤·¤Æ¤ª¤¯¤È¡¢¾ã³²Êª¤ÎµóÆ°(²èÁü¤Îº¹¤·Âؤ¨¡¢Âѵ×ÎÏÀßÄê¤Ê¤É)¤âÀ©¸æ¤Ç¤­¤Þ¤¹¡£

----

*¾ã³²ÊªÍѤΥª¥Ö¥¸¥§¥¯¥È¤Î²¾ÇÛÃÖ

¡¡ºîÀ®¤·¤¿¾ã³²ÊªÍѤΥª¥Ö¥¸¥§¥¯¥È¤ò Bake ¤µ¤ì¤Æ¤¤¤ë·ÐÏ©¤Î¾å¤ËÇÛÃÖ¤·¤Æ¤¯¤À¤µ¤¤¡£
NavMeshBuilder2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î Bake On Enable ¤Ë¥Á¥§¥Ã¥¯¤¬Æþ¤Ã¤Æ¤ª¤ê¡¢
Update Method ¤ò Update ¤ËÀßÄꤷ¤Æ¤¤¤ë¤È¥¨¥Ç¥£¥¿¡¼¾å¤Ç¤â¼«Æ°Åª¤Ë Bake ¤¬¼Â¹Ô¤µ¤ì¡¢·ÐÏ©¤¬¹¹¿·¤µ¤ì¤Þ¤¹¡£
¼«Æ°Åª¤Ë¹¹¿·¤µ¤ì¤Ê¤¤¾ì¹ç¤Ë¤Ï Bake ¥Ü¥¿¥ó¤ò²¡¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡¾ã³²Êª¤È¤·¤Æǧ¼±¤µ¤ì¤ë¤È Bake ÆâÍƤ¬¹¹¿·¤µ¤ì¤¿¤È¤­¤Ë¾ã³²ÊªÃÏÅÀ¤Î·ÐÏ©¤¬¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£


&ref(https://image02.seesaawiki.jp/i/o/i-school-memo/bnI92pjJuf.png, 50%)

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡''¢­''

&ref(https://image01.seesaawiki.jp/i/o/i-school-memo/y4jMfsTUWJ.png, 50%)


&ref(https://image02.seesaawiki.jp/i/o/i-school-memo/yZDv78rVc1.gif, 50%)

----

¡¡NavMeshAgent ¤Îµ¡Ç½¤È¤·¤Æ¡¢ÌÜŪÃϤ¬ÊѤï¤é¤Ê¤±¤ì¤Ð¥ë¡¼¥È¤òºÆ·×»»¤·¤ÆÌÜŪÃϤòÌܻؤ·¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢¥²¡¼¥àÆâ¤ÇưŪ¤Ë Bake ¤¬¼Â¹Ô¤µ¤ì¤ì¤Ð¡¢¥¨¡¼¥¸¥§¥ó¥È¤ÎÌÜŪÃϤޤǤηÐÏ©¤Ï¥²¡¼¥àÆâ¤Ç¤â¼«Æ°Åª¤ËÊѤï¤ê¤Þ¤¹¡£


&ref(https://image02.seesaawiki.jp/i/o/i-school-memo/951v7erSaw.gif, 50%)

----

*¥×¥í¥¸¥§¥¯¥È¤Ø¤ÎƳÆþ

¡¡¾åµ­¤Þ¤Ç¤Î¼ê½ç¤ò¼ÂÁõ¤·¤Æ¤¤¤±¤Ð¡¢Æ°Åª¤Ê Bake ¤ÎÂбþ¤¬²Äǽ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢
½¾Íè¤Î NavMeshAgent ¤ÈÁȤ߹ç¤ï¤»¤ë¤³¤È¤Ç¡¢¥¨¡¼¥¸¥§¥ó¥È¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¼«Æ°Åª¤Ë·ÐÏ©¤òÊѤ¨¤Ê¤¬¤éÌÜŪÃϤòÌܻؤ·¤Þ¤¹¡£

----

¡¡¼¡¤Î¼ê½ç¤Ï¾ã³²Êª¤òÇÛÃÖ¤·¤¿¥¿¥¤¥ß¥ó¥°¤Ç¤Ï¤Ê¤¯¡¢Å¨¤¬¾ã³²Êª¤ËÀÜ¿¨¤·¤¿¥¿¥¤¥ß¥ó¥°¤Ç Bake ¤ò¹Ô¤¦¤è¤¦¤ËÂбþ¤·¤¿¥±¡¼¥¹¤Ç¤¹¡£
¤³¤Á¤é¤Ç¤Ï¥¿¥ï¡¼¥Ç¥£¥Õ¥§¥ó¥¹¤Î¶µºà¤ò¥Ù¡¼¥¹¤Ë¥µ¥ó¥×¥ë¥³¡¼¥É¤âÄ󼨤·¤Þ¤¹¡£


¡¡¡¡=>¡¡''%%%[[¡Ú£²£Ä¡ÛNavMeshComponents ¤òÍøÍѤ·¤¿·ÐÏ©°ÜÆ°½èÍý¤Î¼ÂÁõÎã­¤>¡Ú£²£Ä¡ÛNavMeshComponents ¤òÍøÍѤ·¤¿·ÐÏ©°ÜÆ°½èÍý¤Î¼ÂÁõÎã­¤]]%%%''

´ÉÍý¿Í/Éû´ÉÍý¿Í¤Î¤ßÊÔ½¸¤Ç¤­¤Þ¤¹