ºÇ½ª¹¹¿·¡§
orika_ex_miyako 2023ǯ03·î20Æü(·î) 14:43:42ÍúÎò
¡¡¥²¡¼¥à³«È¯¤Ç¤Ï¡¢Ê£¿ô¤Î¥·¡¼¥ó¤ä¥ì¥Ù¥ë¤¬Â¸ºß¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
¥·¡¼¥óÆâ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢¤½¤Î¥·¡¼¥ó¤Ë¸ºß¤¹¤ë¤¿¤á¡¢¥×¥ì¥Ï¥Ö¤ò»È¤Ã¤Æ¤â¥·¡¼¥óÆâ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÈľÀÜ´ØÏ¢ÉÕ¤±¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
¤·¤«¤·¡¢¥·¡¼¥ó³°¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï¡¢Ä¾ÀÜ´ØÏ¢ÉÕ¤±¤¬¤Ç¤¤Þ¤»¤ó¡£
¡¡ºÇ½é¤«¤é¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈƱ»Î¤Ï¥¢¥µ¥¤¥ó¤ò¤·¤¿¤ê¤·¤Æ¡¢Â¾¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ðÊó¤Î´ØÏ¢ÉÕ¤±¤¬½ÐÍè¤Þ¤¹¡£
¤Ç¤¹¤¬¡¢¥²¡¼¥à¼Â¹Ô¸å¤ËÀ¸À®¤µ¤ì¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¤Ï»öÁ°¤Ë´ØÏ¢ÉÕ¤±¤¬½ÐÍè¤Þ¤»¤ó¡£
¡¡¤Ä¤Þ¤ê¡¢¥×¥ì¥Ï¥Ö¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò»È¤Ã¤Æ¡¢¥²¡¼¥à¼Â¹Ô¸å¤Ë¥¹¥¯¥ê¥×¥È¤«¤éưŪ¤ËÀ¸À®¤·¤¿¥×¥ì¥Ï¥Ö¤Î¥¯¥í¡¼¥ó¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢
¥·¡¼¥ó¥Ó¥å¡¼¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¤ÏľÀÜ´ØÏ¢ÉÕ¤±¤é¤ì¤Ê¤¤¤¿¤á¡¢¥¹¥¯¥ê¥×¥È¤ò»È¤Ã¤ÆÀßÄê¤ò¹Ô¤¦É¬Íפ¬¤¢¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£
¡¡¤Þ¤º¡¢¥×¥ì¥Ï¥Ö¤Î»ÅÍͤòÍý²ò¤·¤Æ¤ª¤¯¤³¤È¤¬ÂçÁ°Äó¤Ç¤¹¡£
¡¡¥×¥ì¥Ï¥Ö¤È¤Ï¡¢¤¢¤é¤«¤¸¤áºîÀ®¤·¤¿¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤ä¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÊݸ¤·¡¢¤½¤ÎÀßÄê¤ò¤â¤È¤ËƱ¤¸¤â¤Î¤ò´Êñ¤ËºîÀ®¤Ç¤¤ë¤â¤Î¤Ç¤¹¡£
¡¡ÂçÊÑÊØÍø¤Êµ¡Ç½¤Ç¤¹¤¬¡¢¥×¥ì¥Ï¥Ö¤Ë¤·¤¿¤È¤¤Ë¡¢¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥µ¥¤¥ó¤¬³°¤ì¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
¤³¤ì¤Ï¥×¥ì¥Ï¥Ö¤Î»ÅÍͤǤ¹¤Î¤Ç¡¢²óÈò¤¹¤ëÊýË¡¤Ï¤¢¤ê¤Þ¤»¤ó¡£
¡¡¤½¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¡¢¤È¤¤¤¦¤³¤È¤òÍý²ò¤·¤¿¾å¤Ç¡¢¤Ç¤Ï¤É¤¦¤¹¤ë¤Î¤«¡¢¤ò¹Í¤¨¤Æ¤¤¤¤Þ¤¹¡£
¡¡¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈƱ»Î¤ÏÌäÂê¤Ê¤¯¡¢¥¢¥µ¥¤¥ó¤·¤Æ¤ª¤¯¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
°Ê²¼¤ÎÎã¤Ç¤Ï¡¢GameManager ¤Ë Cinemachine ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¹¥¯¥ê¥×¥È¤Î¾ðÊ󤬥¢¥µ¥¤¥ó¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¡¡¤³¤ì¤Ï¤ª¸ß¤¤¤Ë¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈƱ»Î¤Ç¤¢¤ë¤¿¤á¤Ç¤¹¡£

¡¡ÌäÂê¤Ï¥×¥ì¥Ï¥Ö¤Ç¤¹¡£
¡¡Àè¤Û¤É¤âÀâÌÀ¤·¤¿Ä̤ꡢ¥×¥ì¥Ï¥Ö¤Ë¤·¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢¥·¡¼¥ó¥Ó¥å¡¼¤Ë¤¢¤ë(¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë)¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ðÊó¤ò¼º¤¤¤Þ¤¹¡£
¤³¤ì¤Ï¡¢¥·¡¼¥ó¥Ó¥å¡¼¤È¥×¥ì¥Ï¥Ö¤Ï°Û¤Ê¤ë¾ì½ê¤Ç´ÉÍý¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢´ØÏ¢ÉÕ¤±¤ò¤¹¤ë¤³¤È¤¬¤Ç¤¤Ê¤¯¤Ê¤ë¤¿¤á¤Ç¤¹¡£
¡¡²¼µ¤Î¥±¡¼¥¹¤Ç¤Ï¥×¥ì¥¤¥ä¡¼ÍÑ¥¥ã¥é¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥×¥ì¥Ï¥Ö¤Ë¤·¤¿¾ì¹ç¤Ç¤¹¡£
¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ðÊ󤬼èÆÀ¤Ç¤¤Ê¤¤¤Î¤Ç¡¢Camera ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥µ¥¤¥ó¤¬³°¤ì¤Æ¤¤¤Þ¤¹¡£
¡ã¥¢¥µ¥¤¥ó¤·¤Æ¤¤¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ì¹ç¡ä

¡¡¡¡¢
¡ã¥×¥ì¥Ï¥Ö¤Ë¤¹¤ë¤È¡¢¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥µ¥¤¥ó¤¬³°¤ì¤Æ¤·¤Þ¤¦¡ä

¡¡¤³¤ì¤ÏµÕ¤Î¾ì¹ç¤âƱ¤¸¤Ç¡¢¥×¥ì¥Ï¥Ö¤Ë¤·¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥·¡¼¥ó¥Ó¥å¡¼¤«¤éºï½ü¤·¤¿¤È¤¡¢
¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÊý¤«¤é¤â¥×¥ì¥Ï¥Ö¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥µ¥¤¥ó¤¬³°¤ì¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
¡¡²¼µ¤Î¥±¡¼¥¹¤Ç¤Ï¡¢Cinemachine ¤Î Follow ¤ÎÂоݤ¬¤Ê¤¯¤Ê¤ê¡¢¥¹¥¯¥ê¥×¥È¤ÎÊý¤«¤é¤â¥¢¥µ¥¤¥ó¤¬³°¤ì¤Æ¤¤¤Þ¤¹¡£
¡ãËÜÍè¡ä


¡¡¢
¡ãFollow ¤«¤é¥×¥ì¥Ï¥Ö¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥µ¥¤¥ó¤¬³°¤ì¤Æ¤·¤Þ¤¦¡ä

¡ã¥¹¥¯¥ê¥×¥È¤Î¥¢¥µ¥¤¥ó¤«¤é¥×¥ì¥Ï¥Ö¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ðÊ󤬳°¤ì¤Æ¤·¤Þ¤¦¡ä

¡¡¥×¥ì¥Ï¥Ö¤ÏScene¥Ó¥å¡¼¤ËÇÛÃÖ¤µ¤ì¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¤ÏÊ̤ËÀ¸À®¤µ¤ì¤ë¤¿¤á¡¢À¸À®¤µ¤ì¤¿¥×¥ì¥¤¥ä¡¼¥¥ã¥é¥¯¥¿¡¼¤¬¥«¥á¥é¤ÎÄɽ¾Âоݤˤʤë¤è¤¦¤Ë¡¢¥×¥í¥°¥é¥à¾å¤ÇÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£½é¿´¼Ô¤ËÂФ·¤Æ¤Ï¡¢¥×¥ì¥Ï¥Ö¤¬Scene¥Ó¥å¡¼¤ËÇÛÃÖ¤µ¤ì¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¤ÏÊ̤˸ºß¤¹¤ë¤È¤¤¤¦³µÇ°¤ä¡¢¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀ¸À®¤ÈÀßÄê¤Î»ÅÊý¤ò¤ï¤«¤ê¤ä¤¹¤¯ÀâÌÀ¤¹¤ë¤³¤È¤¬É¬ÍפǤ¹¡£
¡¡º£²ó¤Ï¡¢¥×¥ì¥Ï¥Ö¤Î¥¢¥µ¥¤¥ó³°¤ì¤È¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥µ¥¤¥ó³°¤ì¤Î²ò¾Ã¤ò¹Ô¤¤¤Þ¤¹¡£
¡¡GameManager¡¢¥×¥ì¥¤¥ä¡¼ÍÑ¥¥ã¥é¡¢¥«¥á¥é¤Î£³¤Ä¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¤¢¤ê¡¢¤½¤ì¤¾¤ì¤ËÌò³ä¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ëÁÛÄê¤Ç¤¹¡£
¤³¤Î¤¦¤Á¡¢¥×¥ì¥¤¥ä¡¼ÍÑ¥¥ã¥é¤Î¤ß¤¬¥×¥ì¥Ï¥Ö¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢GameManager ¤È¥«¥á¥é¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¥·¡¼¥ó¥Ó¥å¡¼¤Ë¤¢¤ê¤Þ¤¹¡£
¡¡À¸À®½èÍý¤ò¹Ô¤¦¥¹¥¯¥ê¥×¥ÈÆâ¤Ë¤ª¤¤¤Æ¡¢Â³¤±¤Æ¡¢½é´üÀßÄêÍѤΥ᥽¥Ã¥É¤ò¼Â¹Ô¤·¡¢É¬ÍפȤʤë¾ðÊó¤ò°ú¿ô¤ÇÅϤ¹¤³¤È¤Ë¤è¤ê¡¢¤³¤Î¾É¾õ¤ò²ò¾Ã¤Ç¤¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢½é´üÀßÄê¤ò¹Ô¤¦¾ì¹ç¡¢¤½¤Î¥¹¥¯¥ê¥×¥ÈÆâ¤Ç¾ðÊó¤òõ¤¹¤Î¤Ç¤Ï¤Ê¤¯¡¢³°Éô¤Î¥¯¥é¥¹¤«¤é¾ðÊó¤ÎÄ󶡤ò¼õ¤±¤Æ¤½¤ì¤ò¤½¤Î¤Þ¤ÞÀßÄꤹ¤ë¡¢¤È¤¤¤¦¼êË¡¤Ç¤¹¡£
// ¥×¥ì¥Ï¥Ö¤«¤éÀ¸À® //¡¡PlayerController ¤Ë CameraController ¤Î¾ðÊó¤òÅϤ¹ playerCharaPrefab.SetUpPlayer(cameraController);¡¡
¡¡¡¡¡¡¢
[SerializeField] private CameraControllerFromCinemachine cinemachineCamera;¡¡¡¡¡¡//¡¡¢«¡¡¤³¤Î¥¢¥µ¥¤¥ó¤¬³°¤ì¤Æ¤¤¤ë private CinemachinePostProcessing postProcessing; /// <summary> /// ½é´üÀßÄê /// </summary> /// <param name="camera"></param> public void SetUpPlayer(CameraControllerFromCinemachine camera) {¡¡¡¡//¡¡¢«¡¡¤³¤³¤Î°ú¿ô¤Ë³°Éô¤Î¥¯¥é¥¹¤«¤é¥¢¥µ¥¤¥ó¤ËɬÍפʾðÊó¤ò¼õ¤±¼è¤ë // ¥á¥½¥Ã¥É¤Î°ú¿ô¤Ç¼õ¤±¼è¤Ã¤¿¾ðÊó¤òÂåÆþ¡¡=>¡¡PlayerController ¤¬ Find ¥á¥½¥Ã¥É¤Ê¤É¤ò»È¤Ã¤Æ¾ðÊó¤òõ¤µ¤Ê¤¯¤Æ¤â¡¢³°¤ì¤Æ¤¤¤ë¥¢¥µ¥¤¥ó¤Ë¾ðÊó¤ò¼èÆÀ½ÐÍè¤ë cinemachineCamera = camera; // ¥á¥½¥Ã¥É¤Î°ú¿ô¤Ç¼õ¤±¼è¤Ã¤¿¾ðÊó¤ò»È¤¦¡¡=>¡¡PlayerController ¤¬ Find ¥á¥½¥Ã¥É¤Ê¤É¤ò»È¤Ã¤Æ¾ðÊó¤òõ¤µ¤Ê¤¯¤Æ¤âºÑ¤à¤è¤¦¤Ë¤Ê¤ë camera.TryGetComponent(out postProcessing); (¾Êά) }
¡¡¤³¤Î¤è¤¦¤Ë¥á¥½¥Ã¥É¤Î°ú¿ô¤ò³èÍѤ¹¤ë¤³¤È¤Ç¡¢¹çÍýŪ¡¢¸úΨŪ¤Ê½èÍý¤¬¹½ÃۤǤ¤Þ¤¹¡£
¡¡Instantiate ¥á¥½¥Ã¥É¤Ç¤Ï¥¯¥é¥¹¤Î¾ðÊó¤òÍøÍѤ·¤ÆÀ¸À®¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¤¿¤á¡¢GameObject ·¿¤Ç¤Ï¤Ê¤¯¡¢À¸À®¤¹¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤·¤Æ¤¤¤ë¥¯¥é¥¹¤Î·¿¤ÇÀ¸À®¤·¤Þ¤¹¡£
¤½¤¦¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢GetComponent ¥á¥½¥Ã¥É¤ò»È¤ï¤Ê¤¯¤Æ¤â¤¹¤°¤Ë¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤ËÌ¿Îá¤ò¼Â¹Ô¤Ç¤¤Þ¤¹¡£
¡¡Instantiate ¥á¥½¥Ã¥É¤Ë¤ÏÌá¤êÃͤ¬¤¢¤ê¡¢¥¯¥í¡¼¥ó¤ÎÀ¸À®¤ò¹Ô¤¦¤È¤È¤â¤Ë¡¢À¸À®¤ò¹Ô¤Ã¤¿·¿¤òÌá¤êÃͤȤ·¤Æº¸ÊÕ¤ØÌᤷ¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢GameObject ·¿¤Ç¥¯¥í¡¼¥ó¤ÎÀ¸À®¤ò¹Ô¤¦¤È¡¢GameObject ·¿¤¬Ìá¤êÃͤȤ·¤ÆÌᤵ¤ì¤Þ¤¹¡£
¡¡¤³¤Îµ¡Ç½¤Ï GameObject ·¿¤Ë¤Ï¸Â¤é¤Ê¤¤¤¿¤á¡¢¥¯¥í¡¼¥ó¤ÎÀ¸À®¤ò¹Ô¤¤¤¿¤¤¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¡¢¼«ºî¤·¤¿¥¹¥¯¥ê¥×¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï
¤½¤Î¥¹¥¯¥ê¥×¥È¤ò»È¤Ã¤Æ¡¢¥¯¥í¡¼¥ó¤ÎÀ¸À®¤ò¹Ô¤¦¤È¤È¤â¤Ë¡¢¤½¤Î¥¹¥¯¥ê¥×¥È¤Î·¿¤òÌá¤êÃͤȤ·¤ÆÌ᤹¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¤³¤Î¾ì¹ç¡¢º¸ÊÕ¤ËÍÑ°Õ¤¹¤ë·¿¤â¥¹¥¯¥ê¥×¥È¤Î·¿¤òÍÑ°Õ¤¹¤ë¤³¤È¤ÇÌá¤êÃͤò¼õ¤±¤È¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡£
¡ãGameObject·¿¤Ç¤Î¥¤¥ó¥¹¥¿¥ó¥¹½èÍý¡ä
[SerializeField] private GameObject playerCharaPrefab; [SerializeField] private Transform startTran; // PlayerÍѤΥ¥ã¥é¤ÎÀ¸À® GameObject playerChara = Instantiate(playerCharaPrefab, startTran.position, Quaternion.identity); // PlayerController ¥¹¥¯¥ê¥×¥È¤ò¼èÆÀ PlayerController playerController = playerChara.GetComponent<PlayerController>(); // PlayerController ¤ÎÀßÄê¤ò¹Ô¤¦ playerController.SetUpPlayer([ÀßÄꤷ¤¿¤¤¾ðÊó¤òÅϤ¹]);
¡¡¡¡¡¡¢
¡ã¥¯¥é¥¹¤Ç¤Î¥¤¥ó¥¹¥¿¥ó¥¹½èÍý¡ä
[SerializeField] private PlayerController playerCharaPrefab;¡¡¡¡//¡¡GameObject ·¿¤Ç¤Ï¤Ê¤¯¥¯¥é¥¹¤Ç¥¢¥µ¥¤¥ó¤·¤Æ¤ª¤¯ // PlayerÍѤΥ¥ã¥é¤ÎÀ¸À® PlayerController playerChara = Instantiate(playerCharaPrefab, startTran.position, Quaternion.identity);¡¡¡¡//¡¡PlayerController ·¿¤Ç¥¤¥ó¥¹¥¿¥ó¥¹²½¤µ¤ì¤ë // PlayerController ¤ÎÀßÄê¤ò¹Ô¤¦ playerController.SetUpPlayer([ÀßÄꤷ¤¿¤¤¾ðÊó¤òÅϤ¹]);¡¡¡¡//¡¡GetComponent ¤Î½èÍý¤¬¾Êά¤Ç¤¤ë
¡¡°ã¤¤¤È¤·¤Æ¤Ï¡¢¥×¥ì¥Õ¥¡¥Ö¤È¤·¤ÆÅÐÏ¿¤¹¤ëºÝ¤Î·¿¤ä¡¢¥¤¥ó¥¹¥¿¥ó¥¹½èÍý¤ÎºÝ¤Îº¸ÊÕ¤ËÍÑ°Õ¤¹¤ë·¿¤¬°Û¤Ê¤ê¤Þ¤¹¡£
¡¡¤½¤·¤ÆºÇ¤âÂ礤ʰ㤤¤Ï¡¢GetComponent¥á¥½¥Ã¥É¤Î½èÍý¤¬¤Ê¤¤¤¬¡¢Àµ¾ï¤ËÆ°ºî¤¹¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£
²¼¤Î¼«ºî¥¯¥é¥¹¤Ç¥¤¥ó¥¹¥¿¥ó¥¹½èÍý¤ò¤·¤¿¾ì¹ç¤Ë¤Ï¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¯¥í¡¼¥ó¤òÀ¸À®¤¹¤ëÉôʬ¤ÏƱ¤¸¤Ç¤¹¤¬¡¢
Ìá¤êÃͤȤ·¤Æ PlayerController ¥¯¥é¥¹¤ò¼õ¤±¼è¤Ã¤Æ¤¤¤ë¤¿¤á¡¢GetComponent ¥á¥½¥Ã¥É¤ò¼Â¹Ô¤»¤º¤È¤â¡¢¤½¤Î¥¹¥¯¥ê¥×¥È¤Î¾ðÊó¤ò¼«Æ°Åª¤Ë¼èÆÀ½ÐÍè¤Æ¤¤¤Þ¤¹¡£
¡¡¤³¤Î¤è¤¦¤Ë GetComponent ¥á¥½¥Ã¥É½èÍý¤ò¾Êά¤¹¤ë½èÍý¤ò½ñ¤¯¤³¤È¤Ç¡¢½èÍýŪ¤Ë½Å¤¤ GetComponent ½èÍý¤ÎÉé²Ù¤ò¸º¤é¤¹¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¤â¤·¤âÀ¸À®¤·¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¯¥í¡¼¥ó¤ËÂФ·¤Æ¡¢²¿¤«½èÍý¤ò¹Ô¤¤¤¿¤¤¤è¤¦¤Ê¾ì¹ç¤Ë¤Ï¡¢GameObject·¿¤À¤±¤Ç¤Ï¤Ê¤¯¡¢¼«ºî¥¯¥é¥¹¤Ë¤ÆÀ¸À®¤¹¤ë¤³¤È¤âǰƬ¤ËÃÖ¤¤¤ÆÀ߷פ·¤Æ¤ª¤¤Þ¤·¤ç¤¦¡£
¡¡¤³¤Î»È¤¤Êý¤Ï Unity ¤Î¥Þ¥Ë¥å¥¢¥ë¤Ë¤âµºÜ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
Æɤó¤Ç¤ª¤¯¤È¤è¤¤¤Ç¤·¤ç¤¦¡£
»²¹Í¥µ¥¤¥È
Unity ¸ø¼°¥Þ¥Ë¥å¥¢¥ë
Object.Instantiate
¡¡Start¥á¥½¥Ã¥É¤Ç¤Î½é´üÀßÄ꤬ɬÍפÊÊ£¿ô¤Î¥¯¥é¥¹¤¬¤¢¤ë¾ì¹ç¡¢¤½¤ì¤¾¤ì¤Î¥¯¥é¥¹¤ÇStart¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤Ç½é´üÀßÄê¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
¤·¤«¤·¡¢GameManager¤È¤¤¤Ã¤¿°ì¤Ä¤Î¥¯¥é¥¹¤Ë½é´üÀßÄê¤ò¤Þ¤È¤á¤ë¤³¤È¤Ç¡¢½é´üÀßÄê¤Î°ì´ÓÀ¤òÊݤÁ¤ä¤¹¤¯¤Ê¤ê¡¢¥³¡¼¥É¤ÎÊݼéÀ¤ä³ÈÄ¥À¤¬¹â¤¯¤Ê¤ë¤È¤¤¤¦ÍøÅÀ¤¬¤¢¤ê¤Þ¤¹¡£
¡¡¥¤¥á¡¼¥¸¤È¤·¤Æ¤Ï¡¢GameManager ¤Î Start ¥á¥½¥Ã¥É¤¬¥²¡¼¥àÆâ¤Î½èÍý¤Îµ¯ÅÀ¤È¤Ê¤ê¡¢¤³¤ÎÃÏÅÀ¤«¤é¥È¥Ã¥×¥À¥¦¥ó·¿¤ÎÌ¿Îá·ÏÅý¤ò¹½ÃÛ¤¹¤ë·Á¤Ç¤¹¡£
¤³¤Î¤è¤¦¤Ë½èÍý¤Îµ¯ÅÀ¤ò£±²Õ½ê¤Ë¤¹¤ë¤³¤È¤Ç¡¢³Æ¥¯¥é¥¹¤¬ Start ¥á¥½¥Ã¥É¤ò»È¤Ã¤Æ¤½¤ì¤¾¤ìÆ°¤½Ð¤¹Êý¼°¤Ç¤Ï¤Ê¤¯¡¢¤³¤Îµ¯ÅÀ¤ÎÉôʬ¤«¤é½çÈ֤˽èÍý¤ò¼Â¹Ô¤µ¤»¤Æ¤¤¤¯Êý¼°¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¤½¤Î¤¿¤á¡¢GameManager °Ê³°¤Î³Æ¥¯¥é¥¹¤Ç¤Ï Start ¥á¥½¥Ã¥É¤Ç¤Ï¤Ê¤¯¡¢GameManager ¤«¤é¼Â¹Ô¤·¤Æ¤â¤é¤¦¤¿¤á¤Î½é´üÀßÄêÍѤΥ᥽¥Ã¥É¤òÍÑ°Õ¤·¤Æ¤ª¤¡¢
¤½¤³¤ËÂФ·¤ÆÌ¿Îá¤ò¼õ¤±¤ë¤³¤È¤Ç Start ¥á¥½¥Ã¥É¤Î¤è¤¦¤ËÍøÍѤ¹¤ëÊý¼°¤Ç¤¹¡£
¡¡½èÍý¤Îή¤ì¤¬²Ä»ë²½¤Ç¤¤ë¤¿¤á¡¢¤è¤êÀß·×¼Ô¤ÎÁÛÄꤷ¤Æ¤¤¤ë½èÍý¤Îή¤ì¤Ç³Æ¥¯¥é¥¹¤ÎÀ©¸æ¤ò¹Ô¤¦¤³¤È¤¬½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
¥¹¥¯¥ê¥×¥È¤«¤éÀ¸À®¤·¤¿¥×¥ì¥Ï¥Ö¤ËÂФ·¤Æ¡¢¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òưŪÀßÄꤹ¤ë 
¡¡º£¤Þ¤Ç¤ÎÀâÌÀ¤òǰƬ¤ËÃÖ¤¡¢¥¹¥¯¥ê¥×¥È¤Î¥µ¥ó¥×¥ë¤òÄ󼨤·¤Þ¤¹¡£
¡¡À¸À®¤µ¤ì¤¿¥×¥ì¥Ï¥Ö¤Ë¥Ò¥¨¥é¥ë¥¡¼¥¦¥£¥ó¥É¥¦Æâ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¥¢¥µ¥¤¥ó¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥¹¥¯¥ê¥×¥È¤ò»È¤Ã¤ÆưŪ¤ËÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¶ñÂÎŪ¤Ë¤Ï¡¢¥×¥ì¥Ï¥Ö¤òÀ¸À®¤¹¤ë¥¹¥¯¥ê¥×¥È¤ÎÃæ¤Ç¡¢À¸À®¤µ¤ì¤¿¥×¥ì¥Ï¥Ö¤Ë¥¢¥¯¥»¥¹¤·¤Æ¡¢É¬Íפʥ³¥ó¥Ý¡¼¥Í¥ó¥È¤äÊÑ¿ô¤ËÂФ·¤ÆÃͤòÀßÄꤹ¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
¡¡¤³¤Î½èÍý¤Ï¡¢GameManager¡¢PlayerController¡¢CameraController¤Î3¤Ä¤Î¥¯¥é¥¹¤«¤é¹½À®¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¡¡GameManager¤Ï¡¢¥×¥ì¥¤¥ä¡¼¥¥ã¥é¥¯¥¿¡¼¤Î¥»¥Ã¥È¥¢¥Ã¥×¡¢¥«¥á¥é¤Î¥¿¡¼¥²¥Ã¥È¤òÀßÄꤷ¤Þ¤¹¡£
¡¡PlayerController¤Ï¡¢¥×¥ì¥¤¥ä¡¼¥¥ã¥é¥¯¥¿¡¼¤Î°ÜÆ°¡¢¥À¥Ã¥·¥å¡¢¹¶·â¤Ê¤É¤òÀ©¸æ¤·¡¢Cinemachine¥Ý¥¹¥È¥×¥í¥»¥¹¤ÎVignette¤òÀ©¸æ¤·¤Þ¤¹¡£
¡¡CameraController¤Ï¡¢Cinemachine¤ò»ÈÍѤ·¤Æ¥×¥ì¥¤¥ä¡¼¤òÄÉÀפ·¡¢¥«¥á¥é¤Î»ëÌî¤òÀ©¸æ¤·¤Þ¤¹¡£
¡¡GameManager ¤Ï¾¤Î£²¤Ä¤Î¥¯¥é¥¹¤ËÌ¿Îá¤ò½Ð¤¹µ¯ÅÀ¤È¤Ê¤ë¤¿¤á¡¢Á°Äó¤È¤·¤Æ¾¤Î¥¯¥é¥¹¤¬É¬Íפˤʤê¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢GameManager °Ê³°¤Î¥¯¥é¥¹¤«¤éºîÀ®¤ò¹Ô¤¤¤Þ¤¹¡£
¡¡PlayerController ¥¯¥é¥¹¤â¡¡CameraController ¥¯¥é¥¹¤Î¾ðÊó¤¬É¬ÍפȤʤäƤ¤¤ë¤¿¤á¡¢
ºîÀ®½ç¤Ï¡¢CameraController ¢ª PlayerController ¢ª GameManager ¤Î½ç¤Ë¤Ê¤ê¤Þ¤¹¡£
CameraControllerFromCinemachine.cs
PlayerController.cs
¡¡ºÇ¸å¤Ë GameManager ¤òºîÀ®¤·¡¢¤³¤³¤«¤é¡¢Àè¤Û¤É¤Î£²¤Ä¤Î¥¯¥é¥¹¤ËÂФ·¤ÆÌ¿Îá¤ò¼Â¹Ô¤·¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢º£²ó¤ÎÀßÄê¤Ë¤ª¤¤¤Æ¤Ï¡¢Start ¥á¥½¥Ã¥É¤Ï¤³¤Î¥¯¥é¥¹¤Ë¤·¤«¤Ê¤¤¾õÂÖ¡¢¤³¤³¤¬½èÍý¤Îµ¯ÅÀ¤È¤Ê¤ë¾ì½ê¤Ç¤¹¡£
¡¡¤³¤³¤Ç¤Ï¥×¥ì¥¤¥ä¡¼ÍÑ¥¥ã¥é¤Î¥×¥ì¥Ï¥Ö¡¢À¸À®°ÌÃÖ¡¢¥«¥á¥é¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ê¤É¤Î¾ðÊó¤ò¥¢¥µ¥¤¥ó¤·¤Æ¤ª¤¤Þ¤¹¡£
GameManager.cs
¡¡GameManager¤Î Start¥á¥½¥Ã¥É¤¬µ¯ÅÀ¤È¤Ê¤Ã¤Æ¡¢Â¾¤Î£²¤Ä¤Î¥¯¥é¥¹¤Î½é´üÀßÄêÍѤΥ᥽¥Ã¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤Þ¤¹¡£
¡¡ºÇ½é¤Ë¥×¥ì¥¤¥ä¡¼ÍÑ¥¥ã¥é¤Î¥×¥ì¥Ï¥Ö¤ò¥¤¥ó¥¹¥¿¥ó¥¹¤·¡¢¤½¤Î¸å¡¢¤½¤Î¥¯¥í¡¼¥ó¤µ¤ì¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë
PlayerController ¥¯¥é¥¹¤Î SetUpPlayer()¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¡¢°ú¿ô¤Ë CameraController ¤Î¾ðÊó¤òÅϤ¹¤³¤È¤Ç¡¢¥×¥ì¥¤¥ä¡¼¤Î¥«¥á¥é¤È¤ÎÀßÄê¤ò¼Â¹Ô¤·¡¢¥¢¥µ¥¤¥ó³°¤ì¤ò²ò¾Ã¤·¤Æ¤¤¤Þ¤¹¡£
¡¡Æ±ÍÍ¤Ë CameraController ¤Î SetUpTarget() ¥á¥½¥Ã¥É¤¬¼Â¹Ô¤µ¤ì¡¢À¸À®¤µ¤ì¤¿¥×¥ì¥¤¥ä¡¼ÍÑ¥¥ã¥é¤Î¾ðÊó¤òÅϤ¹¤³¤È¤Ç¡¢¥¢¥µ¥¤¥ó³°¤ì¤ò²ò¾Ã¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¼ÂºÝ¤ËÁÛÄꤷ¤Æ¤¤¤ëµóÆ°¤Ë¤Ê¤ë¤«³Îǧ¤·¤Þ¤¹¡£
¥Ç¥Ð¥Ã¥°¤ò¹Ô¤¦ºÝ¤Ë¤Ï¡¢¤É¤Î¤è¤¦¤ÊµóÆ°¤¬Àµ¤·¤¤¤Î¤«¤òÍý²ò¤·¤Æ¤«¤é¹Ô¤¦¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
¼Â¹Ô¤·¤ÆÆ°¤¤¤¿¤«¤é OK ¤Ç¤Ï¤Ê¤¯¡¢¤É¤¦¤¤¤¦½èÍý¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢¤³¤Î¤è¤¦¤ËÆ°¤¤¤Æ¤¤¤ë¡¢¤È¤¤¤¦ÏÀÍýŪ¤Ê¹Í¤¨Êý¤Çª¤¨¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡¤Þ¤º¤Ï¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ·¤Æ¡¢À¸À®¤µ¤ì¤¿¥×¥ì¥Ï¥Ö¤Î¾ðÊó¤¬Àµ¾ï¤Ë¥¢¥µ¥¤¥ó¤µ¤ì¤ë¤«¤ò³Îǧ¤·¤Þ¤¹¡£
¡ã¼Â¹ÔÁ°¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü¡ä

¡ã¼Â¹Ô¸å¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü¡ä

¡ã¼Â¹ÔÆ°²è¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¡¡Æ±¤¸¤è¤¦¤ËÀ¸À®¤µ¤ì¤¿¥×¥ì¥Ï¥Ö¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥µ¥¤¥ó¤â³Îǧ¤·¤Þ¤¹¡£
¥×¥ì¥Ï¥Ö¤ÎºÝ¤Ë¤Ï³°¤ì¤Æ¤¤¤¿¡¢¥Ò¥¨¥é¥ë¥¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥µ¥¤¥ó¤¬¹Ô¤ï¤ì¤Æ¤¤¤ì¤ÐÀµ¾ï¤ËÆ°ºî¤·¤Æ¤¤¤Þ¤¹¡£
¡ã¼Â¹ÔÁ°(¥×¥ì¥Ï¥Ö)¡ä

¡ã¼Â¹Ô¸å(À¸À®¤µ¤ì¤¿¥×¥ì¥Ï¥Ö)¡ä

¡¡¤³¤Î¤è¤¦¤Ê¼êË¡¤òÍѤ¤¤ë¤³¤È¤Ë¤è¤ê¡¢¥×¥ì¥Ï¥Ö¤Ë¤Ê¤Ã¤¿¤È¤¤Î¥¢¥µ¥¤¥ó³°¤ì¤ò²ò¾Ã¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
- ¥«¥Æ¥´¥ê¡§
- ¿Ê³Ø/¥¹¥¯¡¼¥ë
- ¥×¥í¥°¥é¥ß¥ó¥°
¥³¥á¥ó¥È¤ò¤«¤¯