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

¡¡¤³¤Î¼ê½ç¤Ç¤Ï¥­¥ã¥é¤Î¥¸¥ã¥ó¥×½èÍý¤Î¼ÂÁõ¤·¤Æ¤¤¤­¤Þ¤¹¡£

¡¡¤Þ¤º¤Ï¥Ü¥¿¥óÁàºî¤Ë¹ç¤ï¤»¤Æ¥­¥ã¥é¤ò¥¸¥ã¥ó¥×¤µ¤»¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤Î¤È¤­¤Ï¥Ü¥¿¥ó¤ò²¡¤¹¤¿¤Ó¤Ë¶õÃæ¤Ç¤â³¤±¤Æ¥¸¥ã¥ó¥×¤ò¤¹¤ë¾õÂ֤Ǥ¹¡£
¤½¤Î¸å¡¢¼ÐÌ̤ËÀÜÃÏÃæ¤Ë¤Î¤ß£±²ó¤À¤±¥¸¥ã¥ó¥×¤¬¹Ô¤¨¤ë¤è¤¦¤ËÀ©¸æ¤ò¹Ô¤¤¤Þ¤¹¡£


¡ã¼ÂÁõÆ°²è¡¡¼ÐÌ̤ÎȽÄê¤ò¹Ô¤Ã¤Æ¡¢¼ÐÌ̤ˤ¤¤ë´Ö¤Ë£±²ó¤À¤±¥¸¥ã¥ó¥×¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¡ä
https://gyazo.com/8276d22805cc14fdedf426fa5a7fbb7d


¼ê½ç£±£µ¡¡¡Ý¥¸¥ã¥ó¥×¤Î¼ÂÁõ¡Ý

£²£µ¡¥¥­¥ã¥é¤ò¥¸¥ã¥ó¥×¤µ¤»¤ë
£²£¶¡¥¥­¥ã¥é¤Î¥¸¥ã¥ó¥×¤ÎÀ©¸æ¤ò¤¹¤ë


¿·¤·¤¯³Ø½¬¤¹¤ëÆâÍÆ


¡¡¡¦Rigidbody.AddForce ¥á¥½¥Ã¥É
¡¡¡¦Physics.Linecast ¥á¥½¥Ã¥É
¡¡¡¦Debug.DrawLine ¥á¥½¥Ã¥É


£²£µ¡¥¥­¥ã¥é¤ò¥¸¥ã¥ó¥×¤µ¤»¤ë

£±¡¥Àß·×


¡¡¥¸¥ã¥ó¥×¤ÎÀ߷פˤĤ¤¤Æ¹Í¤¨¤Ê¤¬¤é¡¢¼ÂÁõÊýË¡¤ò¹Í¤¨¤Æ¤¤¤­¤Þ¤·¤ç¤¦¡£

¡¡¥¢¥¯¥·¥ç¥ó¥²¡¼¥à¤Ç¤¹¤Î¤Ç¡¢¥¸¥ã¥ó¥×ÍѤΥܥ¿¥ó¤ò²¡¤·¤¿¤é¡¢¤½¤ì¤Ë¹ç¤ï¤»¤Æ¥­¥ã¥é¤¬¥¸¥ã¥ó¥×¤·
¤µ¤é¤Ë¥¸¥ã¥ó¥×¤ÈƱ»þ¤Ë¥¸¥ã¥ó¥×¤Î¥¢¥Ë¥á¡¼¥·¥ç¥ó¤¬ºÆÀ¸¤µ¤ì¤ë¡¢¤È¤¤¤¦Î®¤ì¤¬¼«Á³¤«¤È»×¤ì¤Þ¤¹¡£

¡¡¥¸¥ã¥ó¥×¤È¤Ï¡¢¤É¤Î¤è¤¦¤Ë¤¹¤ì¤Ð¼ÂÁõ¤Ç¤­¤ë¤Î¤Ç¤·¤ç¤¦¤«¡£
¥×¥ì¥¤¥ä¡¼¤Î°ÜÆ°¤Ï¡¢°ÌÃÖ¾ðÊó¤ò¹¹¿·¤·¤Æ¤¤¤¯¤³¤È¤Ç¼ÂÁõ¤¬²Äǽ¤Ç¤·¤¿¡£
¥¸¥ã¥ó¥×¤âƱ¤¸¹Í¤¨Êý¤Ç¤è¤¤¤È»×¤¤¤Þ¤¹¡£

¡¡¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎY¼´¡Ê¹â¤µ¡Ë¤Î°ÌÃÖ¾ðÊó¤ò¹¹¿·¤¹¤ë¤³¤È¤¬¤Ç¤­¤ì¤Ð¡¢¥¸¥ã¥ó¥×¤·¤Æ¤¤¤ë¤è¤¦¤Ë¸«¤¨¤ë¤Ç¤·¤ç¤¦¡£
¤Ä¤Þ¤ê¡¢¥×¥ì¥¤¥ä¡¼¤Î°ÌÃÖ¤¬ÃÏÌ̤ΰÌÃÖ¤è¤ê¤â¹â¤¯¤Ê¤ì¤Ð¡¢¥¸¥ã¥ó¥×¤·¤Æ¤¤¤ë¾õÂ֤ˤʤê¤Þ¤¹¡£
¤½¤Î¤Þ¤ÞÃÏÌ̤ޤÇÍî²¼¤¬½ÐÍè¡¢¥×¥ì¥¤¥ä¡¼¤ÈÃÏÌ̤¬Á°¤ÈƱ¤¸°ÌÃ֤ˤʤì¤ÐÃåÃϤȤʤꡢ¥¸¥ã¥ó¥×¤·¤Æ¤¤¤Ê¤¤¾õÂ֤ˤʤê¤Þ¤¹¡£
¡¡¤½¤ÎY¼´¤Î°ÌÃÖ¾ðÊó¤ò¹¹¿·¤¹¤ë¤Î¤Ë¹ç¤ï¤»¤Æ¥¸¥ã¥ó¥×¤Î¥¢¥Ë¥á¡¼¥·¥ç¥ó¤âºÆÀ¸¤Ç¤­¤ì¤Ð¡¢¾å¼ê¤¯Æ±´ü¤¬½ÐÍ褽¤¦¤Ç¤¹¡£



¡¡µ¤¤òÉÕ¤±¤ë¤Ù¤­¤Ï¡¢Y¼´¤Î°ÌÃÖ¾ðÊó¤ò¤É¤Î¤è¤¦¤Ë¹¹¿·¤¹¤ë¤«¡¢¤Ç¤¹¡£

¡¡Î㤨¤Ð¤æ¤Ã¤¯¤ê¤È¤·¤¿°ÌÃÖ¾ðÊó¤Î¹¹¿·¤Ç¤Ï¡¢¥²¡¼¥à²èÌ̤ÎPlayer¤â¤æ¤Ã¤¯¤ê¤È°ÜÆ°¤·¤Æ¤·¤Þ¤¦¤¿¤á
¤½¤ì¤Ç¤Ï¥¸¥ã¥ó¥×¡¢¤È¤¤¤¦µóÆ°¤Ë¤Ï¸«¤¨¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¡£

¡¡¥¸¥ã¥ó¥×¤È¤¤¤¦¤³¤È¤Ç¤¢¤ì¤Ð¡¢¤¢¤ëÄøÅ٤ι⤵¤Þ¤ÇÀª¤¤¤è¤¯°ÜÆ°¤ò¤·¡¢¤½¤Î¸å¡¢Íî²¼¤·¤Æ¤¯¤ë¤È¤¤¤¦µóÆ°¤¬¥æ¡¼¥¶¡¼¤Î´üÂÔ¤¹¤ë¥¸¥ã¥ó¥×¤Ë¤Ê¤ë¤È»×¤¤¤Þ¤¹¡£

¡¡¤Þ¤¿¡¢°ÌÃÖ¾ðÊó¤òÊѲ½¤µ¤»¤ëÊýË¡¤Ï¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤¹¤¬¡¢¡ÖÀª¤¤¤è¤¯¡×°ÜÆ°¤¹¤ë¤Î¤«¡¢¡Ö°ì½Ö¤Ç¤½¤Î°ÌÃ֤ޤǡװÜÆ°¤¹¤ë¤Î¤«¤Ç¤Ï°ÌÃÖ¾ðÊó¤òÊѹ¹¤µ¤»¤ë½èÍý¤ò¹Ô¤¦µ¡Ç½¤¬°Û¤Ê¤ê¤Þ¤¹¡£
°ì½Ö¤Ç°ÜÆ°¤·¤Æ¤·¤Þ¤Ã¤Æ¤Ï¥¸¥ã¥ó¥×¤Îµ°Æ»¤¬¸«¤¨¤Ê¤¤¤¿¤á¡¢ÃÏÌ̤«¤é¶õÃæ¤ËÀª¤¤¤è¤¯³ê¤é¤«¤ËÈô¤Ó¾å¤¬¤ëÊýË¡¤¬¡¢¤è¤ê¥¸¥ã¥ó¥×¤Ë¸«¤¨¤Þ¤¹¡£

¡¡¤½¤Î¤¿¤á¡¢Rigidbody¤ÎAddforce´Ø¿ô¤ò»È¤Ã¤ÆY¼´¤Î°ÌÃÖ¾ðÊó¤Î¹¹¿·¤ò¼ÂÁõ¤¹¤ì¤Ð¥¸¥ã¥ó¥×¤Î¤è¤¦¤Ë¸«¤¨¤ë¡¢´üÂÔ¤¹¤ëµóÆ°¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¥æ¡¼¥¶¡¼¤Î¹Í¤¨¤ë¥²¡¼¥àÆâ¤Î¸«¤¿ÌܤÎÆ°¤­¤ò¡¢¤É¤Î¤è¤¦¤Êµ¡Ç½¤ò»È¤Ã¤Æ¥×¥í¥°¥é¥à¤ò¤¹¤ì¤Ð´üÂÔ¤·¤Æ¤¤¤ëµóÆ°¤Ë¤Ê¤ë¤Î¤«¡¢¤³¤ì¤òǰƬ¤ËÃÖ¤¤¤ÆÀ߷פò¹Í¤¨¤Æ¤¤¤¯¤È¤è¤¤¤È»×¤¤¤Þ¤¹¡£

¡¡¤Þ¤¿¡¢°ÌÃÖ¾ðÊó¤Î¹¹¿·ÊýË¡¤â²¿¼ïÎफ¤¢¤ê¤Þ¤¹¤¬¡¢¤½¤ì¤é¤ÎÆÃħ¤òÍý²ò¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢¤É¤Î½èÍý¤¬ºÇ¤â¼ÂÁõ¤ËŬ¤·¤Æ¤¤¤ë¤Î¤«¡¢È½ÃǤò¤¹¤ë¤³¤È¤¬ÂçÀڤǤ¹¡£
¤½¤Î¤¿¤á¤Ë¤â¿§¡¹¤Ê½èÍý¤ò»î¤·¤Æ¡¢¤É¤Î¤è¤¦¤ÊµóÆ°¤ò¤¹¤ë¤Î¤«¤òÃΤäƤª¤¯¤³¤È¤¬É¬Íפˤʤê¤Þ¤¹¡£


£²¡¥PlayerController ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡¾åµ­¤ÎÀß·×ÊýË¡¤ò¤Õ¤Þ¤¨¤Æ¡¢¥¸¥ã¥ó¥×¤ÎÀ©¸æ½èÍý¤ò¼ÂÁõ¤·¤Þ¤¹¡£
¤Þ¤º¤Ï¡¢ÀÜÃϤÎȽÄê¤Ï¹Í¤¨¤º¤Ë¡¢ÆÃÄê¤Î¥Ü¥¿¥ó¤ò²¡¤·¤¿¤é¥¸¥ã¥ó¥×¤ò¤¹¤ë¡¢¤È¤¤¤¦½èÍý¤ò¹Í¤¨¤Æ¼ÂÁõ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£


PlayerController.cs

¡¡<=¡¡¥¯¥ê¥Ã¥¯¤¹¤ë¤È³«¤­¤Þ¤¹¡£



¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é¥»¡¼¥Ö¤ò¹Ô¤¤¡¢PlayerController ¥¹¥¯¥ê¥×¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë Penguin ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
¿·¤·¤¯Àë¸À¤·¤¿ÊÑ¿ô¤¬É½¼¨¤µ¤ì¤Æ¤¤¤ë¤«¡¢³Îǧ¤·¤Æ¤ª¤­¤Þ¤¹¡£


Penguin ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



£³¡¥¡ãRigidbody.AddForce ¥á¥½¥Ã¥É¡ä


¡¡¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ËʪÍýŪ¤ÊÎϤò²Ã¤¨¤ë¥á¥½¥Ã¥É¤Ç¤¹¡£
ÎϤòÍ¿¤¨¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢ÊªÍý±é»»¤Ë¤Î¤Ã¤È¤Ã¤Æ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò°ÜÆ°¤µ¤»¤ë½èÍý¤¬¹Ô¤¨¤Þ¤¹¡£
Rigidbody.AddForce (Vector2 force, ForceMode2D mode= ForceMode2D.Force)

¡¡// ¥­¥ã¥é¤Ë¾åÊý¸þ¤ÎÎϤò²Ã¤¨¤ë
  rb.AddForce(transform.up * jumpPower);

¡¡Âè1°ú¿ô¤Ë¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ËÍ¿¤¨¤ëÎϤÎÃͤòÀßÄꤷ¤Þ¤¹¡£Âè2°ú¿ô¤ÏÎϤÎÍ¿¤¨Êý¤ËÂФ¹¤ë¥ª¥×¥·¥ç¥óÃͤǤ¹¡£½é´üÃÍ¤Ç Force ¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
Rigidbody¤Î¾ì¹ç¤Ë¤Ï¡¢ForceMode¤Ï4¼ïÎढ¤ê¤Þ¤¹¡£ÎϤÎÃͤòÊѹ¹¤¹¤ë¤È¤É¤¦¤Ê¤ë¤«¡¢Âè2°ú¿ô¤ÎÀßÄê¤òÊѹ¹¤¹¤ë¤È¤É¤¦¤Ê¤ë¤«¤Ê¤É¡¢
¼«Ê¬¤ÇÄ´¤Ù¤Æ¡¢¥¹¥¯¥ê¥×¥È¤ËÂåÆþ¤·¡¢°ã¤¤¤ò³Îǧ¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£


¡¡Âè1°ú¿ô¤ÇÍøÍѤ·¤Æ¤¤¤ë transform.up ÊÑ¿ô¤Ï¡¢Unity ¤¬ÍÑ°Õ¤·¤Æ¤¤¤ëÊÑ¿ô¤Î£±¤Ä¤Ç¤¹¡£
¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¡¢¥ï¡¼¥ë¥É¶õ´Ö¤Ç¤ß¤¿¥í¡¼¥«¥ë YºÂɸ¤Ç¤Î¥Ù¥¯¥È¥ë(¸þ¤­)¤ÎŤµ¤¬£±¤Îñ°Ì¥Ù¥¯¥È¥ë¤Î¾ðÊó(0, 1, 0)¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢¥²¡¼¥à¤ÎÀ¤³¦Á´ÂΤǤΠY¼´¤Î¾ðÊó¤Ç¤Ï¤Ê¤¯¡¢¤½¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¼«ÂΤΠY¼´¤Î¾ðÊó¤ò»²¾È¤¹¤ë¤È¤¤¤¦ÊÑ¿ô¤Ë¤Ê¤ê¤Þ¤¹¡£

Unity ¥¹¥¯¥ê¥×¥È¡¦¥ê¥Õ¥¡¥ì¥ó¥¹
Transform.up
https://docs.unity3d.com/ja/current/ScriptReferenc...
¤Í¤³¤¸¤ã¤é¥·¥Æ¥£ ÍÍ
¡ÚUnity¡Û¥ª¥Ö¥¸¥§¥¯¥È¤Î¸þ¤­¤ò¼èÆÀ¤¹¤ë
https://nekojara.city/unity-object-direction


»²¹Í¥µ¥¤¥È
Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
Rigidbody.AddForce
https://docs.unity3d.com/ja/current/ScriptReferenc...
Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
ForceMode
https://docs.unity3d.com/ja/current/ScriptReferenc...

SamuraiBlogÍÍ
¡ÚUnityÆþÌç¡ÛRigidbody¤Ç¼«ºß¤Ë°ÜÆ°!addforce¤äposition¤ò¶Ë¤á¤è¤¦!
https://www.sejuku.net/blog/54896


£´¡¥Penguin ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤ò¹Ô¤¦


¡¡¿·¤·¤¯Äɲ䵤ì¤Æ¤¤¤ë JumpPower ÊÑ¿ô¤ËÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£200 Á°¸å¤Ë¤·¤Æ¤ª¤¤¤ÆÄ´À°¤ò¤·¤Æ¤¤¤¯¤è¤¦¤Ë¤·¤Þ¤·¤ç¤¦¡£

¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



£µ¡¥¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆÆ°ºî¤ò³Îǧ¤¹¤ë


¡¡¥¸¥ã¥ó¥×¤Ç¤­¤ë¤«³Îǧ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£

¡ã¼Â¹ÔÆ°²è¡ä
https://gyazo.com/db7ccc3185d5873d32b6080211eedd67


¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï´°À®¤Ç¤¹¡£¤¤¤Þ¤Ï¥Ü¥¿¥ó¤ò²¡¤·¤¿Ê¬¤À¤±¥¸¥ã¥ó¥×¤ò¤·¤Æ¤·¤Þ¤¤¤Þ¤¹¤Î¤Ç¡¢¼¡¤Ï¤³¤Î¥¸¥ã¥ó¥×¤ÎÀ©¸æ¤ò¹Ô¤¤¤Þ¤¹¡£


£²£¶¡¥¥­¥ã¥é¤Î¥¸¥ã¥ó¥×¤ÎÀ©¸æ¤ò¤¹¤ë

£±¡¥Àß·×


¡¡¤Ç¤Ï¼¡¤Ë¡¢¥¸¥ã¥ó¥×¤¹¤ëºÝ¤Ë¤Ï¡¢¤É¤Î¤è¤¦¤Ê½çÈÖ¤ÎÀ©¸æ½èÍý¤¬É¬Íפˤʤ뤫¡¢¹Í¤¨¤Æ¤¤¤­¤Þ¤·¤ç¤¦¡£
´üÂÔ¤¹¤ëµóÆ°¤È¡¢¤½¤Î¤¿¤á¤Ë¹Í¤¨¤é¤ì¤ëÀ©¸æÊýË¡¤Ç¤¹¡£

¡¡­¡¥×¥ì¥¤¥ä¡¼¤¬ÃÏÌ̤ˤ¤¤ëºÝ¤Ë¥¸¥ã¥ó¥×¥Ü¥¿¥ó¤ò²¡¤¹¤³¤È¤Ç¥¸¥ã¥ó¥×¤¬½ÐÍè¤ë¡£
¡¡¡¡¡¡¡¡=>¡¡ÃÏÌ̤ȥץ쥤¥ä¡¼¤È¤ÎÀÜÃÏȽÄ꤬ɬÍ×

¡¡­¢¥¸¥ã¥ó¥×Ãæ¤ËºÆÅÙ¥¸¥ã¥ó¥×¥Ü¥¿¥ó¤ò²¡¤·¤Æ¤â¡¢ÆóÃÊ¥¸¥ã¥ó¥×¤Ê¤É¤Ï¤·¤Ê¤¤¡£
¡¡¡¡¡¡¡¡=>¡¡¥¸¥ã¥ó¥×Ãæ¤Ç¤¢¤ë¤È¤¤¤¦È½Äê¡¢¤¢¤ë¤¤¤Ï¡¢¤½¤ì¤Ë¸«¹ç¤¦¾õÂÖ¤¬É¬Í×

¡¡­£°ÜÆ°Ãæ¤Ë¥¸¥ã¥ó¥×¤·¤¿¾ì¹ç¡¢°ÜÆ°Àè¤ËÃåÃϤ¹¤ë¡£
¡¡¡¡¡¡¡¡=>¡¡¤½¤Î¾ì¤Ç¥¸¥ã¥ó¥×¤·¤¿¾ì¹ç¤Ï¡¢¤½¤Î¾ì¤ËÃåÃϤ·¡¢°ÜÆ°Ãæ¤Ç¤¢¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢°ÜÆ°Àè¤Î°ÌÃÖ¤ÇÃåÃϤ¹¤ë

¡¡­¤ÃåÃϤ·¤¿¤éºÆÅÙ¥¸¥ã¥ó¥×¥Ü¥¿¥ó¤Ç¥¸¥ã¥ó¥×¤¬½ÐÍè¤ë¡£
¡¡¡¡¡¡¡¡=>¡¡­¡¤ÎÀÜÃÏȽÄê¤ÈƱ¤¸½èÍý¡¡È½Äê¤Î·ë²Ì¤Ë¤è¤ê¡¢ÃÏÌ̤ˤ¤¤ë¤Î¤«¡¢¤¤¤Ê¤¤¤Î¤«¡Ê¶õÃæ¤Ê¤Î¤«¡Ë¤¬È½Äꤵ¤ì¤ë

¡¡½çÈ֤˹ͤ¨¤Æ¤¤¤­¤Þ¤·¤ç¤¦¡£


­¡¥×¥ì¥¤¥ä¡¼¤¬ÃÏÌ̤ˤ¤¤ëºÝ¤Ë¥¸¥ã¥ó¥×¥Ü¥¿¥ó¤ò²¡¤¹¤³¤È¤Ç¥¸¥ã¥ó¥×¤¬½ÐÍè¤ë

¡¡ÃÏÌ̤Ȥʤ륲¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¡¢¥×¥ì¥¤¥ä¡¼¤È¤Î´Ö¤ËÀÜÃϤ·¤Æ¤¤¤ë¤«¤É¤¦¤«¤ÎȽÄê¤òÀ¹¤ê¹þ¤à¤³¤È¤Ç
¡Ö¥×¥ì¥¤¥ä¡¼¤¬ÃÏÌ̤ˤ¤¤ë¡×¤È¤¤¤¦¾ò·ï¤òºî¤ê½Ð¤·¡¢Ê¬´ô¾ò·ï¤òÀßÄꤹ¤ë¤³¤È¤¬²Äǽ¤Ç¤¢¤ë¤È¹Í¤¨¤é¤ì¤Þ¤¹¡£

¡¡¤³¤ÎÀÜÃÏȽÄê¤ÎÊýË¡¤Ë¤Ï¤¤¤¯¤Ä¤«¤ä¤êÊý¤¬¤¢¤ê¤Þ¤¹¡£¤³¤³¤Ç¤Ïº£¤Þ¤ÇÍøÍѤ·¤Æ¤¤¤Ê¤¤Layer¡Ê¥ì¥¤¥ä¡¼¡Ë¤Îµ¡Ç½¤È
¤½¤ì¤òÍøÍѤ¹¤ëLinecast¡Ê¥é¥¤¥ó¥­¥ã¥¹¥È¡Ë¤Îµ¡Ç½¤òÍøÍѤ·¤Æ¡¢È½Äê¤ò¹Ô¤Ã¤Æ¤¤¤­¤Þ¤¹¡£

¡¡Layer¤Ë¤Ï¤¢¤é¤«¤¸¤á²¿¼ïÎफÅÐÏ¿¤µ¤ì¤Æ¤ª¤ê¡¢Ground¤È¤¤¤¦¥ì¥¤¥ä¡¼¤¬¤¢¤ê¤Þ¤¹¡£(Unity¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë¤è¤Ã¤Æ¤Ï¤Ê¤¤¾ì¹ç¤â¤¢¤ê¤Þ¤¹)
ÃÏÌÌÌò¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¡¢Layer¤òDefault¤«¤éGround¤ËÊѹ¹¤·¤Þ¤·¤ç¤¦¡£
¤³¤ì¤Ë¤è¤ê¡¢ÃÏÌ̤Ȥ·¤Æ¤ÎÌò³ä¤òô¤¦¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡
¡¡Linecast¤Ï¡¢Unity¤Î»ý¤ÄPhysics¡Ê¥Õ¥£¥¸¥¯¥¹¡Ë¤Ë¤è¤Ã¤ÆÍøÍѲÄǽ¤Êµ¡Ç½¤Î£±¤Ä¤Ç¤¹¡£
ifʸ¤ÈÁȤ߹ç¤ï¤»¤ë¤³¤È¤Ç¡¢»ØÄꤵ¤ì¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡Ê¤³¤³¤Ç¤ÏPlayer¡Ë¤«¤é¸«¤¨¤Ê¤¤¸÷Àþ¤òȯ¼Í¤·¡¢
¤½¤Î¸÷Àþ¤È»ØÄꤷ¤¿¥ì¥¤¥ä¡¼¡Ê¤³¤³¤Ç¤ÏGround¤Î¥ì¥¤¥ä¡¼¤ò»ý¤Ä¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡Ë¤È¤¬¤Ö¤Ä¤«¤Ã¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò
Bool·¿¤ÎÌá¤êÃͤȤ·¤ÆÊÖ¤·¤Æ¤¯¤ì¤Þ¤¹¡£

¡¡¤³¤ÎBool¤ÎÃͤòÀÜÃϾõÂ֤Ȥ·¤ÆÆɤßÂؤ¨¤ë¤³¤È¤Ë¤è¤ê¡¢ÀÜÃÏȽÄê¤È¤·¤Æ¼ÂÁõ¤ò¹Ô¤¤¤Þ¤¹¡£
Linecast¤Î·ë²Ì¤¬True¤Ê¤é¤Ð¡¢Player¤«¤éȯ¼Í¤µ¤ì¤¿¸«¤¨¤Ê¤¤¸÷Àþ¤¬Ground¥ì¥¤¥ä¡¼¤ò»ý¤ÄÃÏÌ̤Υ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¤Ö¤Ä¤«¤Ã¤¿¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈƱ»Î¤¬¤¯¤Ã¤Ä¤¤¤Æ¤¤¤ë¾õÂ֤Ǥ¢¤ë¤È¹Í¤¨¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¤Î¤Ç¡¢¡ÖÃÏÌ̤ˤ¤¤ë¡×¾õÂ֤Ǥ¢¤ë¤È¸À¤¨¤Þ¤¹¡£
¡¡µÕ¤ËFalse¤Î¾ì¹ç¤Ï¡¢Àè¤Û¤É¤Î¸÷Àþ¤¬¥ì¥¤¥ä¡¼¤È¤Ö¤Ä¤«¤Ã¤Æ¤¤¤Ê¤¤¾õÂ֤ˤʤê¤Þ¤¹¤Î¤Ç¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈƱ»Î¤¬¤¯¤Ã¤Ä¤¤¤Æ¤¤¤Ê¤¤¾õÂ֤Ǥ¢¤ê
¡ÖÃÏÌ̤ˤ¤¤Ê¤¤¡×¾õÂ֤Ǥ¢¤ë¤È¸À¤¨¤Þ¤¹¡£

¡¡È½ÄêÊýË¡¤Ï¾¤Ë¤â¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤¹¤¬¡¢¤³¤ÎLinecast¤Ë¤è¤ëBool·¿¤Ë¤è¤ë½èÍý¤¬ÀÜÃÏȽÄê¤ËÍ­ÍѤǤ¢¤ë¤¿¤á¡¢
¤³¤Îµ¡Ç½¤òÀÜÃÏȽÄê¤È¤·¤Æ¼ÂÁõ¤¹¤ë¤³¤È¤Ë¤·¤Þ¤¹¡£

¡¡¥¸¥ã¥ó¥×ÍѤΥܥ¿¥ó¤ò²¡¤·¤¿ºÝ¤Î¾ò·ï¤Ë¡ÖÃÏÌ̤ˤ¤¤ë¾õÂ֤ǡץ¸¥ã¥ó¥×¥Ü¥¿¥ó¤ò²¡¤·¤¿¤é¥¸¥ã¥ó¥×¤Ç¤­¤ë¤È¤¹¤ì¤Ð¡¢£±¤Ä¾ò·ï¤òÀ¹¤ê¹þ¤á¤Ð¤è¤¤¤Ç¤·¤ç¤¦¡£

­¢¥¸¥ã¥ó¥×Ãæ¤ËºÆÅÙ¥¸¥ã¥ó¥×¥Ü¥¿¥ó¤ò²¡¤·¤Æ¤â¡¢ÆóÃÊ¥¸¥ã¥ó¥×¤Ê¤É¤Ï¤·¤Ê¤¤

¡¡¾åµ­­¡¤Î¼ÂÁõ¤ÈƱ»þ¤Ë¡¢¤³¤Î­¢¤Î½èÍý¤â¼«Æ°Åª¤Ë¼ÂÁõ¤µ¤ì¤Þ¤¹¡£

¡¡¥¸¥ã¥ó¥×Ãæ¡¢¤Ä¤Þ¤ê¡ÖÃÏÌ̤ˤ¤¤Ê¤¤¡×¾õÂ֤ΤȤ­¤Ë¤Ï¥¸¥ã¥ó¥×¥Ü¥¿¥ó¤ò²¡¤·¤Æ¤âÈ¿±þ¤ò¤·¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤Î¤¬¡¢°ìÈÖ¼ÂÁõ¤·¤ä¤¹¤¤¾ò·ï¤È¤Ê¤ê¤Þ¤¹¤¬
­¡¤Î¥¸¥ã¥ó¥×¤Ç¤­¤ë¾ò·ï¤È¤·¤Æ¤¹¤Ç¤Ë¡ÖÃÏÌ̤ˤ¤¤ë¾õÂ֤ǥ¸¥ã¥ó¥×¥Ü¥¿¥ó¤ò²¡¤·¤¿¤é¥¸¥ã¥ó¥×¤Ç¤­¤ë¡×¤È¤¤¤¦¾ò·ï¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç
¤³¤ì¤Ï¤½¤Î¤Þ¤Þ¡ÖÃÏÌ̤ˤ¤¤Ê¤¤¾õÂ֤ʤ饸¥ã¥ó¥×¥Ü¥¿¥ó¤ò²¡¤·¤Æ¤â¥¸¥ã¥ó¥×¤Ç¤­¤Ê¤¤¡×¤È¤¤¤¦¤è¤¦¤ËµÕ¤ËÆɤà²ò¤¯¤³¤È¤¬²Äǽ¤Ç¤¹¡£

¡¡¤è¤Ã¤Æ­¡¤Î¼ÂÁõ¤ÈƱ»þ¤Ë¡¢¤³¤ÎÀ©¸æ¤â¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£


­£°ÜÆ°Ãæ¤Ë¥¸¥ã¥ó¥×¤·¤¿¾ì¹ç¡¢°ÜÆ°Àè¤ËÃåÃϤ¹¤ë

¡¡°ÜÆ°¤È¤Ï¡¢°ÌÃÖ¾ðÊó¤ò¹¹¿·¤¹¤ë¤³¤È¤Ç¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¥¸¥ã¥ó¥×¤·¤¿ºÝ¤Ë°ÜÆ°¤¹¤ë°ÌÃÖ¤ò0¤Ë¤¹¤ë¤È¤¤¤¦½èÍý¤¬¤Ê¤¤¸Â¤ê¤Ï¤³¤Î¾õÂ֤⼫ưŪ¤Ë¼ÂÁõ¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡°ÜÆ°¤·¤Æ¤¤¤Ê¤¤¾õÂ֤Ǥ¢¤ì¤Ð¡¢°ÌÃÖ¾ðÊó¤â¹¹¿·¤¬¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢¥¸¥ã¥ó¥×¤·¤¿°ÌÃÖ¤ËÃåÃϤ¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£


­¤ÃåÃϤ·¤¿¤éºÆÅÙ¥¸¥ã¥ó¥×¥Ü¥¿¥ó¤Ç¥¸¥ã¥ó¥×¤¬½ÐÍè¤ë

¡¡¤³¤ì¤â­¡¤Î¼ÂÁõ¤ÈƱ»þ¤ËÀ©¸æ¤¬¼ÂÁõ¤µ¤ì¤Þ¤¹¡£
Linecast¤Ë¤è¤ëBool·¿¤Ç¤ÎÌá¤êÃͤÏUpdate¤Ë¤Æ½èÍý¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤³¤Îifʸ¤Ë¤è¤ëBool·¿¤Ï¾ï»þ´Æ»ë¤µ¤ì¤Æ¤¤¤ë¾õÂ֤Ǥ¹¡£
¡¡¤Ç¤¹¤Î¤Ç¥¸¥ã¥ó¥×¤¬½ª¤ï¤Ã¤ÆÃÏÌ̤ȤÎÀÜÃÏȽÄ꤬¼è¤ì¤ì¤ÐLinecast¤ÏTrue¤òÊÖ¤¹¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢·ë²Ì¡¢¤Þ¤¿¥¸¥ã¥ó¥×¤¬¤Ç¤­¤ë¾õÂÖ¤¬À®Î©¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£




¡¡°Ê¾å¤Î¤è¤¦¤Ë¡¢È¯À¸¤¹¤ë¤Ç¤¢¤í¤¦ÌäÂêÅÀ¤äµ¿ÌäÅÀ¤Ï¡¢¤½¤ì¤é¤Ë¤Ä¤­¤¹¤Ù¤Æ¤Î½èÍý¤ò¼ÂÁõ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤Ìõ¤Ç¤Ï¤Ê¤¯¤Æ
¤¤¤º¤ì¤«¤Î½èÍý¤Ë¤è¤Ã¤ÆÌäÂ꤬¥¯¥ê¥¢¤µ¤ì¤ë¤â¤Î¡¢¤¢¤ë¤¤¤ÏµÕ¤ËÌäÂê¤È¤Ê¤Ã¤Æ¤·¤Þ¤¦¤â¤Î¤Ê¤É¡¢ÍÍ¡¹¤Ê·ë²Ì¤òÀ¸¤¸¤µ¤»¤Þ¤¹¡£


¡¡ÂçÀڤʤΤϡ¢£±¤Ä¤Î½èÍý¤ò¤¤¤ì¤ë¤³¤È¤Ç¿¤¯¤Î¾ì½ê¤Ë±Æ¶Á¤¬½Ð¤ë¡Ê¾¯¤Ê¤¯¤È¤âº£²ó¥¸¥ã¥ó¥×¤òÆþ¤ì¤ë¤À¤±¤Ç¤â­¡¡Á­¤¤ÎÌäÂêÅÀ¤ò¹Íθ¤·¤Ê¤¤¤È¤Ê¤é¤Ê¤¤¡Ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£

¡¡¤³¤ì¤ò¥¤¥á¡¼¥¸¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢À߷פÎÃʳ¬¤Ç¿¤¯¤Îµ¿ÌäÅÀ¤¬ÏªÄè¤Ç¤­¤ì¤Ð¡¢¼ÂÁõ¤¹¤ëÁ°¤Ë¤½¤ì¤ò¸«±Û¤·¤¿¥×¥í¥°¥é¥à¤ò¹Í¤¨¤Æ¤¤¤¯¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
º£²ó¤Î¾ì¹ç¤Ï­¡¡Á­¤¤Þ¤ÇÆÃÊ̤ÊÄɲýèÍý¤ò²Ã¤¨¤º¤È¤â¥¸¥ã¥ó¥×¤Î½èÍý¤òÄɲ乤ì¤Ð¤¹¤Ù¤ÆÌäÂê¤Ê¤¯¼ÂÁõ¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢°Â¿´¤·¤Æ¥×¥í¥°¥é¥à¤òÁȤó¤Ç¤¤¤¯¤³¤È¤¬½ÐÍè¤Þ¤¹¡£


£²¡¥PlayerController ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡­¡¡Á­¤¤ÎÀ©¸æ¤Î¾ðÊó¤ò¸µ¤Ë¡¢PlayerController ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢¥¸¥ã¥ó¥×¤Î¹ÔÆ°¤ËÀ©¸Â¤òÀߤ±¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¥í¥¸¥Ã¥¯¤ò¹Í¤¨¤Æ¤ß¤Æ¡¢¼«Ê¬¤Ê¤ê¤Î¼ÂÁõ¤ò»î¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£


PlayerController.cs

¡¡<=¡¡¥¯¥ê¥Ã¥¯¤¹¤ë¤È³«¤­¤Þ¤¹¡£



¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é¥»¡¼¥Ö¤ò¹Ô¤¤¡¢PlayerController ¥¹¥¯¥ê¥×¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë Penguin ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
¿·¤·¤¯Àë¸À¤·¤¿ÊÑ¿ô¤¬É½¼¨¤µ¤ì¤Æ¤¤¤ì¤ÐÌäÂꤢ¤ê¤Þ¤»¤ó¡£


Penguin ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



£³¡¥¡ãPhysics.Linecast ¥á¥½¥Ã¥É¡ä


¡¡»ØÄꤷ¤¿ÃÏÅÀ¤«¤éÊ̤ÎÃÏÅÀ¤Þ¤Ç¤Î´Ö¤Ë¸«¤¨¤Ê¤¤Àþ¤ò°ú¤¤¤Æ¡¢¤½¤ÎÀþ¤ÎÃæ¤Ë¾¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥³¥é¥¤¥À¡¼¤¬ÀÜ¿¨¤·¤¿¤«¤É¤¦¤«¤òȽÄꤹ¤ë¥á¥½¥Ã¥É¤Ç¤¹¡£
¥³¥é¥¤¥À¡¼¤ò»ý¤Ä¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ËÀÜ¿¨¤·¤¿¾ì¹ç¤Ë¤Ï true¡¢ÀÜ¿¨¤·¤Ê¤¤¾ì¹ç¤Ë¤Ï false ¤òÌᤷ¤Þ¤¹¡£


»²¹Í¥µ¥¤¥È
Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
Physics.Linecast
https://docs.unity3d.com/ja/current/ScriptReferenc...


¡¡¥µ¥¤¥È¤ò³Îǧ¤¹¤ë¤È¤ï¤«¤ê¤Þ¤¹¤¬¡¢¤³¤Î¥á¥½¥Ã¥É¤Ë¤Ï°ú¿ô¤Î»ØÄê¤Î»ÅÊý¤¬£²¼ïÎढ¤ê¤Þ¤¹¡£
¤³¤Î¤è¤¦¤Ë¡¢Æ±¤¸¥á¥½¥Ã¥É¤Ç¤â°Û¤Ê¤ë°ú¿ô¤ò»ý¤Ä¤³¤È¤ò¡¢¥ª¡¼¥Ð¡¼¥í¡¼¥É¤ò»ý¤Ä¥á¥½¥Ã¥É¡¢¤¢¤ë¤¤¤Ï¡¢¥ª¡¼¥Ð¡¼¥í¡¼¥É¡¦¥á¥½¥Ã¥É¤È¤¤¤¤¤Þ¤¹¡£

¡¡º£²ó¤Ï¡¢¥µ¥¤¥È¤Î¾åÃʤˤ¢¤ë°ú¿ô¤Î¥ª¡¼¥Ð¡¼¥í¡¼¥É¤òÍøÍѤ·¤¿¥á¥½¥Ã¥É¤òÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£
public static bool Linecast (Vector3 start, Vector3 end, int layerMask= DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction= QueryTriggerInteraction.UseGlobal);

  // Linecast ¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¤Æ¥­¥ã¥é¤Î­¸µ¤Ë¸þ¤±¤Æ¸«¤¨¤Ê¤¤ Line ¤òÈô¤Ð¤·¡¢
  // Line ¤Ë groundLayer ÊÑ¿ô¤Ç»ØÄꤷ¤¿Layer(Ground)¤ò»ý¤Ä¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬ÀÜ¿¨¤¹¤ë¤«È½Äê¡£ÂоݤÎLayer¤Î¤È¤­¤Ï true ¤òÊÖ¤¹
  isGrounded = Physics.Linecast(transform.position, transform.position - transform.up * 0.3f, groundLayer);


¡¡¤³¤ÎLinecast¥á¥½¥Ã¥É¤òÍøÍѤ·¡¢¥­¥ã¥é¤Î°ÌÃÖ¤«¤é¡¢¥­¥ã¥é¤Î­¸µ¤Ë¸þ¤±¤Æ¸«¤¨¤Ê¤¤Àþ¤ò°ú¤­¤Þ¤¹¡£
º£²ó¤Ë¾ì¹ç¡¢¤½¤Î¸«¤¨¤Ê¤¤Àþ¤È Ground ¤ÎÀßÄê¤ò»ý¤Ä¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥³¥é¥¤¥À¡¼¤¬ÀÜ¿¨¤·¤¿¾ì¹ç¤Ë¤Ï true¤òÌá¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤ì¤òÀÜÃϤ·¤Æ¤¤¤ë¾õÂ֤Ǥ¢¤ë¤ÈÀßÄꤷ¤Þ¤¹¡£

¡¡¥­¥ã¥é¤¬¥¸¥ã¥ó¥×¤·¤Æ¶õÃæ¤ËÉ⤫¤Ö¤È¡¢Line ¤¬¼ÐÌ̤Υ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥³¥é¥¤¥À¡¼¤ÈÀÜ¿¨¤·¤Ê¤¯¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤Î¾ì¹ç¤Ë¤Ï false ¤¬Ìá¤ê¡¢ÀÜÃϤ·¤Æ¤¤¤Ê¤¤¾õÂ֤Ȥ·¤Þ¤¹¡£

¡¡¤³¤Î½èÍý¤Ë¤ª¤¤¤Æ¤â¡¢°ú¿ô¤ÎÃæ¤Ç transform.up ÊÑ¿ô¤¬³èÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£¤É¤Î¤è¤¦¤Ê½èÍý¤ò¹Ô¤Ã¤Æ¤¤¤ë¤«¤òÆɤ߲ò¤¤¤Æ¡¢ÀâÌÀ¤Ç¤­¤ë¤è¤¦¤ËÍý²ò¤ò¿¼¤á¤Æ¤¯¤À¤µ¤¤¡£


»²¹Í¥µ¥¤¥È
¤Î¤Ã¤Ô¤ÎÈ÷˺Ͽ ÍÍ
¥ì¥¤¥­¥ã¥¹¥È¤Þ¤È¤á
https://nopitech.com/2018/07/05/post-725/


£´¡¥¡ãDebug.DrawLine ¥á¥½¥Ã¥É¡ä


¡¡¤³¤Îµ¡Ç½¤Ï¡¢Scene¥Ó¥å¡¼¤Ë¤Æµ¡Ç½¤·¤Þ¤¹¡£

¡¡¾åµ­¤ÎLinecast¤Î¸«¤¨¤Ê¤¤Àþ¤ò²Ä»ë²½¤¹¤ë¤¿¤á¤ÎDebugµ¡Ç½¤Ç¤¹¡£°ú¿ô¤Ë¤Ï¡¢Linecast¤ÇÀßÄꤷ¤¿ÆâÍƤÈƱ¤¸ÆâÍƤÇÀßÄê¤ò¹Ô¤¦¤³¤È¤Ç
¤É¤Î°ÌÃ֤˥饤¥ó¤¬°ú¤«¤ì¤Æ¤¤¤ë¤Î¤«¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÈÀÜ¿¨¤·¤Æ¤¤¤ë¤Î¤«¤ò³Îǧ¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£


  // Scene¥Ó¥å¡¼¤Ë Physics.Linecast¥á¥½¥Ã¥É¤ÎLine¤òɽ¼¨¤¹¤ë
  Debug.DrawLine(transform.position, transform.position - transform.up * 0.3f, Color.red);


Scene¥Ó¥å¡¼¤Ç¤ÎLinecast¤Î²Ä»ë²½



¡¡¥­¥ã¥é¤ÎÃæ±û¤«¤é½Ä¤ËÀÖ¤¤Àþ¤¬¸«¤¨¤ë¤È»×¤¤¤Þ¤¹¡£¤³¤ì¤¬Linecast¥á¥½¥Ã¥É¤Î¼Â¹ÔÆâÍƤǤ¢¤ê¡¢¤½¤ì¤ò²Ä»ë²½¤·¤Æ¤¤¤Þ¤¹¡£
ÀÖ¤¤Àþ¤¬ÃÏÌ̤ËÆþ¤ê¤³¤ó¤Ç¤¤¤ë¤Î¤¬¤ï¤«¤ë¤È»×¤¤¤Þ¤¹¤¬¡¢¤³¤ÎÉôʬ¤¬¡ÖÀÜÃϤ·¤Æ¤¤¤ë¡×¤È¤·¤ÆȽÄê¤ËÍøÍѤ·¤Þ¤¹¡£

¡¡¥­¥ã¥é¤¬¥¸¥ã¥ó¥×¤·¤¿¾ì¹ç¤Ë¤Ï¡¢¤³¤ÎÀÖ¤¤Àþ¤¬ÃÏÌ̤«¤éÎ¥¤ì¤Æ¤¤¤­¤Þ¤¹¤Î¤Ç¡¢¤³¤Î¾ì¹ç¤¬¡ÖÀÜÃϤ·¤Æ¤¤¤Ê¤¤¡×¤È¤·¤ÆȽÄê¤ËÍøÍѤ·¤Þ¤¹¡£


¡ã¸¡¾ÚÆ°²è¡¡¥­¥ã¥é¤Î­¸µ¤«¤éÀÖ¤¤¥é¥¤¥ó¤¬¸«¤¨¤ë¡£¤³¤ì¤¬Linecast¥á¥½¥Ã¥É¤Î¼Â¹Ô·ë²Ì¡ä
https://gyazo.com/e98cd828f66b6847f69c5b50704890a1


¡¡¤³¤Î¤è¤¦¤Ë½èÍý¤ò²Ä»ë²½¤¹¤ë¤³¤È¤Ç¡¢¤É¤Î¤è¤¦¤Ê½èÍý¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤«¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£Èó¾ï¤Ë½ÅÍפʤ³¤È¤Ç¤¹¤Î¤Ç¡¢ÀѶËŪ¤ËÍøÍѤ·¤ÆDebug¤òĽ¤ë¤è¤¦¤Ë¤·¤Þ¤·¤ç¤¦¡£

»²¹Í¥µ¥¤¥È
Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
Debug.DrawLine
https://docs.unity3d.com/ja/current/ScriptReferenc...


£µ¡¥Slope ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î Layer ¤ÎÀßÄê¤ò¹Ô¤¦


¡¡Unity ¤Ë¤Ï¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë Layer¡Ê¥ì¥¤¥ä¡¼¡Ë¤ò£±¤ÄÀßÄꤹ¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¤³¤Îµ¡Ç½¤Ç¤Ï¡¢¥«¥á¥é¤Ë±Ç¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òLayer¤ÇÀ©¸Â¤·¤¿¤ê¡¢¤¢¤ë¤¤¤Ï¡¢ÀÜ¿¨È½Äê¤òLayer¤Ç̵»ë¤·¤¿¤ê¤È¤¤¤Ã¤¿¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

»²¹Í¥µ¥¤¥È
Unity¸ø¼°¥Þ¥Ë¥å¥¢¥ë
Layer
https://docs.unity3d.com/ja/current/Manual/Layers....



¡¡º£²ó¤Ï¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥³¥é¥¤¥À¡¼¤ÎȽÄê¤ËÍøÍѤ·¤Þ¤¹¡£
ÍøÍÑÊýË¡¤Ï¡¢¼ÐÌ̤Υ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¿·¤·¤¯ºîÀ®¤¹¤ë Ground ¤È¤¤¤¦Layer¤òÀßÄꤷ¡¢¤½¤ÎLayer¤òÍøÍѤ·¤ÆȽÄê¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡¤Þ¤º¤Ï¿·¤·¤¤Layer¤òºîÀ®¤·¤Þ¤¹¡£¤É¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤â¤è¤¤¤Î¤Ç¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ÎLayer¤òÁªÂò¤·¤Æ¡¢°ìÈÖ²¼¤Ë¤¢¤ë Add Layer ¤òÁªÂò¤·¤Þ¤¹¡£
Layer¤ò´ÉÍý¤·¤Æ¤¤¤ë¥¦¥¤¥ó¥É¥¦¤¬³«¤­¤Þ¤¹¤Î¤Ç¡¢£¸ÈÖÌܤÎLayer¤È¤·¤Æ Ground ¤òÅÐÏ¿¤·¤ÆºîÀ®¤·¤Þ¤¹¡£


¡ã¼ê½çÆ°²è¡¡Layer¤ÎÅÐÏ¿¡ä
https://gyazo.com/fcf7fd43098e177ca24f2bd27fe77405



¡¡ÅÐÏ¿¤¬½ªÎ»¤·¤¿¤Î¤Ç¡¢¼¡¤Ï¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ËLayer¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡¥Ò¥¨¥é¥ë¥­¡¼¤Ë¤¢¤ë Slope ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤é Layer¤ò Default ¤«¤é Ground ¤ËÊѹ¹¤·¤Þ¤¹¡£


Slope ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


£¶¡¥Penguin ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤ò¹Ô¤¦


¡¡ºÇ¸å¤Ë¡¢Penguin ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î PlayerController ¥¹¥¯¥ê¥×¥È¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ë¿·¤·¤¤ÊÑ¿ô¤¬£²¤ÄÄɲ䵤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢groundLayer ÊÑ¿ô¤Ë¡¢Ground ¤òÀßÄꤷ¤Þ¤¹¡£
Layer ¾ðÊó¤Ï¥×¥ë¥À¥¦¥ó¥á¥Ë¥å¡¼¤ÎÃ椫¤éÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¾ðÊó¤è¤êÁªÂò¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡¤³¤ÎÀßÄꤷ¤¿ Layer ¾ðÊó¤È¡¢Slope ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ËÀßÄꤷ¤¿ Layer ¤Î¾ðÊó¤È¤¬°ìÃפ¹¤ë¤«¤ò¡¢Linecast ¥á¥½¥Ã¥É¤ÇȽÄê¤ò¹Ô¤¤¤Þ¤¹¡£
¤½¤Î·ë²Ì¤¬ isGrounded ÊÑ¿ô¤ËÂåÆþ¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢isGrounded ÊÑ¿ô¤Ï½é´üÃͤΤޤޤÇÌäÂꤢ¤ê¤Þ¤»¤ó¡£


Penguin ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



£·¡¥¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆÆ°ºî¤ò³Îǧ¤¹¤ë


¡¡¥¸¥ã¥ó¥×¤ÎÀ©¸æ¤¬¹Ô¤¨¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¤«¡¢¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ³Îǧ¤·¤Þ¤·¤ç¤¦¡£

¡¡¼ÐÌ̤Υ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ·¤Æ¡¢¥­¥ã¥é¤Î­¸µ¤«¤é½Ð¤Æ¤¤¤ë Line ¤¬ÀÜ¿¨¤·¤Æ¤¤¤ë´Ö¤Ï¡ÖÀÜÃϡ׾õÂ֤ˤʤê¤Þ¤¹¤Î¤Ç
¥¸¥ã¥ó¥×¤ò¹Ô¤¦¤³¤È¤¬½ÐÍè¤Æ¤¤¤ì¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£

¡¡¥¸¥ã¥ó¥×Ãæ¤Ï¡¢¤³¤Î Line ¤¬¼ÐÌ̤ޤÇÆϤ­¤Þ¤»¤ó¤Î¤Ç¡ÖÈóÀÜÃϡ׾õÂ֤ˤʤê¤Þ¤¹¤Î¤Ç¡¢¥¸¥ã¥ó¥×¤¬½ÐÍè¤Ê¤¤¾õÂ֤ʤé¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£

¡¡¤³¤ÎÀ©¸æ¤Ë¤è¤Ã¤Æ¡¢ÀÜÃÏÃæ¤Ë£±²ó¤À¤±¥¸¥ã¥ó¥×¤ò¹Ô¤¨¤ë¤è¤¦¤ËÀ©¸æ¤µ¤ì¤Þ¤¹¡£


¡ã¼ÂÁõÆ°²è¡¡¼ÐÌ̤ÎȽÄê¤ò¹Ô¤Ã¤Æ¡¢¼ÐÌ̤ˤ¤¤ë´Ö¤Ë£±²ó¤À¤±¥¸¥ã¥ó¥×¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¡ä
https://gyazo.com/8276d22805cc14fdedf426fa5a7fbb7d


¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£

¡¡¼¡¤Ï¡¡¼ê½ç£±£¶¡¡¡Ý¥¸¥ã¥ó¥×¤Î¥¢¥Ë¥á¡¼¥·¥ç¥ó¤Î¼ÂÁõ¡Ý¡¡¤Ç¤¹¡£

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


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

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

Menu



´ðÁÃ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

private



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

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