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

¡¡¥×¥ì¥¤¥ä¡¼¤Î°ÜÆ°µ¡Ç½¤ò¼ÂÁõ¤·¤Þ¤¹¡£

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

¼ê½ç£´¡¡¡¼¥×¥ì¥¤¥ä¡¼¤Î°ÜÆ°µ¡Ç½¤Î¼ÂÁõ¡¼



¡¡¡¦SerializeField °À­
¡¡¡¦TryGetComponent ¥á¥½¥Ã¥É¤È out ¥­¡¼¥ï¡¼¥ÉÀë¸À
¡¡¡¦Input.GetAxis ¥á¥½¥Ã¥É
¡¡¡¦FixedUpdate ¥á¥½¥Ã¥É
¡¡¡¦Rigidbody.velocity ÊÑ¿ô



£±¡¥Àß·×


¡¡¥×¥ì¥¤¥ä¡¼¤Î°ÜÆ°¤Ë¤Ä¤¤¤Æ¤Ï¡¢¤Þ¤º¤Ïº¸±¦Êý¸þ¤Î¤ß¤Î°ÜÆ°¤ò¹Ô¤¦·Á¤Ç¼ÂÁõ¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡È¯Å¸ÊԤǤϡ¢»ØÄꤷ¤¿¥ì¡¼¥ó¾å¤òº¸±¦°ÜÆ°¤µ¤»¤ë¤³¤È¤Ç¡¢¥²¡¼¥à²èÌ̤αü¹Ô¤òÍøÍѤ·¤¿º¸±¦°ÜÆ°¤ò¹Ô¤¨¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£

¡¡¤Þ¤º¤ÏºÇ½é¤Ë¥×¥ì¥¤¥ä¡¼¤Îʬ¿È¤È¤Ê¤ë£³£Ä¥­¥ã¥é¥¯¥¿¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥²¡¼¥à²èÌ̤ËÇÛÃÖ¤·¤Þ¤¹¡£
¤½¤Î¸å¡¢°ÜÆ°ÍѤΥ¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Æ¡¢¥×¥ì¥¤¥ä¡¼¤Î°ÜÆ°¤ò¼ÂÁõ¤·¤Þ¤¹¡£


£²¡¥¥×¥ì¥¤¥ä¡¼ÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥Ý¡¼¥È¤ÈÇÛÃÖ¤ò¹Ô¤¦

¡¡
¡¡¥×¥ì¥¤¥ä¡¼ÍÑ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Þ¤¹¡£

¡¡¥¢¥»¥Ã¥È¥¹¥È¥¢¤ä¡¢ÌµÎÁ¤Î£³£Ä¥â¥Ç¥ë¥µ¥¤¥È¤Ê¤É¤«¤é¥²¡¼¥à¤ËÍøÍѤ·¤¿¤¤¥­¥ã¥é¥¯¥¿¡¼¤Î¥â¥Ç¥ë¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¡¢Unity ¤Ë¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£

¡¡º£²ó¤ÎÀ©ºîÎã¤Ç¤Ï¡¢Unity ¸ø¼°¥­¥ã¥é¥¯¥¿¡¼¤Ç¤¢¤ë UnityChan ¤Î¥Ç¡¼¥¿¤òÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£
¤½¤Á¤é¤òÍøÍѤ¹¤ë¾ì¹ç¤Ë¤Ï¡¢²¼µ­¤Î¸ø¼°¥µ¥¤¥È¤è¤ê¡¢É¬Íפʥǡ¼¥¿¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Æ Unity ¤Ø¥¤¥ó¥Ý¡¼¥È¤·¤Æ¤¯¤À¤µ¤¤¡£

UNITY-CHAN! OFFICIAL WEBSITE
https://unity-chan.com/

¡¡
¡¡¿§¡¹¤Ê¼ïÎà¤Î Unity ¤Á¤ã¤ó¤Î¥â¥Ç¥ë¤ä¡¢Â¾¤Î¥­¥ã¥é¥¯¥¿¡¼¤Î¥â¥Ç¥ë¤â¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¼«Ê¬¤ÎÀ¤³¦´Ñ¤Ë¸«¹ç¤Ã¤¿¤â¤Î¤òÍøÍѤ·¤Þ¤·¤ç¤¦¡£


¥Î¡¼¥Þ¥ë



¥Ç¥Õ¥©¥ë¥á



¥í¡¼¥Ý¥ê




¡¡Â³¤¤¤Æ¡¢Scene¥Ó¥å¡¼ Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤·¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤ÆÇÛÃÖ¤·¤Þ¤¹¡£
¥Ò¥¨¥é¥ë¥­¡¼¤ËÀßÃÖ¤·¤Æ¤â¤¤¤¤¤Ç¤¹¡£

¡¡Unity ¤Á¤ã¤ó¤Î¾ì¹ç¤Ë¤Ï¡¢Prefabs ¥Õ¥©¥ë¥ÀÆâ¤Ë¤¢¤ë Unitychan ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¤¯¤À¤µ¤¤¡£
¤½¤ì°Ê³°¤Î¥¢¥»¥Ã¥È¤Î¾ì¹ç¤Ë¤âÂçÂÎ Prefabs ¥Õ¥©¥ë¥À¤¬¤¢¤ê¡¢¤½¤ÎÃæ¤ËÍÑ°Õ¤µ¤ì¤Æ¤¤¤ë¥â¥Ç¥ë¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÍøÍѤ¹¤ë¤È¤¤¤¤¤Ç¤·¤ç¤¦¡£


¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹
Assets/UnityChan/Prefabs/unitychan.prefab
¡¡

¥Õ¥©¥ë¥À²èÁü



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




£³¡¥¥×¥ì¥¤¥ä¡¼ÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤ò¹Ô¤¦


¡¡¥Ò¥¨¥é¥ë¥­¡¼¤Ç¥×¥ì¥¤¥ä¡¼ÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ë¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
ʪÍý±é»»¤òÍøÍѤ¹¤ë¤¿¤á¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Î°ìÈÖ²¼¤Ë¤¢¤ë Add Component ¥Ü¥¿¥ó¤ò²¡²¼¤·¤Æ¡¢Rigidbody ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤È CapsuleCollider ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÄɲä·¤Þ¤¹¡£


»²¹ÍÎã¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



¡¡¾åµ­²èÁü¤ÎÊ䭤Ȥ·¤Þ¤·¤Æ¡¢Unitychan ¤Î¥â¥Ç¥ë¤Ë¤è¤Ã¤Æ¤Ï SpringManager ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ä¡¢Auto Blink ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤È¤¤¤Ã¤¿¤â¤Î¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤â¤¢¤ê¤Þ¤¹¤¬¡¢
¤³¤ì¤é¤Ï¤Ê¤¯¤Æ¤âÌäÂꤢ¤ê¤Þ¤»¤ó¡£¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤Î¤Þ¤Þ½é´üÀßÄê¤Î¤Þ¤Þ¤ÇÌäÂꤢ¤ê¤Þ¤»¤ó¡£

¡¡¤Þ¤¿¡¢Transform ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î Position ¤ÎÃͤˤĤ¤¤Æ¤Ï¡¢¼«Ê¬¤¬¥²¡¼¥àÆâ¤ËÇÛÃÖ¤·¤¿°ÌÃÖ¾ðÊó¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢
¤³¤Î²èÁü¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ÎÃͤˤ¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£(¤¢¤¯¤Þ¤Ç¤â»²¹ÍÎã¤Ç¤¹¡£)



¡¡Â³¤¤¤Æ¡¢Äɲä·¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡Rigidbody ¥³¥ó¥Ý¡¼¥Í¥ó¥ÈÆâ¤Ë¤¢¤ë Constraints ¤ÎÀßÄê¤ò¹Ô¤¤¡¢ÊªÍý±é»»»þ¤Ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¼«Ê¬¤ÎÎϤDz󞤷¤Æ¤·¤Þ¤ï¤Ê¤¤¤è¤¦¤Ë
Freeze Rotation ¤Î³Æ¹àÌÜ(X¡¢Y¡¢Z)¤Ë¥Á¥§¥Ã¥¯¤òÆþ¤ì¤Þ¤¹¡£Freeze Position ¤ÎÊý¤Ç¤Ï¤Ê¤¤¤¿¤á¡¢µ¤¤òÉÕ¤±¤Æ¤¯¤À¤µ¤¤¡£

¡¡CapsuleCollider ¥³¥ó¥Ý¡¼¥Í¥ó¥ÈÆâ¤Î Edit Collider ¤Î¥Ü¥¿¥ó¤ò²¡¤¹¤È¡¢Scene¥Ó¥å¡¼ Æâ¤Ë¥³¥é¥¤¥À¡¼¤¬²Ä»ë²½¤µ¤ì¤Æ¡¢¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤Ç¥µ¥¤¥º¤òÊѹ¹½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
¥­¥ã¥é¤Î¥â¥Ç¥ë¤Ë¹ç¤Ã¤¿·Á¾õ¤ËÄ´À°¤ò¹Ô¤Ã¤Æ¤¯¤À¤µ¤¤¡£


£´¡¥PlayerController ¥¯¥é¥¹¤òºîÀ®¤¹¤ë


¡¡¥×¥ì¥¤¥ä¡¼¤Î¾ðÊó¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥¹¥¯¥ê¥×¥È¤È¤·¤Æ PlayerController ¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£
¤³¤Î¥¹¥¯¥ê¥×¥ÈÆâ¤Ë°ÜÆ°¤Î½èÍý¤òµ­½Ò¤·¡¢¥×¥ì¥¤¥ä¡¼¤òÀ©¸æ¤·¤Þ¤¹¡£

¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Æ¤¤¤¯ºÝ¤Ë¤Ï¡¢À衹¤Î¤³¤È¤ò¹Í¤¨¤Æ¡¢»öÁ°¤Ë¥Õ¥©¥ë¥À¤òºîÀ®¤·¡¢¤½¤ÎÃæ¤Ë¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Æ¤¤¤¯¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹¡£

¡¡Assets ¥Õ¥©¥ë¥ÀÆâ¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤¯¤È¡¢Create => Folder ¤È¤¤¤¦¥³¥Þ¥ó¥É¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤Ç¿·¤·¤¤¥Õ¥©¥ë¥À¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
Scripts ¤Î¤è¤¦¤Ê¤ï¤«¤ê¤ä¤¹¤¤¤Ç¥Õ¥©¥ë¥À¤òºîÀ®¤·¡¢¤½¤Î¥Õ¥©¥ë¥À¤ÎÃæ¤ÇºÆÅÙ±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤­¡¢Create => C# Script ¤òÁªÂò¤·¤Æ
¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¡¢Ì¾Á°¤ò PlayerController ¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£


¥Õ¥©¥ë¥ÀºîÀ®




PlayerController.cs

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



£µ¡¥¡ãSerializeField °À­¡ä


¡¡ÊÑ¿ô¤ÎÀë¸À¤Ë¹ç¤ï¤»¤ÆÀë¸À¤Ç¤­¤ë¡¢Â°À­¾ðÊó¤È¸Æ¤Ð¤ì¤ë¤â¤Î¤Î£±¤Ä¤Ç¤¹¡£ÊÑ¿ô¤ÎÀë¸À¤ÎÁ°¤Ë [ ] ÉÕ¤­¤Ç½ñ¤«¤ì¤¿ÆâÍƤ¬Â°À­¾ðÊó¤È¤Ê¤ê¤Þ¤¹¡£

¡¡º£²óÍøÍѤ·¤Æ¤¤¤ë°À­¤Ï SerializeField ¤È¤¤¤¦Â°À­¾ðÊó¤Ç¤¹¡£¤³¤Îµ¡Ç½¤Ï¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¾å¤ËÊÑ¿ô¤òɽ¼¨¤µ¤»¤ë¡¢¤È¤¤¤¦¤â¤Î¤Ç¤¹¡£

¡¡¼ç¤Ë private ½¤¾þ»Ò¤È¥»¥Ã¥È¤ÇÍѤ¤¤é¤ì¡¢¥¢¥µ¥¤¥ó¤ò¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¾å¤Ç²Äǽ¤Ë¤¹¤ë¤â¤Î¤Î¡¢ÊÑ¿ô¤Î»²¾ÈÀ褬³°Éô¤Î¥¹¥¯¥ê¥×¥È¤Ë¤Ê¤¤(public¤ÎɬÍפ¬¤Ê¤¤)¾ì¹ç¤ËÍøÍѤ·¤Þ¤¹¡£

¡¡¤¿¤È¤¨¤Ð Button¥³¥ó¥Ý¡¼¥Í¥ó¥È¤äText¥³¥ó¥Ý¡¼¥Í¥ó¥È¤È¤¤¤Ã¤¿¡¢¥¢¥µ¥¤¥ó¤Ï¤¹¤ë¤â¤Î¤Î¡¢¤½¤ÎÊÑ¿ô¤ÎÍøÍÑÀ褬¾¤Î¥¹¥¯¥ê¥×¥È¤Ë¤Ï¤Ê¤¤¤è¤¦¤Ê¤â¤Î¡¢¤Ë¤ÏÍøÍѤ·¤ä¤¹¤¤¤Ç¤¹¡£

¡¡º£²ó¤Ï¥×¥ì¥¤¥ä¡¼¤Î°Üư®ÅÙ¤òÀßÄꤹ¤ë¤¿¤á¤ÎÊÑ¿ô¤ÎÀë¸À¤Ë°À­¾ðÊó¤òÉÕÍ¿¤·¤Æ¤¤¤Þ¤¹¡£
°Üư®Å٤ξðÊó¤ò¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ëɽ¼¨¤µ¤»¤ë¤³¤È¤Ë¤è¤ê¡¢°Üư®ÅÙ¤ÎÄ´À°¤Ë¤¢¤¿¤ê¡¢
¥¹¥¯¥ê¥×¥ÈÆâ¤Ç¤½¤ÎÅÔÅÙ½ñ¤­Ä¾¤µ¤Ê¤¯¤Æ¤â¤è¤¤¤è¤¦¤Ë¤¹¤ëÌÜŪ¤ÇÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£


£¶¡¥¡ãTryGetComponent ¥á¥½¥Ã¥É¤È out ¥­¡¼¥ï¡¼¥ÉÀë¸À¡ä


¡¡Unity2019.2°Ê¹ß¤ËÄɲ䵤줿¥á¥½¥Ã¥É¤Ç¤¹¡£½èÍý·ë²Ì¤È¤·¤Æ bool ·¿¤ÇÌá¤êÃͤòÊÖ¤·¤Æ¤¯¤ì¤Þ¤¹¡£
¤³¤Î¤È¤­¤Î½èÍý·ë²Ì¤È¤¤¤¦¤Î¤Ï¡¢»ØÄꤷ¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î·¿¤Î¼èÆÀ¤ò¹Ô¤¤¡¢¤½¤ì¤¬¼èÆÀ¤Ç¤­¤ì¤Ðtrue¡¢¼èÆÀ¤Ç¤­¤Ê¤±¤ì¤Ðfalse¤¬Ìá¤ê¤Þ¤¹¡£

¡¡¤Þ¤¿ out ¥­¡¼¥ï¡¼¥É¤Ë¤è¤ëÀë¸À¤¬¤¢¤ê¤Þ¤¹¡£
¡¡out ¥­¡¼¥ï¡¼¥ÉÀë¸À¤ò¹Ô¤¦¤È¡¢out ¤òÉÕ¤±¤¿°ú¿ô¤Ç»ØÄꤷ¤¿ÊÑ¿ô¤Ï¥á¥½¥Ã¥ÉÆâ¤Çɬ¤º·ë²Ì¤¬Æþ¤ë¤³¤È¤¬Êݾڤµ¤ì¤ë¤â¤Î¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢½èÍý·ë²Ì¤ÎÌá¤êÃͤ¬ true ¤Î¾ì¹ç¤Ë¤Ïɬ¤º¡¢¤³¤Î out ¤Î¸å¤ËÀë¸À¤·¤¿ÊÑ¿ôÆâ¤Ë·¿¤¬ÂåÆþ¤µ¤ì¤Þ¤¹¡£

¡¡Ã¼Åª¤Ë¤¤¤¦¤Ê¤é¤Ð¡¢GetComponent ¥á¥½¥Ã¥É¤Î½èÍý¤Ë²Ã¤¨¤Æ¡¢¤½¤Î½èÍý¤ÎÀ®ÈÝȽÄê(¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¼èÆÀ½ÐÍ褿¤«¡¢½ÐÍè¤Ê¤«¤Ã¤¿¤«)¤òƱ»þ¤Ë¹Ô¤Ã¤Æ¤¯¤ì¤ë¥á¥½¥Ã¥É¤Ë¤Ê¤ê¤Þ¤¹¡£

¡ã¼ÂÁõÎã­¡¡ä
  private Rigidbody rb;

  TryGetComponent(out rb);

¡ã¼ÂÁõÎã­¢¡¡Ìá¤êÃͤò³èÍÑ¡ä
if(col.gameObject.TryGetComponent(out Rigidbody rigid)) {

   // ½èÍý¤ò½ñ¤¯
}

¡¡º£²ó¤Ï¼ÂÁõÎã­¡¤Î½èÍý¤È¤·¤ÆÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£¥¹¥¯¥ê¥×¥ÈÆâ¤Ë TryGetComponent ¥á¥½¥Ã¥É¤òľÀܵ­½Ò¤·¤¿¾ì¹ç¡¢GetComponent ¥á¥½¥Ã¥É¤ÈƱÍͤˡ¢
¤³¤Î¥¹¥¯¥ê¥×¥È¤¬¥¢¥¿¥Ã¥Á¤·¤Æ¤¤¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤«¤é»ØÄꤵ¤ì¤Æ¤¤¤ë¼ïÎà¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¼èÆÀ¤·¤Æ¤Þ¤¹¡£
¤½¤ì¤ò out ¥­¡¼¥ï¡¼¥É¸å¤Î rb ÊÑ¿ô¤ËÂåÆþ¤·¤Æ¤¤¤Þ¤¹¡£GetComponent ¥á¥½¥Ã¥É¤Î¤è¤¦¤Ë<·¿°ú¿ô>¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¤Î¤Ï¡¢rb ÊÑ¿ô¤Ë¤è¤Ã¤Æ·¿¤ò¿äÏÀ¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¢¤ë¤¿¤á¤Ç¤¹¡£

¡¡out ¥­¡¼¥ï¡¼¥É°Ê¹ß¤Ë¤Ï¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤«¤é¼èÆÀ¤·¤¿¤¤·¿¤ÈÊÑ¿ô¤òÀë¸À¤·¤Þ¤¹¡£º£²ó¤Î¤è¤¦¤Ë»öÁ°¤ËÊÑ¿ô¤ÎÀë¸À¤ò¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ÊÑ¿ô¤Î¤ß¤òÍÑ°Õ¤·¤Æ¤ª¤¯¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡¼ÂÁõÎã­¢¤Î¾ì¹ç¤Ï¡¢¤â¤·¤â¤³¤Î TryGetComponent ¥á¥½¥Ã¥É¤Î½èÍý·ë²Ì¤¬¼Â¹Ô²Äǽ¤Ê¤é¤Ð¡¢¤Ä¤Þ¤ê¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë Rigidbody ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢
out ¤È¤·¤ÆÍÑ°Õ¤·¤¿ rigid ÊÑ¿ô¤Ë Rigidbody ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¾ðÊó¤¬ÂåÆþ¤µ¤ì¤Þ¤¹''¡£¤Þ¤¿¡¢true ¤ÎÃͤ¬¡¢¤½¤ì¤È¤ÏÊ̤˽èÍý·ë²Ì¤È¤·¤ÆÌá¤ê¤Þ¤¹¡£
out ¤ËÍÑ°Õ¤·¤¿ÊÑ¿ô¤¬»öÁ°¤ËÀë¸À¤µ¤ì¤Æ¤¤¤ëÊÑ¿ô¤Î¾ì¹ç(Î㤨¤Ð rb ÊÑ¿ô)¤Ë¤Ï¡¢Àë¸À¤µ¤ì¤Æ¤¤¤¿ÊÑ¿ô¤ËÂåÆþ¤µ¤ì¤Þ¤¹¡£
¤³¤ÎÊÕ¤ê¤ÏÊÑ¿ô¤Î¥¹¥³¡¼¥×¤ò¹Í¤¨¤Æ¼ÂÁõ¤ò¹Ô¤¦É¬Íפ¬¤¢¤ê¤Þ¤¹¡£

¡¡TryGetComponent ¥á¥½¥Ã¥É¤Î½èÍý·ë²Ì¤¬ false ¤Î¾ì¹ç¤Ë¤Ï Rigidbody ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¼èÆÀ¤¬¤Ç¤­¤Ê¤«¤Ã¤¿¤¿¤á¡¢rigid ÊÑ¿ô¤Ï null ¤Î¤Þ¤Þ¤Ç¡¢false ¤¬½èÍý·ë²Ì¤È¤·¤ÆÌá¤ê¤Þ¤¹''¡£


¡¡¤Ê¤ª TryGetComponent ¥á¥½¥Ã¥É¤Ë¤ÏÊ£¿ô¤Î½ñ¼°¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Á¤é¤Ï²¼µ­¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£

»²¹Í
Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
Component.TryGetComponent
https://docs.unity3d.com/ScriptReference/Component...


£·¡¥¡ãInput.GetAxis ¥á¥½¥Ã¥É¡ä


¡¡Ê̤ε­»ö¤Ç¾Ü¤·¤¯²òÀ⤷¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤ò³Îǧ¤·¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£


¡¡=>¡¡Input.GetAxis¥á¥½¥Ã¥É¤ÈInputManager¤Î´ØÏ¢À­


£¸¡¥¡ãFixedUpdate ¥á¥½¥Ã¥É¡ä


¡¡Rigidbody ¤Ë¤è¤ëʪÍý±é»»¤Î½èÍý¤ò·Ñ³Ū¤Ë½èÍý¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢Update ¥á¥½¥Ã¥É¤Ç¤Ï¤Ê¤¯¤Æ FixedUpdate ¥á¥½¥Ã¥É¤òÍøÍѤ·¤ÆÀ߷פò¹Ô¤¤¤Þ¤¹¡£

¡¡FixedUpdate ¥á¥½¥Ã¥É¤Ï½é´üÀßÄê¤Ç¤Ï 0.02ÉÃ(1Éô֤Ë50²ó)¤´¤È¤Î¸ÇÄê¥Õ¥ì¡¼¥à¥ì¡¼¥È¤Ç¡¢ÊªÍý±é»»¤Î½èÍý¤Î¹¹¿·¤ò¹Ô¤¦Ä¾Á°¤Ë¼«Æ°Åª¤Ë¸Æ¤Ó¤À¤µ¤ì¤ë¥á¥½¥Ã¥É¤Ç¤¹¡£

¡¡Update ¥á¥½¥Ã¥É¤Ï¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈÅù¤ÎÆ°ºî¤Î¥ì¥ó¥À¥ê¥ó¥°Á°¤ËËè¥Õ¥ì¡¼¥à¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢
½èÍý¤Î¼Â¹Ô¥¿¥¤¥ß¥ó¥°¤È¥Õ¥ì¡¼¥à¤Î¸Æ¤Ó½Ð¤·¤¬¸ÇÄ꤫¤É¤¦¤«¤¬ Update ¥á¥½¥Ã¥É¤È FixedUpdate ¥á¥½¥Ã¥É¤Î°ã¤¤¤Ç¤¹¡£

¡¡°Ê¾å¤Î¤³¤È¤«¤é¡¢FixedUpdate ¥á¥½¥Ã¥É¤ÏʪÍýµóÆ°¤Î¹¹¿·¤ÎľÁ°¤Ë¸Æ¤Ð¤ì¤ë¥á¥½¥Ã¥É¤Ç¤¢¤ë¤¿¤á¡¢ÊªÍý±é»»¤Î½èÍý¤ò¹Ô¤¦¤³¤È¤ËŬ¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç
Rigidbody ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÍøÍѤ·¤¿ÊªÍý±é»»¤òÍѤ¤¤¿°ÜÆ°½èÍý¤Ë¤Ä¤¤¤Æ¤Ï¡¢FixedUpdate ¥á¥½¥Ã¥É¤Ë¤Æ¹Ô¤¦¤è¤¦¤Ë¤·¤Æ¤¤¤Þ¤¹¡£


»²¹Í¥µ¥¤¥È
SamuraiBlog ÍÍ
¡ÚUnityÆþÌç¡ÛUpdate¥á¥½¥Ã¥É¤È¤Ï?FixedUpdate¤È¤Î°ã¤¤¤âÅ°Äì²òÀâ!
https://www.sejuku.net/blog/49382
¤«¤á¤¯¤á ÍÍ
Unity¤ÎUpdate¤ÈFixedUpdate¡¢LateUpdate¥á¥½¥Ã¥É¤Ë¤Ä¤¤¤Æ
https://gametukurikata.com/basic/update


£¹¡¥¡ãRigidbody.velocity ÊÑ¿ô¡ä


¡¡velocity(¥Ù¥í¥·¥Æ¥£)¤È¤ÏRigidbody¥¯¥é¥¹¤Î»ý¤Ä¾ðÊó¤Î£±¤Ä¤Ç¡¢³Æ¼´(x,y,z)¤Î®Å٥٥¯¥È¥ë¤òɽ¤·¤Æ¤¤¤Þ¤¹¡£
¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬Ää»ß¤·¤Æ¤¤¤ë¾ì¹ç¡¢velocity¤ÎÃͤϤ¹¤Ù¤Æ 0 ¤Ç¤¹¡£(velocity = 0, 0, 0)

  // °ÜÆ°Êý¸þ¤Ë¥¹¥Ô¡¼¥É¤ò³Ý¤±¤Æ°ÜÆ°
  rb.velocity = new Vector3(horizontal * moveSpeed, rb.velocity.y, 0);

¡¡x ¼´¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥­¡¼ÆþÎϤÎÃÍ¤È moveSpeed ÊÑ¿ô¤Î·×»»·ë²Ì¤¬Æþ¤ê¡¢¤½¤Î¼´¤ÎÊý¸þ¤Ø°ÜÆ°¤ò¹Ô¤¤¤Þ¤¹¡£
y ¼´¤Ï velocity ÊÑ¿ô¤Î y ¤ÎÃͤ¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢½ÅÎϤ˱ƶÁ¤¬¤¢¤ë¾ì¹ç¤Ë¤Ï¥Þ¥¤¥Ê¥¹Êý¸þ¤Ø¤Î®ÅÙ¤¬Æþ¤ê¡¢
¤½¤Î·ë²Ì¡¢ÃÏÌ̤˸þ¤«¤Ã¤ÆÍî²¼¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹¡£
z ¼´¤Ë¤Ä¤¤¤Æ¤Ï°ÜÆ°¤¹¤ëÂоݤμ´¤Ç¤Ï¤Ê¤¤¤¿¤á¡¢¾ï¤Ë 0 ¤òÂåÆþ¤·¤Æ¤¤¤Þ¤¹¡£

¡¡½èÍý¤Îľ¸å¤Ë Debug.Log¥á¥½¥Ã¥É¤òÆþ¤ì¤Æ¤ª¤¯¤³¤È¤Ç¡¢Console ¥Ó¥å¡¼¤òÄ̤¸¤Æ¡¢¤³¤Î velocity ¤ÎÃͤÎÆ°¤­¤ò´Ñ»¡¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
¥­¡¼ÆþÎϤò¹Ô¤¤¤Ê¤¬¤é¡¢¤É¤Î¤è¤¦¤Ê½èÍý¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤«¤ò³Îǧ¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£


»²¹Í¥µ¥¤¥È
Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
Rigidbody-velocity
https://docs.unity3d.com/ja/current/ScriptReferenc...
SamuraiBlog ÍÍ
¡ÚUnityÆþÌç¡ÛRigidbody¤Ç¼«ºß¤Ë°ÜÆ°!velocity¤Î³èÍÑÊýË¡!
https://www.sejuku.net/blog/55084


£±£°¡¥¥×¥ì¥¤¥ä¡¼ÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë PlayerController ¥¹¥¯¥ê¥×¥È¤ò¥¢¥¿¥Ã¥Á¤¹¤ë


¡¡¥Ò¥¨¥é¥ë¥­¡¼¤Ë¤¢¤ë¥×¥ì¥¤¥ä¡¼ÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¡¢Àè¤Û¤ÉºîÀ®¤·¤¿ PlayerController ¥¹¥¯¥ê¥×¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥¿¥Ã¥Á¤·¤Þ¤¹¡£

¡¡¥Ò¥¨¥é¥ë¥­¡¼¤Î¥×¥ì¥¤¥ä¡¼ÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤òɽ¼¨¤·¤Æ¡¢PlayerController ¥¹¥¯¥ê¥×¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£

¡¡MoveSpeed ÊÑ¿ô¤ÎÃͤϥ¤¥ó¥¹¥Ú¥¯¥¿¡¼¤è¤êÄ´À°¤Ç¤­¤Þ¤¹¡£¤³¤ÎÃͤ¬¥×¥ì¥¤¥ä¡¼ÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î°Üư®ÅÙ¤ÎÃͤˤʤê¤Þ¤¹¤Î¤Ç¡¢Å¬µ¹Ä´À°¤ò¤ª´ê¤¤¤·¤Þ¤¹¡£


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



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


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


¡¡¥­¡¼ÆþÎϤò¹Ô¤Ã¤¿ºÝ¤Ë¡¢¥×¥ì¥¤¥ä¡¼¤¬¼ÂºÝ¤Ë°ÜÆ°¤¹¤ë¤«¡¢Æ°ºî³Îǧ(¥Ç¥Ð¥Ã¥°)¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡¥²¡¼¥à¤ò¼Â¹Ô¤·¡¢Ìð°õ¥­¡¼¤Îº¸±¦¡¢¤¢¤ë¤¤¤Ï£Á ¤« £Ä ¥­¡¼¤ò²¡¤·Â³¤±¤Æ¤¯¤À¤µ¤¤¡£
»ØÄꤷ¤¿Êý¸þ¤Ë°ÜÆ°¤¹¤ì¤Ð¡¢À©¸æ¤ÏÀ®¸ù¤Ç¤¹¡£
¸½»þÅÀ¤Ç¤Ï¥«¥á¥é¤Ï¥×¥ì¥¤¥ä¡¼¤òÄɽ¾¤·¤Þ¤»¤ó¤Î¤Ç¡¢¥×¥ì¥¤¥ä¡¼¤Î¤ß¤¬°ÜÆ°¤¹¤ëÀ©¸æ¤Ë¤Ê¤ê¤Þ¤¹¡£


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


¡¡Àµ¾ï¤ËÆ°ºî¤·¤¿¾ì¹ç¡¢¤½¤ì¤Ç½ª¤ï¤ê¡¢¤Ç¤Ï¤Ê¤¯¤Æ¡¢¥×¥í¥°¥é¥à¤òÆɤßľ¤·¡¢
¤É¤Î¤è¤¦¤Ê½èÍý¤Ë¤è¤Ã¤Æ¡¢º£²ó¤Î°ÜÆ°¤ÎÀ©¸æ¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë¤«¤ò¡¢¤·¤Ã¤«¤ê¤ÈÆɤ߲ò¤±¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£



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

¡¡=>¡¡¼¡¤Ï¡¡¼ê½ç£µ¡¡¡¼¥«¥á¥é¤ÎÄɽ¾µ¡Ç½¤Î¼ÂÁõ¡¼¡¡¤Ç¤¹¡£

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


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

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

Menu



´ðÁÃ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

private



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

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