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

Àß·×


¡¡Player¤Èº¸±¦¤ÎÊɤˤϾ×ÆÍȽÄ꤬¤¢¤ê¤Þ¤»¤ó¡£¤½¤Î¤¿¤á¡¢º¸±¦°ÜÆ°¤·¤Æ¤¤¤ë¤ÈPlayer¤¬ÊɤòÆͤ­È´¤±¤Æ°ÜÆ°¤¬½ÐÍè¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Þ¤¹¡£

¡¡¤³¤³¤Ç¤ÏPlayer¤Î°ÜÆ°ÈϰϤòÀ©¸Â¤¹¤ë¤³¤È¤ÇÊɤòÆͤ­È´¤±¤Æ°ÜÆ°¤·¤Ê¤¤¤è¤¦¤ËÊѹ¹¤ò¹Ô¤¤¤Þ¤¹¡£

https://gyazo.com/1a9d113fd788f866495891061aabe058

¡¡¼êË¡¤È¤·¤Æ¤Ï¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤·¤Æ¡¢Player¤ËRigidbody¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥¿¥Ã¥Á¤·¤ÆʪÍý±é»»¤òÍѤ¤¤Æ¾×ÆÍȽÄê¤ò¤·¤Æ¤â¤è¤¤¤Î¤Ç¤¹¤¬¡¢
Player¤Î°Üư®Å٤ˤè¤Ã¤Æ¤ÏÊɤòÆͤ­È´¤±¤Æ¤·¤Þ¤¦¶²¤ì¤¬¤¢¤ê¤Þ¤¹¡£
¤½¤ì¤è¤ê¤Ï¥¹¥¯¥ê¥×¥È¤Ç°ÜÆ°ÈϰϤòÀ©¸Â¤¹¤ëÊýË¡¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤Ç¼ÂÁõ¤·¤Æ¤¤¤­¤Þ¤·¤ç¤¦¡£

¡¡Player¤Î°ÜÆ°¤È¤Ï¤¹¤Ê¤ï¤Á¡¢transform.position¤ÎÃͤò½ñ¤­´¹¤¨¤ë¤³¤È¤ÈƱµÁ¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢¤³¤Îposition¤ÎÃͤòÀ©¸Â¤¹¤ë¤³¤È¤¬½ÐÍè¤ì¤Ð¡¢Player¤Î°ÜÆ°¤âÀ©¸Â¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¤è¤Ã¤Æ¤³¤³¤Ç¤Ï¡¢ÃͤòÀ©¸Â¤¹¤ë½èÍý¤Ç¤¢¤ë¡¢Mathf.Clamp¥á¥½¥Ã¥É¤òÍøÍѤ·¤Æposition¤ÎÃͤòÀ©¸Â¤¹¤ë¤³¤È¤Ç°ÜÆ°ÈϰϤòÀ©¸Â¤·¤Æ¤¤¤­¤Þ¤¹¡£

¼ÂÁõ¼ê½ç¡¡


¡¡°Ê²¼¤Î¼ê½ç¤Ç¼ÂÁõ¤·¤Þ¤¹¡£

£±¡¥Contolloer¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Þ¤¹¡£



¡¡¿·¤·¤¯³Ø½¬¤Ç¤­¤ëµ»½Ñ¤ò¤Þ¤È¤á¤Þ¤¹¡£

¡¦Mathf.Clamp¥á¥½¥Ã¥É


£±¡¥Contolloer¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡¥­¡¼ÆþÎϤˤè¤Ã¤ÆPlayer¤¬°ÜÆ°(transform.position¤¬Êѹ¹)¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢°ÜÆ°¤·¤¿ÃÏÅÀ¤¬À©¸Â¤·¤¿ÃͤÎÈÏ°ÏÆâ¤Ç¤¢¤ë¤«¤ò³Îǧ¤·¡¢
Èϰϳ°¤Î¾ì¹ç¤Ë¤ÏÀ©¸ÂÃÍÆâ¤Ë¼ý¤Þ¤ë¤è¤¦¤ËÀ©¸æ¤·¤Þ¤¹¡£

Controller.cs


¡¡½¤Àµ¤¬½ª¤ï¤Ã¤¿¤é¡¢¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ³Îǧ¤ò¤·¤Þ¤·¤ç¤¦¡£Player¤Î°ÜÆ°ÈϰϤ¬À©¸Â¤µ¤ì¤Æ¤¤¤ì¤ÐÀ®¸ù¤Ç¤¹¡£


£²¡¥¡ãMathf.Clamp¥á¥½¥Ã¥É¡¡»ØÄêÃͤòºÇ¾®ÃÍ¡¢ºÇÂçÃÍÆâ¤ËÀ©¸Â¤¹¤ë¡ä


¡¡Mathf ¹½Â¤ÂΤϡ¢Unity ¤¬ÍÑ°Õ¤·¤Æ¤¤¤ë¡¢¿ô³Ø´Ø¿ô¤ÎÊÑ¿ô¤ä¥á¥½¥Ã¥É¤ò¤Þ¤È¤á¤Æ¤¢¤ë¹½Â¤ÂΤǤ¹¡£
Ä̾ï¤Î Math ¥¯¥é¥¹¤È°Û¤Ê¤ê¡¢Ìá¤êÃÍ¤Ï float ·¿¤ÇÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£


»²¹Í¥µ¥¤¥È
Unity ¸ø¼°¥¹¥¯¥ê¥×¥È¡¦¥ê¥Õ¥¡¥ì¥ó¥¹
Mathf



¡¡Clamp ¥á¥½¥Ã¥É¤Ï¡¢¡ÖÀ©¸æ¤·¤¿¤¤»ØÄêÃͤò¡¢»ØÄꤷ¤¿ÈÏ°ÏÆâ¤ÎºÇ¾®ÃÍ¡¢ºÇÂçÃͤ˼ý¤á¤Æ¤¯¤ì¤ë(ÃÖ¤­´¹¤¨¤Æ¤¯¤ì¤ë)¡×½èÍý¤Ë¤Ê¤ê¤Þ¤¹¡£

¡ã¥á¥½¥Ã¥É¤Îµ­Ë¡¡ä
  À©¸æ¤·¤¿¤¤»ØÄêÃÍ = Mathf.Clamp(À©¸æ¤·¤¿¤¤»ØÄêÃÍ, ºÇ¾®ÃÍ, ºÇÂçÃÍ);

¡¡¤³¤Î¥á¥½¥Ã¥É¤òÍøÍѤ·¤Æ¡¢·×»»½èÍý¸å¤Î¥×¥ì¥¤¥ä¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î X ¼´¤ÎÃͤòÀ©¸Â¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¾åµ­¤Î¥á¥½¥Ã¥É¤Î½ñ¼°¤Ë¡¢À©¸æ¤·¤¿¤¤ÃͤòÅö¤Æ¤Ï¤á¤Æ½èÍý¤òÁȤßΩ¤Æ¤Æ¤ß¤Þ¤·¤ç¤¦¡£


¡¡float z = Mathf.Clamp(transform.position.z, -limitPos, limitPos);

¡¡¤È¤¤¤¦·Á¤ÇÍøÍѤ·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢transform.position.z¤ÎÃͤòÂоݤȤ·¡¢
ºÇ¾®Ãͤ¬ -limitPos °Ê²¼¤Ë¤Ê¤Ã¤¿¾ì¹ç¤Ë¤Ï -limitPos¤ÎÃͤˡ¢
ºÇÂçÃͤ¬ limitPos °Ê¾å¤Ë¤Ê¤Ã¤¿¾ì¹ç¤Ë¤Ï limitPos¤ÎÃͤËÀ©¸Â¤ò¤·¤Æ¤¯¤ì¤Þ¤¹¡£

¡¡¿ôÃͤò¤¤¤ì¤Æ½ñ¤¯¤Ê¤é¤Ð

¡¡float z = Mathf.Clamp(transform.position.z, -4.25f, 4.25f);

¡¡¤È¤Ê¤ê¤Þ¤¹¡£

¡¡¤½¤Î¸å¡¢¤½¤ÎÀ©¸Â¤µ¤ì¤¿Ãͤò¸½ºß¤ÎºÂɸ¤È¤·¤ÆŬÍѤ·¤Æ¤¤¤Þ¤¹¡£

¡¡// À©¸Â³Îǧ¸å¡¢°ÌÃÖ¾ðÊó¤ò¹¹¿·
¡¡transform.position = new Vector3(transform.position.x, transform.position.y, z);

¡¡¤³¤Î½èÍý¤Ë¤è¤ê¡¢¾ï¤Ë¥×¥ì¥¤¥ä¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥²¡¼¥à²èÌÌÆâ¤Ë¼ý¤Þ¤ë¤è¤¦¤Ë°ÜÆ°¤ÎÀ©¸Â¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹¡£



¡¡¤Ê¤ªMathf.Clamp¥á¥½¥Ã¥É¤Ë¤Ï°ú¿ô¤Î¥ª¡¼¥Ð¡¼¥í¡¼¥É¤¬¤¢¤ê¡¢°ú¿ô¤Î·¿¤Ï¡¢float·¿¤Èint·¿¤Ç¤½¤ì¤¾¤ìÍøÍѤ¬½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£

»²¹Í¥µ¥¤¥È
Unity ¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
Mathf.Clamp

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


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

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

Menu



´ðÁÃ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

private



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

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