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

ÌÜŪ


¡¡¥²¡¼¥à³«È¯¤Ç¤Ï¡¢Ê£¿ô¤Î¥·¡¼¥ó¤ä¥ì¥Ù¥ë¤¬Â¸ºß¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
¥·¡¼¥óÆâ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢¤½¤Î¥·¡¼¥ó¤Ë¸ºß¤¹¤ë¤¿¤á¡¢¥×¥ì¥Ï¥Ö¤ò»È¤Ã¤Æ¤â¥·¡¼¥óÆâ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÈľÀÜ´ØÏ¢ÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
¤·¤«¤·¡¢¥·¡¼¥ó³°¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï¡¢Ä¾ÀÜ´ØÏ¢ÉÕ¤±¤¬¤Ç¤­¤Þ¤»¤ó¡£

¡¡ºÇ½é¤«¤é¥Ò¥¨¥é¥ë¥­¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈƱ»Î¤Ï¥¢¥µ¥¤¥ó¤ò¤·¤¿¤ê¤·¤Æ¡¢Â¾¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ðÊó¤Î´ØÏ¢ÉÕ¤±¤¬½ÐÍè¤Þ¤¹¡£
¤Ç¤¹¤¬¡¢¥²¡¼¥à¼Â¹Ô¸å¤ËÀ¸À®¤µ¤ì¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢¥Ò¥¨¥é¥ë¥­¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¤Ï»öÁ°¤Ë´ØÏ¢ÉÕ¤±¤¬½ÐÍè¤Þ¤»¤ó¡£

¡¡¤Ä¤Þ¤ê¡¢¥×¥ì¥Ï¥Ö¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò»È¤Ã¤Æ¡¢¥²¡¼¥à¼Â¹Ô¸å¤Ë¥¹¥¯¥ê¥×¥È¤«¤éưŪ¤ËÀ¸À®¤·¤¿¥×¥ì¥Ï¥Ö¤Î¥¯¥í¡¼¥ó¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢
¥·¡¼¥ó¥Ó¥å¡¼¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¤ÏľÀÜ´ØÏ¢ÉÕ¤±¤é¤ì¤Ê¤¤¤¿¤á¡¢¥¹¥¯¥ê¥×¥È¤ò»È¤Ã¤ÆÀßÄê¤ò¹Ô¤¦É¬Íפ¬¤¢¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£


¥×¥ì¥Ï¥Ö¤Î»ÅÍÍ


¡¡¤Þ¤º¡¢¥×¥ì¥Ï¥Ö¤Î»ÅÍͤòÍý²ò¤·¤Æ¤ª¤¯¤³¤È¤¬ÂçÁ°Äó¤Ç¤¹¡£

¡¡¥×¥ì¥Ï¥Ö¤È¤Ï¡¢¤¢¤é¤«¤¸¤áºîÀ®¤·¤¿¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤ä¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÊݸ¤·¡¢¤½¤ÎÀßÄê¤ò¤â¤È¤ËƱ¤¸¤â¤Î¤ò´Êñ¤ËºîÀ®¤Ç¤­¤ë¤â¤Î¤Ç¤¹¡£

¡¡ÂçÊÑÊØÍø¤Êµ¡Ç½¤Ç¤¹¤¬¡¢¥×¥ì¥Ï¥Ö¤Ë¤·¤¿¤È¤­¤Ë¡¢¥Ò¥¨¥é¥ë¥­¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥µ¥¤¥ó¤¬³°¤ì¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
¤³¤ì¤Ï¥×¥ì¥Ï¥Ö¤Î»ÅÍͤǤ¹¤Î¤Ç¡¢²óÈò¤¹¤ëÊýË¡¤Ï¤¢¤ê¤Þ¤»¤ó¡£

¡¡¤½¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¡¢¤È¤¤¤¦¤³¤È¤òÍý²ò¤·¤¿¾å¤Ç¡¢¤Ç¤Ï¤É¤¦¤¹¤ë¤Î¤«¡¢¤ò¹Í¤¨¤Æ¤¤¤­¤Þ¤¹¡£


ÌäÂêÅÀ


¡¡¥Ò¥¨¥é¥ë¥­¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈƱ»Î¤ÏÌäÂê¤Ê¤¯¡¢¥¢¥µ¥¤¥ó¤·¤Æ¤ª¤¯¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
°Ê²¼¤ÎÎã¤Ç¤Ï¡¢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);

        (¾Êά)
    }

¡¡¤³¤Î¤è¤¦¤Ë¥á¥½¥Ã¥É¤Î°ú¿ô¤ò³èÍѤ¹¤ë¤³¤È¤Ç¡¢¹çÍýŪ¡¢¸úΨŪ¤Ê½èÍý¤¬¹½ÃۤǤ­¤Þ¤¹¡£


£²¡¥¡ãGameObject·¿°Ê³°¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ÎÊýË¡¡ä


¡¡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 ¤Ç¤Ï¤Ê¤¯¡¢¤É¤¦¤¤¤¦½èÍý¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢¤³¤Î¤è¤¦¤ËÆ°¤¤¤Æ¤¤¤ë¡¢¤È¤¤¤¦ÏÀÍýŪ¤Ê¹Í¤¨Êý¤Çª¤¨¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡¤Þ¤º¤Ï¥Ò¥¨¥é¥ë¥­¡¼¥¦¥¤¥ó¥É¥¦¤Ë¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ·¤Æ¡¢À¸À®¤µ¤ì¤¿¥×¥ì¥Ï¥Ö¤Î¾ðÊó¤¬Àµ¾ï¤Ë¥¢¥µ¥¤¥ó¤µ¤ì¤ë¤«¤ò³Îǧ¤·¤Þ¤¹¡£


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



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



¡ã¼Â¹ÔÆ°²è¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯



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


¡ã¼Â¹ÔÁ°(¥×¥ì¥Ï¥Ö)¡ä



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




¡¡¤³¤Î¤è¤¦¤Ê¼êË¡¤òÍѤ¤¤ë¤³¤È¤Ë¤è¤ê¡¢¥×¥ì¥Ï¥Ö¤Ë¤Ê¤Ã¤¿¤È¤­¤Î¥¢¥µ¥¤¥ó³°¤ì¤ò²ò¾Ã¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¥³¥á¥ó¥È¤ò¤«¤¯


¡Öhttp://¡×¤ò´Þ¤àÅê¹Æ¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

ÍøÍѵ¬Ìó¤ò¤´³Îǧ¤Î¤¦¤¨¤´µ­Æþ²¼¤µ¤¤

Menu



´ðÁÃ

µ»½Ñ/Ãμ±(¼ÂÁõÎã)

3D¥¢¥¯¥·¥ç¥ó¥²¡¼¥à

2D¤ª¤Ï¤¸¤­¥²¡¼¥à(ȯŸÊÔ)

2D¶¯À©²£¥¹¥¯¥í¡¼¥ë¥¢¥¯¥·¥ç¥ó(ȯŸÊÔ)

2D¥¿¥Ã¥×¥·¥å¡¼¥Æ¥£¥ó¥°(³ÈÄ¥ÊÔ)

¥ì¡¼¥¹¥²¡¼¥à(È´¿è)

2DÊüÃÖ¥²¡¼¥à(ȯŸÊÔ)

3D¥ì¡¼¥ë¥¬¥ó¥·¥å¡¼¥Æ¥£¥ó¥°(±þÍÑÊÔ)

3Dæ½Ð¥²¡¼¥à(È´¿è)

2D¥ê¥¢¥ë¥¿¥¤¥à¥¹¥È¥é¥Æ¥¸¡¼

3D¥¿¥Ã¥×¥¢¥¯¥·¥ç¥ó(NavMeshAgent »ÈÍÑ)

2D¥È¥Ã¥×¥Ó¥å¡¼¥¢¥¯¥·¥ç¥ó(¥«¥¨¥ë¤Î°Ù¤Ë¡Á¡¢¥Ü¥³¥¹¥«¥¦¥©¡¼¥ºÉ÷)

VideoPlayer ¥¤¥Ù¥ó¥ÈϢư¤Î¼ÂÁõÎã

VideoPlayer ¥ê¥¹¥ÈÆ⤫¤é¥à¡¼¥Ó¡¼ºÆÀ¸¤Î¼ÂÁõÎã(ȯŸ)

AR ²èÁüÉÕ¤­¥ª¥Ö¥¸¥§¥¯¥ÈÀ¸À®¤Î¼ÂÁõÎã

AR ¥ê¥¹¥ÈÆ⤫¤éÀ¸À®¤Î¼ÂÁõÎã(ȯŸ)

2D¥È¥Ã¥×¥Ó¥å¡¼¥¢¥¯¥·¥ç¥ó(¥µ¥Ð¥¤¥Ð¡¼É÷)

private



¤³¤Î¥µ¥¤¥ÈÆâ¤ÎºîÉʤϥæ¥Ë¥Æ¥£¤Á¤ã¤ó¥é¥¤¥»¥ó¥¹¾ò¹à¤Î¸µ¤ËÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£

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