ÊÔ½¸Ã桪¡ª¡ª

¥Ó¥Ø¥¤¥Ó¥¢ ¥Ä¥ê¡¼¤Î¥¯¥¤¥Ã¥¯¥¹¥¿¡¼¥È¥¬¥¤¥É

Unreal Engine 4 (UE4) ¤Î Behavior Trees ¥¢¥»¥Ã¥È¤ò»ÈÍѤ·¤Æ¡¢¥×¥í¥¸¥§¥¯¥ÈÆâ¤Î¥Î¥ó ¥×¥ì¥¤¥ä¡¼ ¥­¥ã¥é¥¯¥¿¡¼ÍѤο͹©ÃÎǽ (AI) ¤òºîÀ®¤Ç¤­¤Þ¤¹¡£

Behavior Trees ¥¢¥»¥Ã¥È¤Ï¥í¥¸¥Ã¥¯¤ò´Þ¤à¥Ö¥é¥ó¥Á¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¤¬¡¢¤É¤Î¥Ö¥é¥ó¥Á¤¬¼Â¹Ô¤µ¤ì¤ë¤Ù¤­¤«¤ò·èÄꤹ¤ë¤¿¤á¤Ë¡¢¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤Î¡ÖƬǾ¡×¤È¤·¤Æµ¡Ç½¤¹¤ë ¥Ö¥é¥Ã¥¯¥Ü¡¼¥É ¤È¸Æ¤Ð¤ì¤ëÊ̤Υ¢¥»¥Ã¥È¤¬É¬ÍפǤ¹¡£

¥Ö¥é¥Ã¥¯¥Ü¡¼¥É¤Ë¤Ï¥æ¡¼¥¶¡¼ÄêµÁ¤Î ¥­¡¼ ¤¬¤¤¤¯¤Ä¤«´Þ¤Þ¤ì¤Æ¤ª¤ê¡¢¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤¬°Õ»×·èÄê¤Ë»ÈÍѤ¹¤ë¾ðÊó¤òÊÝ»ý¤·¤Æ¤¤¤Þ¤¹¡£

¢£¥×¥ì¡¼¥ä¡¼¤ò¸«¤ÆÈ¿±þ¤·¡¢ÄÉÀפ¹¤ëŨ¤Î AI ¤ÎºîÀ®ÊýË¡¤Ë¤Ä¤¤¤Æ

Behavior Trees ¥¢¥»¥Ã¥È¤ò»ÈÍѤ·¤Æ¡¢¥Î¥ó ¥×¥ì¡¼¥ä¡¼ ¥­¥ã¥é¥¯¥¿¡¼ÍѤο͹©ÃÎǽ (AI) ¤òºîÀ®¤¹¤ëÊýË¡¤Ë¤Ä¤¤¤Æµ­½Ò¤·¤Þ¤¹¡£

¥×¥ì¡¼¥ä¡¼¤ò¸«¼º¤¦¤È¡¢¿ôÉøå (¼«Í³¤ËÄ´À°²Äǽ) ¤Ë AI ¤ÏÄÉÀפò¤¢¤­¤é¤á¤Æ¡¢¥×¥ì¡¼¥ä¡¼¤òºÆ¤Óȯ¸«¤¹¤ë¤Þ¤Ç¥é¥ó¥À¥à¤Ë¼þ°Ï¤ò°ÜÆ°¤·¤Þ¤¹¡£
  1. ¥Ö¥ë¡¼¥×¥ê¥ó¥È ¥Ó¥¸¥å¥¢¥ë ¥¹¥¯¥ê¥×¥Æ¥£¥ó¥°
  2. AI ¥³¥ó¥È¥í¡¼¥é¡¼
  3. ¥Ö¥é¥Ã¥¯¥Ü¡¼¥É
  4. ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼
  5. ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤Î¥µ¡¼¥Ó¥¹
  6. ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤Î¥Ç¥³¥ì¡¼¥¿¡¼
  7. ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤Î¥¿¥¹¥¯

¢£1 - ɬÍ×¤Ê¥×¥í¥¸¥§¥¯¥ÈÀßÄê

ºÇ½é¤Î¥¹¥Æ¥Ã¥×¤Ç¤Ï¡¢AI ¥­¥ã¥é¥¯¥¿¡¼¤¬´Ä¶­¤òÆ°¤­²ó¤ë¤¿¤á¤ËɬÍפʥ¢¥»¥Ã¥È¤ò»ÈÍѤ·¤Æ¥×¥í¥¸¥§¥¯¥È¤òÀßÄꤷ¤Þ¤¹¡£
¿·¤·¤¤ Blueprint Third Person ¥Æ¥ó¥×¥ì¡¼¥È ¥×¥í¥¸¥§¥¯¥È¤ò»ÈÍѤ·¤Þ¤¹¡£

1. ¿·¤·¤¤¥Õ¥©¥ë¥À ¤òºîÀ®

[Sources] ¥Ñ¥Í¥ë¤òŸ³«¤·¤Æ¡¢¡ÖThirdPersonBP¡×¥Õ¥©¥ë¥À¤ò±¦¥¯¥ê¥Ã¥¯¤·¡¢¡ÖAI¡×¤È¤¤¤¦Ì¾Á°¤Ç ¿·¤·¤¤¥Õ¥©¥ë¥À ¤òºîÀ®¤·¤Þ¤¹¡£

2. ThirdPersonCharacter¤ò¥³¥Ô¡¼

¡ÖThirdPersonBP¡× > ¡ÖBlueprints¡× ¥Õ¥©¥ë¥À¤Ç¡¢ThirdPersonCharacter ¤ò¡ÖAI¡×¥Õ¥©¥ë¥À¤Ë¥É¥é¥Ã¥°¤·¡¢ [Copy Here] ¤òÁªÂò¤·¤Þ¤¹¡£

3.Blueprint ¥¯¥é¥¹¤òºîÀ®

¡ÖAI¡× ¥Õ¥©¥ë¥À¤Ë¤Ï¡¢ AIController ¥¯¥é¥¹¤ò´ðÄ쥯¥é¥¹¤È¤¹¤ë¿·¤·¤¤ Blueprint ¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£

4.¥Ö¥ë¡¼¥×¥ê¥ó¥È¤Î̾Á°

¥Ö¥ë¡¼¥×¥ê¥ó¥È¤Ë¤Ï¡¢ ¡ÖEnemy_Controller¡×¡¢¤½¤·¤Æ ThirPersonCharacter ¥Ö¥ë¡¼¥×¥ê¥ó¥È¤Ë¤Ï¡¢¡ÖEnemy_Character¡× ¤È̾Á°¤òÉÕ¤±¤Þ¤¹¡£

5.Enemy_Character¤ÎÀßÄê

Enemy_Character ¤ò³«¤­¡¢¥°¥é¥Õ¤«¤é¤¹¤Ù¤Æ¤Î¥¹¥¯¥ê¥×¥È¤òºï½ü¤·¤Þ¤¹¡£

6.WalkSpeed¤ÎÊѹ¹

Character Movement ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÁªÂò¤·¡¢¡¡[Details (¾ÜºÙ)] ¥Ñ¥Í¥ë¤Î [Max Walk Speed] ¤ò ¡Ö120.0¡×¤ËÀßÄꤷ¤Þ¤¹¡£

¤³¤ÎÀßÄê¤Ç¡¢¥×¥ì¥¤¥ä¡¼¤òÄÉÀ×Ã椪¤è¤Ó¤½¤¦¤Ç¤Ê¤¤¤È¤­¤Î´Ä¶­Ãæ¤Î AI ¥­¥ã¥é¥¯¥¿¡¼¤ÎÆ°¤­¤ò¸ºÂ®¤·¤Þ¤¹¡£

7.AI Controller ¥¯¥é¥¹ ¤ò³ä¤êÅö¤Æ

¥Ä¡¼¥ë¥Ð¡¼¤«¤é [Class Defaults] ¤òÁªÂò¤·¡¢¡¡[Details] ¥Ñ¥Í¥ë¤Ç ¡ÖEnemy_Controller¡× ¤ò AI Controller ¥¯¥é¥¹ ¤È¤·¤Æ³ä¤êÅö¤Æ¤Þ¤¹¡£

AI ¤ò¥ï¡¼¥ë¥É¤ËÇÛÃÖ¤¹¤ë¤È¤­¤Ë¡¢¥ï¡¼¥ë¥É¤¬¥í¡¼¥É¤µ¤ì¤¿¸å¤Ë AI ¤òÀ¸À®¤¹¤ë¾ì¹ç¤Ï¡¢ [Auto Possess AI] ÀßÄê¤ò [Spawned] ¤ËÊѹ¹¤¹¤ë¤³¤È¤ò¿ä¾©¤·¤Þ¤¹¡£

8.Enemy_Character¤ÎÇÛÃÖ

[¥³¥ó¥Æ¥ó¥Ä ¥Ö¥é¥¦¥¶] ¤«¤é ¡ÖEnemy_Character¡× ¤ò¥ì¥Ù¥ë¤Ë¥É¥é¥Ã¥°¤·¤Þ¤¹¡£

9.NavMesh¤ÎºîÀ®

[Modes (¥â¡¼¥É)] ¥Ñ¥Í¥ë¤«¤é¡ÖNav Mesh Bounds Volume¡×¤ò¥ì¥Ù¥ë¤Ë¥É¥é¥Ã¥°¤·¤Þ¤¹¡£

10.Nav Mesh Bounds Volume¤ÎÈÏ°Ï

¡ÖNav Mesh Bounds Volume¡×¤òÁªÂò¤·¤¿¾õÂÖ¤Ç R ¤ò²¡¤·¡¢¥Ü¥ê¥å¡¼¥à¤ò¥¹¥±¡¼¥ë¤·¤Æ¥ì¥Ù¥ëÁ´ÂΤò¥«¥×¥»¥ë²½¤·¤Þ¤¹¡£

¤³¤ì¤Ë¤è¤ê¡¢Navigation ¥á¥Ã¥·¥å¤¬À¸À®¤µ¤ì¡¢AI ¥­¥ã¥é¥¯¥¿¡¼¤¬´Ä¶­Æâ¤ò°ÜÆ°¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
¥Ó¥å¡¼¥Ý¡¼¥ÈÆâ¤Î Nav ¥á¥Ã¥·¥å (Î理ÎÎΰè¤Ï¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó²Äǽ¤Ê°ÌÃÖ¤ò¼¨¤·¤Þ¤¹) ¤Îɽ¼¨¤òÀÚ¤êÂؤ¨¤ë¤Ë¤Ï¡¢ P ¥­¡¼¤ò²¡¤·¤Þ¤¹¡£
¥²¡¼¥à¥×¥ì¥¤Ãæ¤Ï¡¢¥³¥ó¥½¡¼¥ë ¥³¥Þ¥ó¥É¤Î show Navigation ¤ò»ÈÍѤ·¤Æ Nav ¥á¥Ã¥·¥å¤Îɽ¼¨ / Èóɽ¼¨¤òÀÚ¤êÂؤ¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¥×¥í¥¸¥§¥¯¥È¤ÎÀßÄ꤬´°Î»¤·¤¿¤Î¤Ç¡¢°Ê²¼¤Î¥¹¥Æ¥Ã¥×¤Ç Blackboard ¥¢¥»¥Ã¥È¤òÀßÄꤷ¤Þ¤¹¡£

¢£2 - ¥Ö¥é¥Ã¥¯¥Ü¡¼¥É¤ÎÀßÄê

AI ¤ÎƬǾ¤Ç¤¢¤ë Blackboard ¥¢¥»¥Ã¥È¤òºîÀ®¤·¤Þ¤¹¡£
AI ¤ËÃΤ餻¤¿¤¤¤¹¤Ù¤Æ¤Î¾ðÊó¤Ë¤Ï¡¢»²¾È²Äǽ¤Ê Blackboard Key ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
AI ¤¬¥×¥ì¡¼¥ä¡¼¤ËÂФ¹¤ë»ëÀþ¤ä¥×¥ì¡¼¥ä¡¼¤òÄÉÀפ·¤Æ¤¤¤Ê¤¤¤È¤­¤Ë°ÜÆ°¤Ç¤­¤ë°ÌÃ֤ξðÊó¤ò»ý¤Ã¤Æ¤¤¤ë¤«¤É¤¦¤«¡¢¥×¥ì¡¼¥ä¡¼¤òÄÉÀפ·Â³¤±¤ë¤¿¤á¤Î¥­¡¼¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£

1.CreateBB

[¥³¥ó¥Æ¥ó¥Ä ¥Ö¥é¥¦¥¶] ¤Ç [Add New] ¤ò¥¯¥ê¥Ã¥¯¤·¡¢AI [Artificial Intelligence] ¤Î²¼¤Î [Blackboard] ¤òÁªÂò¤·¤Æ¡¢¡ÖBB_Enemy¡×¤È̾ÉÕ¤±¤Þ¤¹¡£

2.BB_Enemy¤ò³«¤¯

BB_Enemy ¥Ö¥é¥Ã¥¯¥Ü¡¼¥ÉÆâ¤Ç¡¢ [New Key] ¥Ü¥¿¥ó¤ò¥¯¥ê¥Ã¥¯¤·¤Æ Object ¤òÁªÂò¤·¤Þ¤¹¡£

Blackboard ¥¢¥»¥Ã¥È¤Ï¡¢ Blackboard Keys (´Æ»ë¤¹¤ëÊÑ¿ô) ¤òÄɲä·¤ÆÄÉÀפǤ­¤ë [Blackboard] ¤È¡¢¥­¡¼¤Î¼ïÎà¤ò̾Á°ÉÕ¤±¤·¤Æ»ØÄê¤Ç¤­¤ë [Blackboard Details] ¤Î 2 ¤Ä¤Î¥Ñ¥Í¥ë¤Ç¹½À®¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

3.Object ¥­¡¼¤Î¾ì¹ç¡¢

[Entry Name]¤Ë¤Ï¡ÖEnemyActor¡×¤ÈÆþÎϤ·¡¢ [Base Class] ¤Ë¤Ï¡ÖActor¡×¤ÈÆþÎϤ·¤Þ¤¹¡£

4.[Key Type]¤ò Bool ¤ËÀßÄꤷ¡¢[Entry Name] ¤ò¡ÖHasLineOfSight¡×¤È̾ÉÕ¤±¤ÆÊ̤ΠKey ¤òÄɲä·¤Þ¤¹¡£


AI ¤¬¥×¥ì¥¤¥ä¡¼¤ËÂФ¹¤ë»ëÀþ¤ò»ý¤Ã¤Æ¤¤¤ë¤«¤É¤¦¤«¤òÄÉÀפ¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£

5.[Entry Name] ¤ò¡ÖPatrolLocation¡×¤È̾ÉÕ¤±¤Æ [Key Type]¤òVector ¤ËÀßÄꤷ¡¢Ê̤ΠKey ¤òÄɲä·¤Þ¤¹¡£


¤³¤ì¤Ï¡¢AI ¤¬¥×¥ì¡¼¥ä¡¼¤òÄÉÀפ·¤Æ¤¤¤Ê¤¤¤È¤­¤Ë°ÜÆ°¤Ç¤­¤ë¥ì¥Ù¥ëÆâ¤Î¾ì½ê¤òÄÉÀפ¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£

¥Ö¥é¥Ã¥¯¥Ü¡¼¥É ¤Ë¤Ï¡¢ÄÉÀפ¹¤ëɬÍפΤ¢¤ë¤â¤Î¤òÀßÄꤷ¤Æ¤¤¤Þ¤¹¡£
°Ê²¼¤Î¥¹¥Æ¥Ã¥×¤Ç¤Ï¡¢ ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤ò¥ì¥¤¥¢¥¦¥È¤·¤Þ¤¹¡£

¢£3 - ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤Î¥ì¥¤¥¢¥¦¥È

¤³¤Î¥¹¥Æ¥Ã¥×¤Ç¤Ï¡¢ ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Îή¤ì¤È AI ¤ËÆþÎϤµ¤»¤¿¤¤¾õÂ֤ˤĤ¤¤Æ¥ì¥¤¥¢¥¦¥È¤·¤Þ¤¹¡£
¥Ó¥¸¥å¥¢¥ë¥Õ¥í¡¼¤È¤·¤Æ AI ¤¬¤¢¤ë¤³¤È¤òÁÛÄꤹ¤ë¾õÂÖ¤Ç ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤ò¥ì¥¤¥¢¥¦¥È¤¹¤ë¤È¡¢¤½¤Î¾õÂÖ¤ËÆþ¤ë¤¿¤á¤Ë¤Ï¤É¤Î¤è¤¦¤Ê¥¿¥¤¥×¤Î¥í¥¸¥Ã¥¯¤È¥ë¡¼¥ë¤òºîÀ®¤¹¤ëɬÍפ¬¤¢¤ë¤«¤òÃΤ뤳¤È¤¬¤Ç¤­¤Þ¤¹¡£

1.Behavior Tree ¤ÎºîÀ®

[¥³¥ó¥Æ¥ó¥Ä ¥Ö¥é¥¦¥¶] ¤Ç [Add New]¤ò¥¯¥ê¥Ã¥¯¤·¡¢[Artificial Intelligence]¡ÊAI¡Ë ¤Î²¼¤Î [Behavior Tree] ¤òÁªÂò¤·¤Æ¡ÖBT_Enemy¡×¤È̾ÉÕ¤±¤Þ¤¹¡£

̿̾µ¬Â§¤Ï°Û¤Ê¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¤¬¡¢Ì¾Á°¤Ë¥¢¥»¥Ã¥È ¥¿¥¤¥×¤ÎƬ»ú¸ì¤òÄɲ乤뤳¤È¤ò¤ª´«¤á¤·¤Þ¤¹¡£

2.¡ÖBT_Enemy¡×¤ÎÀßÄê

¡ÖBT_Enemy¡×¤ò³«¤­¡¢ ¡ÖBB_Enemy¡× ¤ò Blackboard ¥¢¥»¥Ã¥È ¤È¤·¤Æ³ä¤êÅö¤Æ¤Þ¤¹¡£
ºîÀ®¤·¤¿ Blackboard Key ¤¬É½¼¨¤µ¤ì¤Ê¤¤¾ì¹ç¤Ï¡¢²«¿§¤¤Ìð°õ¤ò¥¯¥ê¥Ã¥¯¤·¤Æ Blackboard ¥¢¥»¥Ã¥È ¤ò¥¯¥ê¥¢¤·¤Æ¤«¤é¡¢ Enemy_BB ¤òºÆÅÙ³ä¤êÅö¤Æ¤Æ¥­¡¼¤ò¹¹¿·¤·¤Þ¤¹¡£

¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Î¹½À®
  • [Behavior Tree]
¡¡¡¡¡¡¥Ó¥Ø¥¤¥Ó¥¢¤òÄêµÁ¤¹¤ë¥Ö¥é¥ó¥Á¤È¥Î¡¼¥É¤ò»ë³ÐŪ¤Ë¥ì¥¤¥¢¥¦¥È
  • [Details]
¡¡¡¡¡¡¥Î¡¼¥É¤Î¥×¥í¥Ñ¥Æ¥£¤òÄêµÁ
  • [Blackboard]
¡¡¡¡¡¡¥²¡¼¥à¤Î¼Â¹ÔÃæ¤Ë Blackboard Key ¤È¤½¤Î¸½ºßÃͤòɽ¼¨¤¹¤ë

3.Selector ¥Î¡¼¥É¤ÎÄɲÃ

¥°¥é¥Õ¤Ç¡¢ Root ¤òº¸¥¯¥ê¥Ã¥¯¤·¤Æ¥É¥é¥Ã¥°¤·¡¢ Selector ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£

¥³¥ó¥Ý¥¸¥Ã¥È ¤Ï¡¢¥Õ¥í¡¼À©¸æ¤Î°ì·ÁÂ֤Ǥ¢¤ê¡¢Àܳ¤µ¤ì¤¿»Ò¥Ö¥é¥ó¥Á¤Î¼Â¹ÔÊýË¡¤ò·èÄꤷ¤Þ¤¹¡£
  • Selector
¡¡¡¡¡¡¡¡º¸¤«¤é±¦¤Ë¥Ö¥é¥ó¥Á¤ò¼Â¹Ô¤·¡¢Ä̾ï¤Ï¥µ¥Ö¥Ä¥ê¡¼´Ö¤ÎÁªÂò¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
¡¡¡¡¡¡¡¡Selector ¤Ï¡¢Àµ¾ï¤Ë¼Â¹Ô¤µ¤ì¤¿¥µ¥Ö¥Ä¥ê¡¼¤¬¸«¤Ä¤«¤ë¤È¡¢
¡¡¡¡¡¡¡¡¥µ¥Ö¥Ä¥ê¡¼´Ö¤Î°ÜÆ°¤òÄä»ß¤·¤Þ¤¹¡£
¡¡¡¡¡¡¡¡¤¿¤È¤¨¤Ð¡¢AI ¤¬¥×¥ì¡¼¥ä¡¼¤ÎÄÉÀפËÀ®¸ù¤·¤¿¾ì¹ç¡¢
¡¡¡¡¡¡¡¡AI ¤Ï¼Â¹Ô¤¬½ªÎ»¤¹¤ë¤Þ¤Ç¤½¤Î¥Ö¥é¥ó¥Á¤Ë¤È¤É¤Þ¤ê¡¢
¡¡¡¡¡¡¡¡Selector ¤Î¿Æ¥³¥ó¥Ý¥¸¥Ã¥È¤Ë°ÜÆ°¤·¤Æ·èÄê¥Õ¥í¡¼¤ò³¹Ô¤·¤Þ¤¹¡£
  • Sequence
¡¡¡¡¡¡¡¡º¸¤«¤é±¦¤Ë¥Ö¥é¥ó¥Á¤ò¼Â¹Ô¤·¡¢Ä̾ï¤Ï°ìÏ¢¤Î»Ò¤ò½çÈ֤˼¹Ԥ·¤Þ¤¹¡£
¡¡¡¡¡¡¡¡Selector ¤È¤Ï°Û¤Ê¤ê¡¢Sequence ¤Ï¼ºÇÔ¤·¤¿¥Î¡¼¥É¤ËÅþ㤹¤ë¤Þ¤Ç¤½¤Î»Ò¤ò¼Â¹Ô¤·Â³¤±¤Þ¤¹¡£
¡¡¡¡¡¡¡¡¤¿¤È¤¨¤Ð¡¢¥×¥ì¡¼¥ä¡¼¤Ë°ÜÆ°¤¹¤ë Sequence ¤¬¤¢¤ë¾ì¹ç¤Ï¡¢
¡¡¡¡¡¡¡¡ÈÏ°ÏÆâ¤Ë¤¢¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Æ¤«¤é¡¢²óž¤·¤Æ¥¢¥¿¥Ã¥¯¤·¤Þ¤¹¡£
¡¡¡¡¡¡¡¡ÈÏ°ÏÆâ¤Ë¤¢¤ë¤«¤É¤¦¤«¤Î¥Á¥§¥Ã¥¯¤Ë¼ºÇÔ¤·¤¿¾ì¹ç¡¢
¡¡¡¡¡¡¡¡²óž¥¢¥¯¥·¥ç¥ó¤ª¤è¤Ó¥¢¥¿¥Ã¥¯ ¥¢¥¯¥·¥ç¥ó¤Ï¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£
  • Simple Parallel
¡¡¡¡¡¡¡¡Simple Parallel ¤Ë¤Ï 2 ¤Ä¤Î¡ÖÀܳ¡×¤¬¤¢¤ê¤Þ¤¹¡£
¡¡¡¡¡¡¡¡ºÇ½é¤Î 1 ¤Ä¤Ï¡¢¥á¥¤¥ó¥¿¥¹¥¯¤Ç¡¢Task ¥Î¡¼¥É¤Ë¤Î¤ß³ä¤êÅö¤Æ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹
¡¡¡¡¡¡¡¡ (¥³¥ó¥Ý¥¸¥Ã¥È¤¬¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹)¡£
¡¡¡¡¡¡¡¡2 ¤ÄÌܤÎÀܳ (¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É ¥Ö¥é¥ó¥Á) ¤Ï¡¢
¡¡¡¡¡¡¡¡¥á¥¤¥ó¥¿¥¹¥¯¤Î¼Â¹ÔÃæ¤Ë¼Â¹Ô¤µ¤ì¤ë¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Ç¤¹¡£
¡¡¡¡¡¡¡¡¥×¥í¥Ñ¥Æ¥£¤Ë¤è¤Ã¤Æ¤Ï¡¢Simple Parallel ¤Ï¥á¥¤¥ó¥¿¥¹¥¯¤¬½ªÎ»¤¹¤ë¤È¤¹¤°¤Ë½ªÎ»¤¹¤ë¤«¡¢
¡¡¡¡¡¡¡¡Background Branch ¤¬½ªÎ»¤¹¤ë¤Î¤òÂÔ¤Á¤Þ¤¹¡£

4.Selector ¥Î¡¼¥É¤ÎÀßÄê

Selector ¥Î¡¼¥É¤Î¾ì¹ç¡¢ [Details] ¥Ñ¥Í¥ë¤Ç Node Name ¤«¤é AI Root ¤ËÊѹ¹¤·¤Þ¤¹¡£

¥°¥é¥ÕÆâ¤Î¥Î¡¼¥É¤Î̾Á°¤òÊѹ¹¤¹¤ë¤È¡¢¥Î¡¼¥É¤Î¼Â¹ÔÆâÍƤò¾å°Ì¥ì¥Ù¥ë¤«¤é´Êñ¤Ë¼±Ê̤Ǥ­¤Þ¤¹¡£
¤³¤ÎÎã¤Ç¤Ï¡¢»Ò¥Ö¥é¥ó¥Á¤òÀÚ¤êÂؤ¨¤ë¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤Î¼ÂºÝ¤Î¡ÖRoot¡×¤Ç¤¢¤ë¤¿¤á¡ÖAI Root¡×¤È̾Á°¤òÉÕ¤±¤Þ¤¹¡£
¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤ÎºîÀ®»þ¤Ë¼«Æ°Åª¤ËÄɲ䵤ì¤ë¥Ç¥Õ¥©¥ë¥È¤Î Root ¥Î¡¼¥É¤Ï¡¢¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤Î¥×¥í¥Ñ¥Æ¥£¤ÎÀßÄê¤ä¡¢Blackboard ¥¢¥»¥Ã¥È¤Î³ä¤êÅö¤Æ¤Ë»ÈÍѤ·¤Þ¤¹¡£

5.Chase Player¡×Sequence ¥Î¡¼¥É¤ÎÄɲÃ

¡ÖAI Root¡× ¤òº¸¥¯¥ê¥Ã¥¯¤·¤Æ¥É¥é¥Ã¥°¤·¡¢Sequence ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£Ì¾Á°¤ò¡ÖChase Player¡×¤Ë¤·¤Þ¤¹¡£

¤³¤³¤Ç¤Ï¡¢AI ¤Ë°ìÏ¢¤Î¥¢¥¯¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¤è¤¦¤Ë»Ø¼¨¤¹¤ë¤¿¤á¤Ë¡¢Sequence ¥Î¡¼¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢¥×¥ì¡¼¥ä¡¼¤Ë¸þ¤«¤Ã¤Æ²óž¤·¡¢Æ°¤¯Â®ÅÙ¤òÊѹ¹¤·¤Æ¤«¤é¡¢¥×¥ì¡¼¥ä¡¼¤Ë¸þ¤«¤Ã¤Æ°ÜÆ°¤·¤ÆÄÉÀפ·¤Þ¤¹¡£

6.¡ÖPatrol¡×Sequence ¥Î¡¼¥É¤ÎÄɲÃ

AI Root ¥Î¡¼¥É¤òº¸¥¯¥ê¥Ã¥¯¤·¤Æ¥É¥é¥Ã¥°¤·¡¢Sequence ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£Ì¾Á°¤ò¡ÖPatrol¡×¤Ë¤·¤Þ¤¹¡£

AI ¤Î¾ì¹ç¡¢ Sequence ¥Î¡¼¥É¤ò»ÈÍѤ·¤Æ¥Þ¥Ã¥×Æâ¤Î¥é¥ó¥À¥à¤Ê°ÌÃÖ¤ò¸«¤Ä¤±¡¢¤½¤Î°ÌÃ֤˰ÜÆ°¤·¡¢°ÜÆ°Àè¤Î¿·¤·¤¤°ÌÃÖ¤ò¸«¤Ä¤±¤ë¥×¥í¥»¥¹¤ò·«¤êÊÖ¤¹Á°¤Ë°ìÄê»þ´Ö¤½¤Î°ÌÃÖ¤ÇÂÔµ¡¤·¤Þ¤¹¡£

¥Î¡¼¥É¤Î±¦¾å¶ù¤Î¿ô»ú¤Ë¤âα°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£

Áàºî¤Î½ç½ø¤ò¼¨¤·¤Þ¤¹¡£
¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Ïº¸¤«¤é±¦¡¢¾å¤«¤é²¼¤Ë¼Â¹Ô¤µ¤ì¤ë¤¿¤á¡¢¥Î¡¼¥É¤ÎÇÛÃ֤ϽÅÍפǤ¹¡£
AI ¤Ë¤È¤Ã¤ÆºÇ¤â½ÅÍפʥ¢¥¯¥·¥ç¥ó¤Ïº¸¤ËÇÛÃÖ¤·¡¢½ÅÍפǤʤ¤ (¸åÂव¤»¤ë¤Ê¤É) ¥¢¥¯¥·¥ç¥ó¤Ï±¦¤ËÇÛÃÖ¤·¤Þ¤¹¡£
»Ò¥Ö¥é¥ó¥Á¤âƱ¤¸¤è¤¦¤Ë¼Â¹Ô¤µ¤ì¡¢¤¤¤º¤ì¤«¤Î»Ò¥Ö¥é¥ó¥Á¤¬¼ºÇÔ¤¹¤ë¤È¡¢¥Ö¥é¥ó¥ÁÁ´ÂΤμ¹Ԥ¬Ää»ß¤·¡¢¥Ä¥ê¡¼¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×¤¬¼ºÇÔ¤·¤Þ¤¹¡£
¤¿¤È¤¨¤Ð¡¢ Chase Player ¤¬¼ºÇÔ¤·¤¿¾ì¹ç¡¢Patrol ¤Ë°Ü¤ëÁ°¤Ë AI Root ¤ËÌá¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

7.Wait ¥¿¥¹¥¯¤òÄɲÃ

AI Root ¤ò¥É¥é¥Ã¥°¤·¤Æ¡¢Wait ¥¿¥¹¥¯¤òÄɲä·¤Þ¤¹¡£
[Wait Time] ¤ò ¡Ö1. 0¡× ¤ËÀßÄꤷ¤Þ¤¹¡£

¥Î¡¼¥É¤¬»ç¿§¤Ç¤¢¤ì¤Ð¡¢ Task ¥Î¡¼¥É¤Ç¤¢¤ë¤³¤È¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
Task ¥Î¡¼¥É¤Ï¡¢ ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Ç¼Â¹Ô¤Ç¤­¤ë¥¢¥¯¥·¥ç¥ó²Äǽ¤Ê¡Ö¥Î¡¼¥É¡×¤Ç¤¹¡£
Wait ¥¿¥¹¥¯¤Ï²¿¤é¤«¤ÎÍýͳ¤Ç ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤¬ Chase Player ¤Þ¤¿¤Ï Patrol ¤ÎξÊý¤Ë¼ºÇÔ¤¹¤ë¥¤¥Ù¥ó¥È¤Î¥­¥ã¥Ã¥Á¥ª¡¼¥ë¤È¤·¤Æµ¡Ç½¤·¤Þ¤¹¡£

8.Rotate to Face BBEntry ¥¿¥¹¥¯¤òÄɲÃ

Chase Player ¤ò¥É¥é¥Ã¥°¤·¤Æ¡¢ Rotate to Face BB Entry ¥¿¥¹¥¯¤òÄɲä·¤Þ¤¹¡£

¤³¤ÎÆÃÄê¤Î ¥¿¥¹¥¯ ¤ò»ÈÍѤ¹¤ë¤È¡¢¤³¤ÎÎã¤Î Enemy ¥¢¥¯¥¿ (Player) ¤Î¤è¤¦¤Ë²óž¤µ¤»¤Æ¸þ¤«¤¤¹ç¤ï¤»¤Ë¤¹¤ë Blackboard Entry ¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
¥Î¡¼¥É¤òÄɲ䷤Ƥ«¤é¡¢ [Details] ¥Ñ¥Í¥ë¤ò¸«¤ë¤È¡¢Blackboard Key ¤Ï¼«Æ°Åª¤Ë EnemyActor ¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
¤³¤ì¤Ï¡¢¥¢¥¯¥¿ blackboard ÊÑ¿ô¤¬¥Õ¥£¥ë¥¿¥ê¥ó¥°¤µ¤ì¤Æ¥ê¥¹¥È¤ÎºÇ½é¤ÎÊÑ¿ô¤Ë¤Ê¤ë¤¿¤á¤Ç¤¹¡£
À®¸ù¾ò·ï¤ÎÈϰϤòÄ´À°¤·¤¿¤ê Node Name ¤òÊѹ¹¤·¤¿¤¤¾ì¹ç¤Ï¡¢ [Precision] ¥ª¥×¥·¥ç¥ó¤òÄ´À°¤Ç¤­¤Þ¤¹¡£

9.[New Task] ¤ÎÀßÄê

¥Ä¡¼¥ë¥Ð¡¼ ¤«¤é¡¢ [New Task] ¥Ü¥¿¥ó¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£

¥Ó¥ë¥È¥¤¥ó ¥¿¥¹¥¯¤ò»ÈÍѤ¹¤ë¤À¤±¤Ç¤Ê¤¯¡¢¥«¥¹¥¿¥Þ¥¤¥º¤ª¤è¤ÓÄêµÁ²Äǽ¤ÊÄÉ²Ã¥í¥¸¥Ã¥¯¤ò»ý¤ÄÆȼ«¤Î¥«¥¹¥¿¥à ¥¿¥¹¥¯¤òºîÀ®¤·¤Æ³ä¤êÅö¤Æ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
¤³¤Î¥¿¥¹¥¯¤Ï¡¢AI ¤Î°Üư®ÅÙ¤òÊѹ¹¤·¤Æ¡¢¥×¥ì¡¼¥ä¡¼¤Î¸å¤òÄɤ¦¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
¿·¤·¤¤¥¿¥¹¥¯¤òºîÀ®¤¹¤ë¤È¡¢¿·¤·¤¤ ¥Ö¥ë¡¼¥×¥ê¥ó¥È ¤¬¼«Æ°Åª¤ËºîÀ®¤µ¤ì¤Æ³«¤­¤Þ¤¹¡£

10.¿·¤·¤¤¥¢¥»¥Ã¥È¤Î̾Á°¤ò ¡ÖBTT_ChasePlayer¡× ¤ËÊѹ¹

[¥³¥ó¥Æ¥ó¥Ä ¥Ö¥é¥¦¥¶] ¤Ç¡¢¿·¤·¤¤¥¢¥»¥Ã¥È¤Î̾Á°¤ò ¡ÖBTT_ChasePlayer¡× ¤ËÊѹ¹¤·¤Þ¤¹¡£

¿·¤·¤¯ºîÀ®¤·¤¿ ¥¿¥¹¥¯ ¡¢ ¥Ç¥³¥ì¡¼¥¿¡¼ ¡¢¤Þ¤¿¤Ï ¥µ¡¼¥Ó¥¹ ¤Ï¡¢ºîÀ®»þ¤Ë¤¹¤°¤Ë̾Á°¤òÊѹ¹¤¹¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹¡£
ŬÀÚ¤Ê̿̾µ¬Â§¤Ë½¾¤¤¡¢¥¢¥»¥Ã¥È¤Î̾Á°¤ËºîÀ®¤¹¤ë¥¢¥»¥Ã¥È¤Î¼ïÎà¤òɽ¤¹ÀÜƬ¼­¤òÉÕ¤±¤Þ¤¹¡£

Behavior Tree ¥¿¥¹¥¯¡¡¡¦¡¦¡¦¡¡BTT
Behavior Tree ¥Ç¥³¥ì¡¼¥¿¡¼¡¡¡¦¡¦¡¦¡¡BTD
Behavior Tree ¥µ¡¼¥Ó¥¹¡¡¡¦¡¦¡¦¡¡BTS

11. BTT_ChasePlayer ¥¿¥¹¥¯¤È Move To ¥¿¥¹¥¯¤òÄɲÃ

BT_Enemy ¤ÎBehavior Tree¤Ë¡¢BTT_ChasePlayer ¥¿¥¹¥¯¤òÄɲä·¡¢Â³¤¤¤Æ Move To ¤òÄɲä·¤Þ¤¹¡£

¿·¤·¤¤¥¿¥¹¥¯¤Ë¤Ï¤Þ¤À¥í¥¸¥Ã¥¯¤¬´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ç¡¢Á°¤ËÌá¤Ã¤Æ AI ¥­¥ã¥é¥¯¥¿¤Î°Üư®ÅÙ¤òÊѹ¹¤¹¤ë¥í¥¸¥Ã¥¯¤òÄɲä·¤Þ¤¹¡£
¤½¤Î¸å¡¢AI ¤ò EnemyActor ¤Ë°ÜÆ°¤·¤Þ¤¹ (¥×¥ì¥¤¥ä¡¼)¡£

12.BTT_FindRandomPatrol¥¿¥¹¥¯¤òÄɲÃ

¥Ä¡¼¥ë¥Ð¡¼ ¤«¤é¡¢ [New Task] ¥Ü¥¿¥ó¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£
[¥³¥ó¥Æ¥ó¥Ä ¥Ö¥é¥¦¥¶] ¤Ç¡¢¿·¤·¤¤¥¢¥»¥Ã¥È¤Î̾Á°¤ò ¡ÖBTT_FindRandomPatrol¡× ¤ËÊѹ¹¤·¤Þ¤¹¡£
Patrol ¤ËÀܳ¤·¤Þ¤¹¡£

13.Move To ¥¿¥¹¥¯¤òÄɲÃ

¥¿¥¹¥¯¤Ë Move To ¥¿¥¹¥¯¤òÄɲä·¡¢ Blackboard Key ¤ò PatrolLocation ¤ËÀßÄꤷ¤Þ¤¹¡£

¤³¤ì¤Ë¤è¤ê¡¢AI ¤Ï BTT_FindRandomPatrol ¥¿¥¹¥¯Æâ¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë PatrolLocation ¤Ë°ÜÆ°¤¹¤ë¤è¤¦¤Ë»Ø¼¨¤µ¤ì¤Þ¤¹¡£

14.Wait ¥¿¥¹¥¯¤òÄɲÃ

Wait ¥¿¥¹¥¯ ¤òÄɲä·¤Þ¤¹¡£
Wait Time ¤ò¡Ö4.0¡×¡¢ Random Deviation ¤ò¡Ö1. 0¡×¤ËÊѹ¹

¤³¤ì¤Ë¤è¤ê¡¢AI ¤Ï PatrolLocation ¤Ç 3 - 5 ÉÃÂԤĤ褦¤Ë»Ø¼¨¤µ¤ì¤Þ¤¹
(Random Deviation ¤Ë¤è¤ê Wait Time ¤Ë¡Ö+¡×¤Þ¤¿¤Ï¡Ö-¡×Éä¬Äɲ䵤ì¤Þ¤¹)¡£

¤³¤ì¤Ç¡¢ ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Î¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤Ï´°À®¤·¤Þ¤·¤¿¡£

°Ê²¼¤Î¥¹¥Æ¥Ã¥×¤Ç¤Ï¡¢
  1. AI ¤Î°Üư®ÅÙ¤òÊѹ¹¤¹¤ë¥í¥¸¥Ã¥¯¡¢
  2. AI ¤¬¥Ñ¥È¥í¡¼¥ë¤·¤Æ¤¤¤ë¤È¤­¤Ë¥Ê¥Ó¥²¡¼¥È¤¹¤ë¥é¥ó¥À¥à¤Ê°ÌÃÖ¤ò¸«¤Ä¤±¤ë¥í¥¸¥Ã¥¯¡¢
  3. AI ¤¬¥×¥ì¡¼¥ä¡¼¤ÎÄÉÀפä¥Ñ¥È¥í¡¼¥ë¤ò¤¹¤ë¥¿¥¤¥ß¥ó¥°¤ò·èÄꤹ¤ë¥í¥¸¥Ã¥¯
¤òÄɲä·¤Þ¤¹¡£

¢£4 - ¥¿¥¹¥¯¤ÎÀßÄê - Chase Player

Chase Player ¥¿¥¹¥¯ ¤òÀßÄꤷ¤Æ¡¢¥×¥ì¡¼¥ä¡¼¤òÄÉÀפ¹¤ëºÝ¤Î°Üư®ÅÙ¤òÊѹ¹¤·¤Þ¤¹¡£

1.Event Receive Execute AI ¥Î¡¼¥É¤òÄɲÃ

BTT_ChasePlayer ¤ò³«¤¯
¥Ö¥ë¡¼¥×¥ê¥ó¥È¥¨¥Ç¥£¥¿¤ò³«¤¯
Æâ¤Ç±¦¥¯¥ê¥Ã¥¯¤·¡¢ Event Receive Execute AI ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£

¤³¤Î¥¿¥¹¥¯¤¬ ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ Æâ¤Ç¥¢¥¯¥Æ¥£¥Ù¡¼¥È¤µ¤ì¤ë¤È Event Receive Execute AI ¥Î¡¼¥É¤¬µ¯Æ°¤·¤Þ¤¹¡£
¥¨¡¼¥¸¥§¥ó¥È¤¬ AI ¥³¥ó¥È¥í¡¼¥é¡¼¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢¾ï¤Ë AI ¥Ð¡¼¥¸¥ç¥ó¤Î Event Receive Execute¡¢ Event Receive Abort¡¢¤½¤·¤Æ Event Receive Tick ¤òÁªÂò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ ÈÆÍÑ¥¤¥Ù¥ó¥È¤È AI ¥¤¥Ù¥ó¥È¤ÎξÊý¤Î¥Ð¡¼¥¸¥ç¥ó¤¬¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢Å¬ÀڤʥС¼¥¸¥ç¥ó¤Î¤ß¤¬¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢AI ¤¬¸Æ¤Ó½Ð¤µ¤ì¤¿¾ì¹ç¤Ï AI ¥Ð¡¼¥¸¥ç¥ó¤¬¸Æ¤Ó½Ð¤µ¤ì¡¢¤½¤ì°Ê³°¤Î¾ì¹ç¤ÏÈÆÍÑ¥¤¥Ù¥ó¥È ¥Ð¡¼¥¸¥ç¥ó¤¬¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£

2. Cast to Enemy_Character ¥Î¡¼¥É¤òÄɲÃ

Controlled Pawn ¥Ô¥ó¤ò¥ª¥Õ¤Ë¤·¤Æ¡¢ Cast to Enemy_Character ¥Î¡¼¥É¤ò»ÈÍѤ·¤Þ¤¹¡£

¤³¤³¤Ç¤Ï¡¢ Cast ¥Î¡¼¥É¤ò»ÈÍѤ·¤Æ¡¢ Enemy_Character ¤È¸Æ¤Ð¤ì¤ë AI ¤Î ¥­¥ã¥é¥¯¥¿¡¼ ¥Ö¥ë¡¼¥×¥ê¥ó¥È ¤Ë¥¢¥¯¥»¥¹¤·¤Þ¤¹¡£

3. Enemy_Character

[¥³¥ó¥Æ¥ó¥Ä ¥Ö¥é¥¦¥¶] ¤ÎÃæ¤Ë¤¢¤ë Enemy_Character ¥Ö¥ë¡¼¥×¥ê¥ó¥È¤ò³«¤­¡¢ ¡ÖUpdate Walk Speed¡× ¤È¤¤¤¦Ì¾Á°¤Î ´Ø¿ô ¤òÄɲä·¤Þ¤¹¡£

¤³¤Î´Ø¿ô¤Ï¡¢¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤«¤é¸Æ¤Ó½Ð¤µ¤ì¡¢AI ¤Î°Üư®ÅÙ¤òÊѹ¹¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
µ»½ÑŪ¤Ë¤Ï¡¢Chase Player ¥¿¥¹¥¯¤Ç Cast ¥Î¡¼¥É¤«¤é Character Movement ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ë¥¢¥¯¥»¥¹¤·¡¢¥¿¥¹¥¯Æ⤫¤é°Üư®ÅÙ¤òÄ´À°¤Ç¤­¤Þ¤¹¤¬¡¢¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤Ç¥µ¥Ö¥ª¥Ö¥¸¥§¥¯¥È¤Î¥×¥í¥Ñ¥Æ¥£¤òľÀÜÊѹ¹¤¹¤ë¤³¤È¤Ï¤ª´«¤á¤·¤Þ¤»¤ó¡£Âå¤ï¤ê¤Ë¡¢¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤Ç¥­¥ã¥é¥¯¥¿Æâ¤Î´Ø¿ô¤ò¸Æ¤Ó½Ð¤·¡¢É¬Íפʽ¤Àµ¤ò¹Ô¤¤¤Þ¤¹¡£

4.[¾ÜºÙ][¥¤¥ó¥×¥Ã¥È]¤Ç Float ¤òÄɲÃ

Update Walk Speed ´Ø¿ô¤Î [Details] ¥Ñ¥Í¥ë¤Ç¡¢ ¡Ö+¡×¡ÊÄɲáˤò¥¯¥ê¥Ã¥¯¤·¡¢¡ÖNewWalkSpeed¡× ¤È̾ÉÕ¤± Float ¤òÄɲä·¤Þ¤¹¡£

5.Set Max Walk Speed

CharacterMovement ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò ¥³¥ó¥Ý¡¼¥Í¥ó¥È ¥¿¥Ö¤«¤é¥É¥é¥Ã¥°¤·¡¢
¥Î¡¼¥É[CharacterMovement]¤«¤é [Set Max Walk Speed] ¤ò»ÈÍѤ·¤ÆÀܳ¤·¤Þ¤¹¡£

¤³¤Î´Ø¿ô¤ò¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤«¤é¸Æ¤Ó½Ð¤¹¤È¡¢¿·¤·¤¤Â®Å٤Ȥ·¤Æ»ÈÍѤµ¤ì¤ëÃͤòÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

6.BTT_ChasePlayer ¥¿¥¹¥¯¤ÎÀßÄê

BTT_ChasePlayer ¥¿¥¹¥¯¤ÎÆâÉô¤ËÌá¤ê¡¢ As Enemy Character ¥Î¡¼¥É¤«¤é Update Walk Speed ¤ò¸Æ¤Ó½Ð¤·¤Æ ¡Ö500.0¡× ¤ËÀßÄꤷ¡¢°Ê²¼¤Î¤è¤¦¤ËÀܳ¤·¤Þ¤¹¡£
ºîÀ®¤·¤¿ Update Walk Speed ´Ø¿ô¤¬É½¼¨¤µ¤ì¤Ê¤¤»þ¤Ï¡¢ Chase Player ¥¿¥¹¥¯ ¤ËÄɲ乤ëÁ°¤Ë¡¢¤³¤Î Enemy_Character ¥Ö¥ë¡¼¥×¥ê¥ó¥È¤Î ¥³¥ó¥Ñ¥¤¥ë ¤¬É¬Íפʾì¹ç¤¬¤¢¤ê¤Þ¤¹¡£

7. Finish Execute ¥Î¡¼¥É

Update Walk Speed ¤Î¼¡¤Ï¡¢ Finish Execute ¥Î¡¼¥É¤ò 2 ¤ÄÄɲä·¡¢°Ê²¼¤Î¤è¤¦¤ËÀܳ¤·¤Þ¤¹¡£

¤³¤³¤Ç¤Ï¡¢¡ÖEnemy_Character¡×¤Ë¥­¥ã¥¹¥È¤·¤¿¤È¤­¤Ë¡¢¥¿¥¹¥¯¤¬Àµ¾ï¤Ë½ªÎ»¤·¤¿¤È¥Þ¡¼¥¯¤·¤Æ¤¤¤Þ¤¹¡£
À©¸æ¤µ¤ì¤¿ Pawn ¤¬¡ÖEnemy_Character¡×¤Ç¤Ï¤Ê¤¤¾ì¹ç¤Ï¡¢¥¿¥¹¥¯¤ò¼ºÇԤȤ·¤Æ¥Þ¡¼¥¯¤·¤Æ¡¢¥¿¥¹¥¯¤òÃæ»ß¤¹¤ë¤è¤¦¤Ë¤³¤Î¥±¡¼¥¹¤ò½èÍý¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

8.New Walk Speed ¥Ô¥ó¤òÊÑ¿ô¤Ë¾º³Ê

¿·¤·¤¤ New Walk Speed ¥Ô¥ó¤ò±¦¥¯¥ê¥Ã¥¯¤·¡¢ÊÑ¿ô¤Ë¾º³Ê¤·¤Æ ¡ÖChaseSpeed¡× ¤È̾ÉÕ¤±¤Þ¤¹¡£

9.ChaseSpeed ¤Ç¤Ï¡¢É¬¤º [Instance Editable] ¤òÍ­¸ú¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£


¤³¤ì¤ò Instance Editable ÊÑ¿ô¤Ë¾º³Ê¤µ¤»¤ë¤³¤È¤Ç¡¢¤³¤Î¥Ö¥ë¡¼¥×¥ê¥ó¥È¤Î³°Éô¤«¤é Max Walk Speed ¤ÎÃͤòÀßÄꤷ¤Æ¡¢ ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ÆâÉô¤Î¥×¥í¥Ñ¥Æ¥£¤È¤·¤Æ»ÈÍѤ¹¤ë¤³¤È¤¬²Äǽ¤È¤Ê¤ê¤Þ¤¹¡£

¤³¤ì¤Ç Enemy_Character ¥Ö¥ë¡¼¥×¥ê¥ó¥È¤ËÁ÷¤é¤ì¤ë Chase Speed ¤ÎÃͤÎÊѹ¹¤¬´Êñ¤Ë¤Ê¤ê¡¢AI ¤¬¥×¥ì¡¼¥ä¡¼¤òÄÉÀפ¹¤ë®ÅÙ¤òÄ´À°¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¤³¤ì¤Ç Chase Player Task ¤Ï´°À®¤·¤¿¤Î¤Ç¡¢°Ê²¼¤Î¥¹¥Æ¥Ã¥×¤Ç¤Ï AI ¤¬°ÜÆ°¤¹¤ë¥é¥ó¥À¥à¤Ê°ÌÃÖ¤òÆÀ¤ë¤¿¤á¤Î Find Random Patrol Task ¥í¥¸¥Ã¥¯¤òÀßÄꤷ¤Þ¤¹¡£

¢£5 - ¥¿¥¹¥¯ÀßÄê- Find Random Patrol

AI ¤¬¥×¥ì¡¼¥ä¡¼¤òÄÉÀפ·¤Æ¤¤¤Ê¤¤¤È¤­¤Ï¥é¥ó¥À¥à¤Ê°ÌÃ֤˰ÜÆ°¤¹¤ë¤è¤¦¤Ë¡¢ Find Random Patrol Task ¤òÀßÄꤷ¤Þ¤¹¡£
Blueprint Behavior Tree ¥¿¥¹¥¯¤Î¼ÂÁõ¤Ï¡¢¿×®¤Ë·«¤êÊÖ¤·½èÍý¤ò¹Ô¤¦¤¿¤á¤ÎÎɤ¤ÊýË¡¤Ç¤¹¤¬¡¢¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤¬ÌäÂê¤È¤Ê¤ë¾ì¹ç¤Ï¡¢¤½¤Î¥í¥¸¥Ã¥¯¤ò¥Í¥¤¥Æ¥£¥Ö¤Î Behavior Tree ¥¿¥¹¥¯¤ËÊѤ¨¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£

1.BTT_FindRandomPatrol ¤ÎÆâÉô¤Ç¤Ï¡¢ Event Receive Execute AI ¤ò»ÈÍѤ·¡¢ Enemy_Character ¤Ë¥­¥ã¥¹¥È¤·¤Þ¤¹¡£

2.¥Î¡¼¥É¡ÖPatrol Speed¡×¤òÄɲÃ

As Enemy Character ¤ò¥ª¥Õ¤Ë¤·¤Æ Update Walk Speed ¤ò¸Æ¤Ó½Ð¤·¤¿¤é¡¢ New Walk Speed ¤òÊÑ¿ô¤Ë¾º³Ê¤·¡¢°Ê²¼¤Î¤è¤¦¤ËÀßÄê¤ò¤·¤Æ ¡ÖPatrol Speed¡× ¤È̾ÉÕ¤±¤Þ¤¹¡£
  • Variable Name ¤ò ¡ÖPatrolSpeed¡×¤ËÀßÄê
  • Instance Editable ¤ò ¡ÖEnabled¡×¤ËÀßÄê
  • Patrol Speed (Default Value) ¤ò ¡Ö125.0¡×¤ËÀßÄê
¤³¤³¤Ç¤Ï¡¢¥Ñ¥È¥í¡¼¥ëÃæ¤ËŨ¤Î°Üư®ÅÙ¤ò²¼¤²¤Æ¤ß¤Þ¤¹¡£

3.Controlled Pawn ¤È Get Actor Location ¤ò¥ª¥Õ¤Ë¤·¡¢ Branch ¤ËÀܳ¤µ¤ì¤¿ Return Value ¤È¤È¤â¤Ë GetRandomReachablePointInRadius ¤ò¥ª¥Õ¤Ë¤·¤Þ¤¹¡£

4.°Ê²¼¤ÎÀßÄê¤Ç¡¢ GetRandomReachablePointInRadius ¤Î Radius ¤òÊÑ¿ô¤Ë¾º³Ê¤·¤Þ¤¹¡£

  • Variable Name ¤ò ¡ÖPatrolRadius¡×¤ËÀßÄê
  • Instance Editable ¤ò ¡ÖEnabled¡×¤ËÀßÄê
  • Patrol Radius (Default Value) ¤ò ¡Ö1000.0¡×¤ËÀßÄê

¤³¤³¤Ç¤Ï¡¢Å¨¥­¥ã¥é¥¯¥¿¡¼¤Î¸½ºß°ÌÃÖ¤«¤é 1000 ñ°Ì°ÊÆâ¤Î¥é¥ó¥À¥à¤Ê°ÌÃÖ¤ò¸«¤Ä¤±¤Þ¤¹¡£
¤Þ¤¿¡¢Branch ¥Î¡¼¥É¤ò»ÈÍѤ·¤Æ¡¢°ÜÆ°Àè¤Î¥é¥ó¥À¥à¤Ê¥Ý¥¤¥ó¥È¤¬¸«¤Ä¤«¤é¤Ê¤¤¥¨¥Ã¥¸¥±¡¼¥¹¤ò½èÍý¤·¤Þ¤¹¡£

5.Random Location ¥Ô¥ó¤ò¥ª¥Õ¤Ë¤·¤Æ¡¢ ¡ÖPatrolLocation¡×¤È̾ÉÕ¤±¤¿ÊÑ¿ô¤Ë¾º³Ê¤µ¤ì¤¿ Key ¤È¤È¤â¤Ë Set Blackboard Value as Vector ¤ò»ÈÍѤ·¤Þ¤¹¡£

6.Get Actor Location ¤«¤é¼èÆÀ¤·¤¿ Value ¤ò»ý¤ÄÊ̤ΠSet Blackboard Value to Vector ¥Î¡¼¥É¤ò»ÈÍѤ·¤Þ¤¹¡£

7.Á°¤Î¥¹¥Æ¥Ã¥×¤Ë³¤­¡¢°Ê²¼¤Î¿Þ¤è¤¦¤ËξÊý¤Î¥Î¡¼¥É¤ËÀܳ¤¹¤ë¤È¡¢ Finish Execute ¤Èɽ¼¨¤µ¤ì¡¢ Success ¤Ë¥Þ¡¼¥¯¤µ¤ì¤Þ¤¹¡£


Ũ¤¬¥é¥ó¥À¥à¤Ê°ÌÃÖ¤ò¸«¤Ä¤±¤Æ°ÜÆ°¤¹¤ë¾ì¹ç¡¢¤½¤Î°ÜÆ°À褬 Blackboard ¤ËÊݸ¤µ¤ì¤Þ¤¹¡£°ÌÃÖ¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¤Ï¡¢¸½ºß°ÌÃÖ¤¬»ÈÍѤµ¤ì¡¢¿·¤·¤¤°ÌÃÖ¤ò»î¤¹Á°¤Ë¤½¤Î°ÌÃÖ¤Ëα¤Þ¤ê¤Þ¤¹¡£Controlled Pawn ¤¬ Enemy_Character ¤Ç¤Ï¤Ê¤¤¥¨¥Ã¥¸¥±¡¼¥¹¤ò½èÍý¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

8.Cast ¥Î¡¼¥É¤Î Cast Failed ¥Ô¥ó¤ò¥ª¥Õ¤Ë¤·¡¢ Success ¤ò̵¸ú¤Ë¤·¤¿¾õÂÖ¤Ç Finish Execute ¤ò»ÈÍѤ·¤Þ¤¹¡£


Controlled Pawn ¤¬ Enemey_Character ¤Ç¤Ê¤¤¾ì¹ç¡¢¤³¤Î¥¿¥¹¥¯¤Ï¼ºÇԤȤ·¤Æ¥Þ¡¼¥¯¤µ¤ì¡¢Ãæ»ß¤µ¤ì¤Þ¤¹¡£

¤³¤ì¤Ç Find Random Patrol Task ¤ÎÀßÄê¤Ï´°Î»¤Ç¤¹¡£
°Ê²¼¤Î¥¹¥Æ¥Ã¥×¤Ç¤Ï¡¢ ¥Ç¥³¥ì¡¼¥¿¡¼ ¤Î¾ÜºÙ¤ä¡¢¤½¤ì¤é¤ò¾ò·ï¼°¤È¤·¤Æ»ÈÍѤ¹¤ëÊýË¡¤ä AI ¥³¥ó¥È¥í¡¼¥é¡¼¤ÎÀßÄê¤Ä¤¤¤Æ¤â³Ø½¬¤·¤Þ¤¹¡£

¢£6 - AI ¥³¥ó¥È¥í¡¼¥é¡¼¤ÎÀßÄê

ºÇ¸å¤Î¥¹¥Æ¥Ã¥×¤ËÈ÷¤¨¤Æ AI ¥³¥ó¥È¥í¡¼¥é¡¼¤ÎÆâÉô¤Ç¾¯¤·ºî¶È¤ò¹Ô¤Ã¤Æ¤«¤é ¥Ç¥³¥ì¡¼¥¿¡¼ ¤òÀßÄꤷ¡¢¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Î¤É¤Î¥Ö¥é¥ó¥Á¤ËÆþÎϤ¹¤ë¤«¤ò·èÄꤷ¤Þ¤¹¡£

1.Enemy_Controller¤ÎÀßÄê

[¥³¥ó¥Æ¥ó¥Ä ¥Ö¥é¥¦¥¶] ¤Ç¡¢ Enemy_Controller ¥Ö¥ë¡¼¥×¥ê¥ó¥È¤ò³«¤­¡¢ Event On Possess ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£

2.Run Behavior Tree ¥Î¡¼¥É¤òÄɲÃ

Event On Possess ¤ò¥ª¥Õ¤Ë¤·¡¢Run Behavior Tree ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£
[BTAsset] ¤ò ¡ÖBT_Enemy¡×¤ËÀßÄꤹ¤ë¡£

Run Behavior Tree ¤Ï¡¢AI ¥³¥ó¥È¥í¡¼¥é¡¼ ¥¯¥é¥¹ ¥Ö¥ë¡¼¥×¥ê¥ó¥È¤òÂоݤȤ·¤¿¥³¥ó¥Æ¥­¥¹¥È¤Î´Ø¿ô¸Æ¤Ó½Ð¤·¤Ç¡¢³ä¤êÅö¤Æ¤é¤ì¤¿ Behavior Tree ¥¢¥»¥Ã¥È¤ò¼Â¹Ô¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£

3.¡ÖAIPerception¡×¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÄɲÃ

[¥³¥ó¥Ý¡¼¥Í¥ó¥È] ¥¦¥£¥ó¥É¥¦¤Ç¡¢ [+ Add Component] ¤ò¥¯¥ê¥Ã¥¯
¡ÖAIPerception¡× ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¸¡º÷¤·¤ÆÄɲä·¤Þ¤¹¡£

AI Perception ¥³¥ó¥Ý¡¼¥Í¥ó¥È ¤Ï¡¢ AI Perception System Æâ¤Ë»É·ã¥ê¥¹¥Ê¡¼¤òºîÀ®¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¡¢±þÅú²Äǽ¤ÊÅÐÏ¿ºÑ¤ß¤Î»É·ã (»ä¤¿¤Á¤Î¾ì¹ç¡¢»ë³Ð¤ò»È¤¤¤Þ¤¹) ¤ò¼ý½¸¤·¤Þ¤¹¡£
¤³¤ì¤Ë¤è¤ê¡¢AI ¤¬¼ÂºÝ¤Ë¥×¥ì¡¼¥ä¡¼¤òǧ¼±¤·¡¢¤½¤ì¤Ë±þ¤¸¤ÆÈ¿±þ¤Ç¤­¤ë¥¿¥¤¥ß¥ó¥°¤òȽÃǤǤ­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

4.AIPerception ¥³¥ó¥Ý¡¼¥Í¥ó¥È ¤Î ¾ÜºÙÀßÄê

AIPerception ¥³¥ó¥Ý¡¼¥Í¥ó¥È ¤Î [Details] ¥Ñ¥Í¥ë¤Ç¡¢ [AI Sight config] ¤òÄɲä·¡¢ [Detect Neutrals] ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¢¨¥¿¥Ö¤ò³«¤¯

[Detection by Affiliation] ¥×¥í¥Ñ¥Æ¥£¤ò»È¤¦¤È¡¢Æ±¤¸½ê°¤Î¥Á¡¼¥à¥á¡¼¥È¤ÈÂÐÀ路¤¿¤ê¡¢ÂÐΩ¤¹¤ë½ê°¥á¥ó¥Ð¡¼¤ò¹¶·â¤·¤¿¤ê¤¹¤ë¥Á¡¼¥à¥Ù¡¼¥¹¤Î AI ¤òÀßÄê¤Ç¤­¤Þ¤¹¡£
¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ ¥¢¥¯¥¿ ¤Ë¤Ï½ê°¤¬³ä¤êÅö¤Æ¤é¤ì¤º¡¢ÃæΩ¤È¸«¤Ê¤µ¤ì¤Þ¤¹¡£
¸½»þÅÀ¤Ç¤Ï¡¢¥Ö¥ë¡¼¥×¥ê¥ó¥È¤ò»È¤Ã¤Æ½ê°¤ò³ä¤êÅö¤Æ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤½¤Î¤¿¤á¡¢¥×¥ì¡¼¥ä¡¼¤ò¸¡½Ð¤¹¤ë¤¿¤á¤Ë¡¢ [Detect Neutral] ¥Õ¥é¥°¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£Ê̤ÎÊýË¡¤È¤·¤Æ¡¢¤É¤Î¥­¥ã¥é¥¯¥¿¡¼¤¬¥×¥ì¡¼¥ä¡¼¤Ç¤¢¤ë¤«¤ò·èÄꤹ¤ë¤¿¤á¤Ë Actor Tagging ¤ò»ÈÍѤ·¡¢AI ¥­¥ã¥é¥¯¥¿¡¼ (ã) ¤¬¥×¥ì¡¼¥ä¡¼¤È¤·¤Æ¥¿¥°ÉÕ¤±¤µ¤ì¤¿¥¢¥¯¥¿¤Î¤ß¤ò¶¯À©Åª¤ËÄÉÀפ¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£

5.[AIPerception] ¤Î [Events] ¥»¥¯¥·¥ç¥ó¤Ç¡¢ [On Target Perception Updated] ¤Î²£¤Ë¤¢¤ë [+] µ­¹æ¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£

6.Actor Has Tag ¥Î¡¼¥É¤òÄɲÃ

¥°¥é¥Õ¤Î [On Target Perception Updated] ¤Î Actor ¤ò¥ª¥Õ¤Ë¤·¡¢
Actor Has Tag ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£
Tag¤ò¡ÖPlayer¡× ¤ËÀßÄê¡£

7.Break AIStimulus ¥Î¡¼¥É¤òÄɲÃ

Stimulus ¥Ô¥ó¤ò¥ª¥Õ¤Ë¤·¤Æ¡¢ Break AIStimulus ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£

8.Branch ¥Î¡¼¥É¤òÄɲÃ

°Ê²¼¤Ë¼¨¤¹ Condition ¤Ç Branch ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£

¤³¤³¤Ç¤Ï¡¢¥¢¥¯¥¿¤¬Àµ¾ï¤Ë´¶ÃΤµ¤ì¤¿¤«¤É¤¦¤«¡¢¤½¤·¤Æ¥¢¥¯¥¿¤Ë¥×¥ì¡¼¥ä¡¼¤Î¥¿¥°¤¬¤¢¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Þ¤¹¡£
Break AIStimulus ¥Î¡¼¥É¤òÁªÂò¤¹¤ë¤È¡¢ [Details] ¥Ñ¥Í¥ë¤Ç [Hide Unconnected Pins] ¤ò»ÈÍѤ·¤ÆÀܳ¤µ¤ì¤Æ¤¤¤Ê¤¤¤¹¤Ù¤Æ¤Î¥Ô¥ó¤òÈóɽ¼¨¤Ë¤·¡¢¾å¤Î¿Þ¤Î¤è¤¦¤Ë¥°¥é¥Õ¤òɽ¼¨¤Ç¤­¤Þ¤¹¡£

9.¥Î¡¼¥É[Set Timer by Event] ¤òÄɲÃ

Branch ¤Î False ¤ò¥ª¥Õ¤Ë¤·¡¢ [Set Timer by Event] ¤ò»ÈÍѤ·¤Þ¤¹¡£
[Time] ¤ò ¡Ö4.0¡× ¤Ë¤¹¤ë

10.±¦¥¯¥ê¥Ã¥¯¤·¤Æ Time ¤òÊÑ¿ô¤Ë¾º³Ê¤·¡¢ ¡ÖLine Of Sight Timer¡× ¤È̾ÉÕ¤±¤Þ¤¹¡£


¤³¤ÎÊÑ¿ô¤È³ä¤êÅö¤Æ¤é¤ì¤¿Ãͤˤè¤Ã¤Æ¡¢AI ¤¬¥×¥ì¡¼¥ä¡¼¤ÎÄÉÀפòÃæ»ß¤¹¤ë¤Þ¤Ç¤Î»þ´Ö¤¬·èÄꤵ¤ì¤Þ¤¹¡£
¤³¤Î»þ´Ö¤ò²á¤®¤ë¤È¡¢¥¢¥¿¥Ã¥Á¤µ¤ì¤¿¥¤¥Ù¥ó¥È¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£

11.Set Timer by Event ¤Î Return Value ¤ò±¦¥¯¥ê¥Ã¥¯¤·¡¢ÊÑ¿ô¤Ë¾º³Ê¤·¤Þ¤¹¡£

¡ÖEnemyTimer¡×¤È̾ÉÕ¤±¤ë

¤³¤ì¤Ë¤è¤ê¡¢ ¥Ï¥ó¥É¥ë ¤ò»ÈÍѤ·¤Æ Timer ¤Ø¤Î»²¾È¤¬³ÊǼ¤µ¤ì¤Þ¤¹¡£
¤³¤Î¥Ï¥ó¥É¥ë¤Ï¡¢¥¹¥¯¥ê¥×¥È¤«¤é¸Æ¤Ó½Ð¤µ¤ì¤Æ¥Ï¥ó¥É¥ë¼«ÂΤò̵¸ú¤Ë¤·¡¢´ØÏ¢ÉÕ¤±¤é¤ì¤¿¥¤¥Ù¥ó¥È (´ØÏ¢¤¹¤ë¥¤¥Ù¥ó¥È¤Î¼Â¹Ô¤ò˸¤²¤Þ¤¹) ¤ò¥¯¥ê¥¢¤·¤Þ¤¹¡£
¤³¤ì¤Ï¸å¤Ç¡¢¡ÖLine of Sight Timer¡×¤¬ÀÚ¤ì¤ëÁ°¤Ë AI ¤¬¥×¥ì¥¤¥ä¡¼¤òºÆ³Îǧ¤¹¤ë¥¤¥Ù¥ó¥È¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
¤³¤ì¤Ë¤è¤ê¡¢AI ¤¬¥×¥ì¥¤¥ä¡¼¤ò¸«¼º¤Ã¤ÆÄÉÀפòÊü´þ¤¹¤ë¤Î¤òËɤ°¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

12.Custom Event ¤òºîÀ®

Custom Event ¤òºîÀ®¤·¤Æ¡¢¤½¤Î¥¤¥Ù¥ó¥È̾¤ò¡ÖStartEnemyTimer¡×¤È¤·¡¢ Set Timer by Event ¤Î Event ¥Ô¥ó¤ËÀܳ¤·¤Þ¤¹¡£

13.Blackboard ¥Î¡¼¥É¤òÄɲÃ

±¦¥¯¥ê¥Ã¥¯¤·¤Æ¡¢ [Variables]>[AI] ¤Î²¼¤Ë Get Blackboard ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£

14.Set Value as Bool ¤È Set Value as Object¤òÄɲÃ

¥Ö¥é¥Ã¥¯¥Ü¡¼¥É ¤ò¥ª¥Õ¤Ë¤·¡¢ Set Value as Bool ¤È Set Value as Object ¤ò»ÈÍѤ·¤Æ¡¢°Ê²¼¤Î¤è¤¦¤ËÀܳ¤·¤Þ¤¹¡£

¤³¤ì¤Ë¤è¤ê¡¢¿·¤·¤¤ÃͤÇÄêµÁ¤µ¤ì¤¿ Blackboard Key ¤ò¹¹¿·¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

15.ξÊý¤Î Key Name ¤Ç±¦¥¯¥ê¥Ã¥¯¤·¤Æ¡¢ ÊÑ¿ô ¤Ë¾º³Ê

¤½¤ì¤¾¤ì¡ÖHasLineOfSight¡×¤È¡ÖEnemyActor¡×¤È̾ÉÕ¤±¤Þ¤¹¡£

16.¥Ö¥ë¡¼¥×¥ê¥ó¥È¤ò ¥³¥ó¥Ñ¥¤¥ë ¤·¡¢Î¾Êý¤Î Key Name ¤Î ¥Ç¥Õ¥©¥ë¥ÈÃÍ ¤ò¤½¤ì¤¾¤ì HasLineOfSight ¤È EnemyActor ¤ËÀßÄꤷ¤Þ¤¹¡£

17.Clear and Invalidate Timer by Handle¤òÄɲÃ

Branch ¤Î True ¤ò¥ª¥Õ¤Ë¤·¤Æ¡¢ Clear and Invalidate Timer by Handle ¤ò»ÈÍѤ·¤Þ¤¹¡£
Hanble ¤È Get EnemyTimer ¤òÀܳ¡£

AI ¤Ï ¥×¥ì¡¼¥ä¡¼¤òǧ¼±¤¹¤ë¤È¡¢ºÆ¤Ó¥×¥ì¡¼¥ä¡¼¤òǧ¼±¤Ç¤­¤Ê¤¯¤Ê¤ë¤Þ¤Ç Line Of Sight Timer ¤ò¥¯¥ê¥¢¤·¤Þ¤¹ (¿·¤·¤¤ Line Of Sight Timer ¤¬³«»Ï¤µ¤ì¤Þ¤¹)¡£

18. Blackboard ¥Î¡¼¥É¡¢ Set Value as¡¢¤½¤·¤Æ Key Name ¥Î¡¼¥É¤ò¥³¥Ô¡¼¤·¤ÆŽ¤êÉÕ¤±¤Þ¤¹¡£

19.Set Value as Bool ¥Î¡¼¥É¤Ç¡¢ Bool Value ¤òÍ­¸ú¤Ë¤·¡¢¿Þ¤Î¤è¤¦¤Ë ¥¢¥¯¥¿ ¥Ô¥ó¤ò Object Value ¤Þ¤Ç¥É¥é¥Ã¥°¤·¤Þ¤¹¡£


¤³¤ì¤Ï¡¢ Has Line Of Sight ¤Î Blackboard Key Values ¤ò ¡ÖTrue¡× ¤Ë¡¢ EnemyActor ¤òÃγФ¹¤ë ¡ÖActor¡× ¤ËÀßÄꤷ¤Þ¤¹ (¤³¤ì¤¬¥×¥ì¥¤¥ä¡¼¤Ç¤¢¤ë¾ì¹ç¤Î¤ßµ¯Æ°¤¹¤ë¤è¤¦¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹)¡£

20.[Compile] ¤ò¥¯¥ê¥Ã¥¯¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¡¢¥Ö¥ë¡¼¥×¥ê¥ó¥È¤òÊĤ¸¤Þ¤¹¡£


ºÇ½ªÅª¤Ê¥°¥é¥Õ¤Ï¾å¤Î¿Þ¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¢£7 - ¥Ç¥³¥ì¡¼¥¿¡¼¤ÈºÇ½ªÀßÄê

Player Character ¤È Enemy Character ¥Ö¥ë¡¼¥×¥ê¥ó¥È¤ÎÀßÄê¤ò¤¤¤¯¤Ä¤«Ä´À°¤·¤Þ¤¹¡£
¤Þ¤¿¡¢ ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Ë¤Ï¡¢»ØÄꤵ¤ì¤¿¾ò·ï¤Ë´ð¤Å¤¤¤ÆÆþÎϲÄǽ¤Ê¥Ö¥é¥ó¥Á¤ò·èÄꤹ¤ë ¥Ç¥³¥ì¡¼¥¿¡¼ ¤òÀßÄꤷ¤Þ¤¹¡£

1.[¥³¥ó¥Æ¥ó¥Ä ¥Ö¥é¥¦¥¶] ¤Î [Content]>[ThirdPersonBP]>[Blueprints] ¤Î²¼¤Ë¤¢¤ë ThirdPersonCharacter ¥Ö¥ë¡¼¥×¥ê¥ó¥È ¤ò³«¤­¤Þ¤¹¡£

[Details] ¥Ñ¥Í¥ë¤Ç¡¢ ¥¿¥° ¤ò¸¡º÷¤·¤ÆÄɲä·¡¢ ¡ÖPlayer¡× ¤ËÀßÄꤷ¤Þ¤¹¡£

¤³¤Î¡ÖPlayer¡×¤Î¥¿¥°¤òÄɲ乤ë¤È¡¢AI ¤¬¥×¥ì¡¼¥ä¡¼¤òǧ¼±¤·¤ÆÈ¿±þ¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

2.¡ÖAI¡×¥Õ¥©¥ë¥À¤ÎÃæ¤Ë¤¢¤ë Enemy_Character ¥Ö¥ë¡¼¥×¥ê¥ó¥È¤ò³«¤­¤Þ¤¹¡£

3.[Details] ¥Ñ¥Í¥ë¤Ç [Rotation] ¤òõ¤·¤Æ¡¢ [Use Controller Rotation Yaw] ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£


¤³¤ì¤Ë¤è¤ê¡¢ ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤«¤é Rotate to Face BB Entry ¤¬¸Æ¤Ó½Ð¤µ¤ì¤¿¤È¤­¤Ë AI ¤¬Àµ¤·¤¯²óž¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
Pawn ¥ª¥×¥·¥ç¥ó¤¬É½¼¨¤µ¤ì¤Ê¤¤¾ì¹ç¤Ï¡©ºÇ½é¤Ë¥Ä¡¼¥ë¥Ð¡¼¤Î [Class Defaults] ¥Ü¥¿¥ó¤ò¥¯¥ê¥Ã¥¯¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

4.BT_Enemy ¤ò³«¤¤¤Æ [Chase Player] ¤ò±¦¥¯¥ê¥Ã¥¯¤·¡¢ [Add Decorator...] ¤Î²¼¤Î [Blackboard] ¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£


¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Ç¥Î¡¼¥É¤ò±¦¥¯¥ê¥Ã¥¯¤¹¤ë¤È¡¢Äɲõ¡Ç½¤òÄ󶡤¹¤ë¥µ¥Ö¥Î¡¼¥É¤òÄɲäǤ­¤Þ¤¹¡£

¥µ¥Ö¥Î¡¼¥É
  • ¥Ç¥³¥ì¡¼¥¿¡¼
¡¡¡¡¡¡¡¡¾ò·ï¼°¤È¤â¸Æ¤Ð¤ì¤Þ¤¹¡£
¡¡¡¡¡¡¡¡Ê̤ΥΡ¼¥É¤Ë¥¢¥¿¥Ã¥Á¤µ¤ì¡¢¥Ä¥ê¡¼¤Î¥Ö¥é¥ó¥Á¤¢¤ë¤¤¤Ï¥Î¡¼¥É 1 ¤Ä¤Ç¤â¼Â¹Ô²Äǽ¤«¤É¤¦¤«¤ÎȽÃǤò¤¹¤ë¥Î¡¼¥É¤Ç¤¹¡£
  • ¥µ¡¼¥Ó¥¹
¡¡¡¡¡¡¡¡¤³¤ì¤é¤Ï¡¢ Task ¥Î¡¼¥É¤È Composite ¥Î¡¼¥É¤Ë¥¢¥¿¥Ã¥Á¤µ¤ì¡¢¥Ö¥é¥ó¥Á¤Î¼Â¹ÔÃæ¤ËÄêµÁ¤µ¤ì¤¿ÉÑÅ٤Ǽ¹Ԥµ¤ì¤ë¥Î¡¼¥É¤Ç¤¹¡£
¡¡¡¡¡¡¡¡Â¿¤¯¤Î¾ì¹ç¡¢ ¥Ö¥é¥Ã¥¯¥Ü¡¼¥É ¤Î³Îǧ¤ä¹¹¿·¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
¡¡¡¡¡¡¡¡¤³¤ì¤é¤Ï¡¢Â¾¤Î Behavior Tree ¥·¥¹¥Æ¥à¤Î½¾Íè¤Î Parallel ¥Î¡¼¥É¤ËÂå¤ï¤ë¤â¤Î¤Ç¤¹¡£

Blackboard ¥Ç¥³¥ì¡¼¥¿¡¼ ¤ò»ÈÍѤ·¤Æ Blackboard Key ¤ÎÃͤò·èÄꤷ¤Þ¤¹¡£
¤³¤ì¤¬Í­¸ú¤Ê¾ì¹ç¡¢¤³¤Î¥Ö¥é¥ó¥Á¤Î¼Â¹Ô¤òµö²Ä¤·¤Þ¤¹¡£

5.Äɲ䵤줿 Blackboard Based Condition ¤òÁªÂò¤·¡¢ [Details] ¥Ñ¥Í¥ë¤Ç°Ê²¼¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£

  • [Observer Aborts] ¤ò ¡ÖBoth¡× ¤ËÀßÄê
  • [Blackboard Key] ¤ò ¡ÖHasLineOfSIght¡× ¤ËÀßÄê
  • [Node Name] ¤ò ¡ÖHas Line of Sight?¡× ¤ËÀßÄê
¤³¤³¤Ç¤Ï¡¢ [HasLineOfSight] ¤ÎÃͤ¬¡ÖIs Set¡×¤Î¾ì¹ç (¤Þ¤¿¤Ï¡¢true) ¤Ë¤Ï¡¢¤³¤Î Chase Player ¥Ö¥é¥ó¥Á¤ò¼Â¹Ô¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Æ¤¤¤Þ¤¹¡£
[Observer aborts] ¤ÎÀßÄ꤬¡ÖBoth¡×¤Î¾ì¹ç¤Ï¡¢ Blackboard Key ¤ËÊѹ¹¤ò³ä¤êÅö¤Æ¤ë¤È¡¢¼«Ê¬¼«¿È (Chase Player) ¤È¤½¤ì¤è¤ê¤âÍ¥ÀèÅÙ¤ÎÄ㤤¥¿¥¹¥¯¤òÃæ»ß¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢ HasLineOfSight ¤ÎÃͤ¬Êѹ¹¤µ¤ì¤ÆÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¼«¿È (Chase Player) ¤òÃæ»ß¤·¡¢¤½¤Î»þÅÀ¤Ç¼¡¤Î¥Ö¥é¥ó¥Á (Patrol) ¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
HasLineOfSight Ãͤ¬ºÆ¤Ó¡ÖIs Set¡×¤Ë¤Ê¤ë¤È¡¢Observer ¤ÏÍ¥ÀèÅÙ¤ÎÄ㤤¥¿¥¹¥¯¤òÃæ»ß¤·¡¢ºÆÅÙ Chase Player ¥Ö¥é¥ó¥Á¤ò¼Â¹Ô¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

6.¥¨¥Ç¥£¥¿¤Ç [Compile] ¤ò¥¯¥ê¥Ã¥¯¤·¤Æ¡¢ ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤òÊĤ¸¡¢ [Play] ¤·¤Þ¤¹¡£

ºÇ½ª·ë²Ì

¤³¤ì¤Ç AI ¤ò¥Æ¥¹¥È¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¡¢AI ¤¬¥æ¡¼¥¶¡¼¤òǧ¼±¤·¤¿¤È¤­¤ËÄÉÀפò»Ï¤á¤Þ¤¹¡£
AI ¤Ï¡¢¥æ¡¼¥¶¡¼¤ò¸«¼º¤Ã¤¿¾ì¹ç¤Ç¤â¡¢¥æ¡¼¥¶¡¼¤òÄÉÀפ·¤Æ»ëÀþ¤ò¼è¤êÌ᤽¤¦¤È¤·¤Þ¤¹¡£
Line Of Sight Timer ¤ÎÃͤËÆþÎϤ·¤¿»þ´Ö¤¬²á¤®¤ë¤È¡¢ÄÉÀפòÄü¤á¤Æ¥Ñ¥È¥í¡¼¥ë¤ËÌá¤ê¤Þ¤¹¡£

ºÆÀ¸Ãæ¤ËÆ°ºîÃæ¤Î ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤ò¸«¤Æ¡¢¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼¤¬¥Ö¥é¥ó¥Á´Ö¤Ç¤É¤Î¤è¤¦¤ËÀÚ¤êÂؤï¤ë¤«¤ò³Îǧ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
ºÆÀ¸Ãæ¤Ë ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ Æâ¤ÇÊÑ¿ô¤ò´Æ»ë¤·¤Æ¡¢AI ¤Î¸½ºßÃͤòÃΤ뤳¤È¤â¤Ç¤­¤Þ¤¹¡£

¢£8 - ±þÍÑÊÔ

¤³¤ì¤Ç¡¢AI ¥­¥ã¥é¥¯¥¿¡¼¤¬¥×¥ì¡¼¥ä¡¼¤òÄÉÀפ·¡¢»ØÄꤵ¤ì¤¿»þ´ÖÆâ¤Ë¥×¥ì¡¼¥ä¡¼¤ò¸«¼º¤Ã¤¿¸å¤ÏºÆ¤Ó½ä²ó¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¤Î¤Ç¡¢¼¡¤ÎÍ×ÁǤò ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤ËÄɲ䷤ƤߤƤ¯¤À¤µ¤¤¡£

  • ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Ç¡¢Î¾Êý¤Î Move To ¥¿¥¹¥¯¤Ë¡¢¤½¤ì¤ËÀè¹Ô¤¹¤ë ¥¿¥¹¥¯ ¤«¤é¤Îµ¡Ç½¤òÁȤ߹þ¤ó¤À¿·¤·¤¤ ¥µ¡¼¥Ó¥¹ ¤òÄɲä·¤Þ¤¹¡£
    • ¥ª¥ê¥¸¥Ê¥ë¤Î ¥Ó¥Ø¥¤¥Ó¥¢¥Ä¥ê¡¼ ¤Ï¡¢°Üư®ÅÙ¤òÄ´À°¤· (¥×¥ì¥¤¥ä¡¼¤òÄɤ¤¤«¤±¤ë¾ì¹ç)¡¢¥é¥ó¥À¥à¤Ë°ÜÆ°¤¹¤ë°ÌÃÖ¤òõº÷¤·¤¿¤ê°Üư®ÅÙ¤òÃÙ¤¯¤¹¤ë¤¿¤á (¥Ñ¥È¥í¡¼¥ë¤Î¾ì¹ç) ¤Ë¡¢ÊÌ¡¹¤Î ¥¿¥¹¥¯ ¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤ì¤é¤ò Move To ¥¿¥¹¥¯ ¤Ë¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë ¥µ¡¼¥Ó¥¹ ¤ËÊÑ´¹¤·¤Þ¤¹¡£
    • ¥Ò¥ó¥È¡§ ³Æ ¥µ¡¼¥Ó¥¹ ¤Î¥¹¥¯¥ê¥×¥È¤Ï³Æ ¥¿¥¹¥¯ ¤Î¥¹¥¯¥ê¥×¥È¤Ë»÷¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¢ Event Receive Execute AI ¤ÎÂå¤ï¤ê¤Ë Event Receive Activation AI ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹¡£¤Ê¤¼¤Ê¤é¤³¤ì¤é¤Ï ¥µ¡¼¥Ó¥¹ ¤Ç¤¢¤ë¤¿¤á¡¢ Finish Execute ¥Î¡¼¥É¤âɬÍפ¢¤ê¤Þ¤»¤ó¡£
  • ¥é¥ó¥À¥à¤Ê¥Ñ¥È¥í¡¼¥ëÃÏÅÀ¤ò»ÈÍѤ·¤Æ°ÜÆ°¤¹¤ëÂå¤ï¤ê¤Ë¡¢AI ¤¬°ÜÆ°¤Ç¤­¤ë¥Ù¥¯¥¿¡¼ÃͤÎÇÛÎó ÊÑ¿ô¤ò´Þ¤à Patrol Path ¥Ö¥ë¡¼¥×¥ê¥ó¥È ¤òºîÀ®¤·¤Þ¤¹¡£
    • ¥Ò¥ó¥È¡§ ½ä²ó¤·¤ÆÇÛÎóÆâ¤Î¼¡¤Î¥¨¥ó¥È¥ê¤ò¼èÆÀ¤·¡¢¤½¤Î°ÌÃÖ´Ö¤Ç AI ¤ò°ÜÆ°¤µ¤»¤Æ¤«¤é¡¢ÇÛÎóÆâ¤Î¸½ºß¤Î¥¨¥ó¥È¥ê¤Ë´ð¤Å¤¤¤Æ Blackboard Key ¤ÎÃͤΠPatrolLocation ¤ò¹¹¿·¤·¤Þ¤¹¡£
  • ¥×¥ì¡¼¥ä¡¼¤Î»ëÀþ¤¬¼º¤ï¤ì¤¿¾ì¹ç¤Ï¡¢¥×¥ì¡¼¥ä¡¼¤Î¸½ºß¤Î¾ì½ê¤ò¼èÆÀ¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢AI ¤ò¥×¥ì¡¼¥ä¡¼¤ÎºÇ¸å¤Î´ûÃΤΰÌÃ֤˰ÜÆ°¤·¤Þ¤¹¡£
    • ¥Ò¥ó¥È¡§ Turning and Chasing the Player ¤Î Move To ¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¸½ºß (¥×¥ì¡¼¥ä¡¼¤Î¸½ºß¤Î°ÌÃÖ¤ò¼èÆÀ¤¹¤ë) EnemyActor ¤Î°ÌÃÖ¤ò¼èÆÀ¤¹¤ë¤è¤¦¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¤¿¤á¡¢ EnemyActor ¤ÎÂå¤ï¤ê¤Ë°ÌÃÖ¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
  • ¥×¥ì¥¤¥ä¡¼¤ËÀÜ¿¨¤·¤¿¤é¡¢AI ¤Ë¥¢¥¿¥Ã¥¯µ¡Ç½¤òÄɲä·¤Þ¤¹¡£
    • ¥Ò¥ó¥È¡§ Turning and Chasing the Player ¤Î Background ¥¿¥¹¥¯ ¤È¤·¤Æ¿·¤·¤¤ Composite ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£AI ¤¬¥×¥ì¡¼¥ä¡¼¤ËÀÜ¿¨¤·¤¿¤é¡¢¥¢¥¿¥Ã¥¯ ¥¢¥Ë¥á¡¼¥·¥ç¥óÍѤΠTask ¥Î¡¼¥É¤òÄɲä·¤Þ¤¹¡£

INDEX

¢£Unreal Engine 5 ³Ð½ñ ¢£UnrealEngineJP¡Ú¸ø¼°¡ÛYoutube
¢£miniGame ¢£UMG ¢£Save&Load ¢£¥­¥ã¥é¥¯¥¿¡¼ ¢£Navigation ¢£¥Ý¥¹¥È¥×¥í¥»¥¹ ¢£Environment ¢£¥Þ¥Æ¥ê¥¢¥ë ¢£¥·¥Í¥Þ¥Æ¥£¥¯¥¹ ¢£¥¢¥Ë¥á¡¼¥·¥ç¥ó¡ÚUE5/UE4¡Û
¢£Æ°²è ¢£Enemy ¢£¥¢¥¯¥·¥ç¥ó ¢£¹¶·â ¢£¥®¥ß¥Ã¥¯ ¢£¥×¥é¥°¥¤¥ó ¢£¥Î¥Ù¥ë
¢£Blender

¡Ú¥á¥Ë¥å¡¼ÊÔ½¸¡Û

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