ºÇ½ª¹¹¿·¡§
orika_ex_miyako 2021ǯ06·î05Æü(ÅÚ) 23:02:39ÍúÎò
¡ã¼ÂÁõÆ°²è¡¡²èÌ̤ò¥¿¥Ã¥×¤·¤¿ºÝ¤ËÇÛÃÖ²Äǽ¤Ê°ÌÃ֤Ǥ¢¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤Î¥¿¥Ã¥×¤·¤¿°ÌÃ֤˥¥ã¥é¤òÀ¸À®¤¹¤ë¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¡¡°Ê²¼¤ÎÆâÍƤǽçÈ֤˼ÂÁõ¤ò¿Ê¤á¤Æ¤¤¤¤Þ¤¹¡£
¼ê½ç£¶¡¡¡Ý¥¿¥¤¥ë¤Î¥¿¥Ã¥×´¶ÃÎÀ©¸æ¤Î¼ÂÁõ¡Ý
¡¡£¹¡¥¥¿¥Ã¥×¤·¤¿¥¿¥¤¥ë¤Î°ÌÃ֤˥¥ã¥é¤òÀ¸À®¤¹¤ë £±£°¡¥¥¿¥Ã¥×¤·¤¿ºÝ¤Ë¡¢ÇÛÃÖ²Äǽ¤Ê¥¿¥¤¥ë¤Î°ÌÃ֤ˤΤߥ¥ã¥é¤òÀ¸À®¤¹¤ë
¡¡¿·¤·¤¤³Ø½¬ÆâÍƤϡ¢°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£
¡¡¡¦Vector3Int ¹½Â¤ÂÎ ¡¡¡¦Camera.ScreenToWorldPoint ¥á¥½¥Ã¥É ¡¡¡¦GridLayout.WorldToCell ¥á¥½¥Ã¥É ¡¡¡¦Tilemap.GetColliderType ¥á¥½¥Ã¥É
¡¡Unity ¤Ë¤Ï²èÌ̤Υ¿¥Ã¥×¤ò´¶ÃΤ¹¤ë¤¿¤á¤ÎÀìÍѥ᥽¥Ã¥É¤¬¤¤¤¯¤Ä¤«ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤½¤Î¤¦¤Á¤Î£±¤Ä¤Ç¤¢¤ë Camera ¥¯¥é¥¹¤Î´ÉÍý¤¹¤ë ScreenToWorldPoint ¥á¥½¥Ã¥É¤Ï²èÌ̤Υ¹¥¯¥ê¡¼¥óºÂɸ¤ò¥ï¡¼¥ë¥ÉºÂɸ¤ËÊÑ´¹¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢
²èÌ̤Υ¿¥Ã¥×¤·¤¿°ÌÃÖ¾ðÊó¤ò¥²¡¼¥àÆâ¤Î°ÌÃÖ¾ðÊó¤Ø¤ÈÊÑ´¹¤·¤Æ¤¯¤ì¤Þ¤¹¤Î¤Ç¡¢¤³¤Á¤é¤òÍøÍѤ·¤Þ¤¹¡£
¡¡º£²óÍøÍѤ¹¤ë¥¿¥¤¥ë¥Þ¥Ã¥×¤Ï¥ï¡¼¥ë¥ÉºÂɸ¤Ç¤Ï¤Ê¤¯¡¢¥¿¥¤¥ë¥Þ¥Ã¥×Æâ¤Î¥»¥ëºÂɸ¤È¤¤¤¦ºÂɸÂηϤˤè¤Ã¤Æ´ÉÍý¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤½¤Î¤¿¤á½¾Íè¤Î²èÌ̤Υ¿¥Ã¥×¤ò´¶ÃΤ¹¤ë¥á¥½¥Ã¥É¤Î¤ß¤Ç¤Ï¡¢¥¿¥¤¥ë¥Þ¥Ã¥×Æâ¤Î¥¿¥¤¥ë¤òÆÃÄꤹ¤ë¤³¤È¤¬½ÐÍè¤Þ¤»¤ó¡£
¡¡¤½¤³¤Ç²èÌ̤Υ¿¥Ã¥×¤ò´¶ÃΤ·¤Æ¥ï¡¼¥ë¥ÉºÂɸ¤ò¼èÆÀ¤·¤¿¤¢¤È¤Ë¡¢¥ï¡¼¥ë¥ÉºÂɸ¤ò¥¿¥¤¥ë¥Þ¥Ã¥×¤Î¥»¥ëºÂɸ¤ËÊÑ´¹¤¹¤ë¥á¥½¥Ã¥É¤òÁȤ߹ç¤ï¤»¤ÆÍøÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢
²èÌ̤Υ¿¥Ã¥×¤·¤¿°ÌÃÖ¤ò¥¿¥¤¥ë¥Þ¥Ã¥×Æâ¤Î£±¤Ä¤Î¥¿¥¤¥ë¤ÎÃÏÅÀ¤Èɳ¤Å¤±¤ò¤·¤ÆºÂɸ¤ò»ØÄê¤Ç¤¤ë¤è¤¦¤Ë½èÍý¤ò¹Í¤¨¤Þ¤¹¡£
¡¡¥»¥ë¤ÎºÂɸ¤¬¤ï¤«¤ì¤Ð¡¢¤½¤ÎÃÏÅÀ¤ËÂФ·¤Æ Instantiate ¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ç¡¢¥¥ã¥é¤ò¥¿¥¤¥ë¥Þ¥Ã¥×¾å¤ËÀ¸À®¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡
¡¡Unity ¤ËÍÑ°Õ¤µ¤ì¤Æ¤¤¤ëÊ£¿ô¤Î¥á¥½¥Ã¥É¤È¤½¤Î¥á¥½¥Ã¥É¤ÎÌá¤êÃͤò¾å¼ê¤Ë³èÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢º£²ó¤Î¥¿¥Ã¥×½èÍý¤¬¼ÂÁõ¤Ç¤¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
º£¸å¤â¤³¤Î¤è¤¦¤ËÊ£¹ç¼°¤Ê¥í¥¸¥Ã¥¯¤ä¹Í¤¨Êý¤¬É¬Íפˤʤê¤Þ¤¹¤Î¤Ç¡¢¤·¤Ã¤«¤ê¤È³Ø½¬¤·¤Æ³è¤«¤·¤Æ¤¤¤¤Þ¤·¤ç¤¦¡£
¡¡²èÌ̤Υ¿¥Ã¥×¤ò´¶ÃΤ¹¤ë¤¿¤á¤Î¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ëÁ°¤Ë¤Ï¥¹¥¯¥ê¥×¥ÈÀìÍѤΥե©¥ë¥À¤òÍÑ°Õ¤·¡¢¤½¤ÎÃæ¤ÇºîÀ®¤¹¤ë¤è¤¦¤Ë¤·¤Æ¥Õ¥¡¥¤¥ë´ÉÍý¤ò¤·¤ä¤¹¤¯¤·¤Þ¤¹¡£
¡¡Project ¥Õ¥©¥ë¥À¤Î¶õ¤¤¤Æ¤¤¤ë¾ì½ê¤Ç±¦¥¯¥ê¥Ã¥¯¡¢¤¢¤ë¤¤¤Ï + ¥Ü¥¿¥ó¤ò²¡¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤¡¢Create => Folder ¤òÁªÂò¤·¤Þ¤¹¡£
̾Á°¤ò Scripts ¤ËÊѹ¹¤·¤Þ¤¹¡£¤³¤Î¥Õ¥©¥ë¥ÀÆâ¤ÇƱ¤¸¤è¤¦¤ËºÆÅÙ¥á¥Ë¥å¡¼¤ò³«¤¡¢Create => C# Script ¤òÁªÂò¤·¤Þ¤¹¡£
¡¡¿·¤·¤¯¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢Ì¾Á°¤ò CharaGenerator ¤ËÊѹ¹¤·¤Þ¤¹¡£
¥À¥Ö¥ë¥¯¥ê¥Ã¥¯¤¹¤ë¤³¤È¤Ç Visual Studio ¥¨¥Ç¥£¥¿¡¼¤¬µ¯Æ°¤·¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤Ë¥¹¥¯¥ê¥×¥È¤òµ½Ò¤·¤Æ¤¤¤¤Þ¤¹¡£
¡¡
CharaGenerator.cs
¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤ò¹Ô¤¤¤Þ¤¹¡£¥»¡¼¥Ö¤Ï Ctrl + Shift + S ¥¡¼¤Ç¤¹¡£
¡¡Vector3 ¹½Â¤ÂΤò int ·¿¤Çɽ¸½¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£Ä̾ï¤Î Vector3 ·¿¤È¤Î°ã¤¤¤Ï³Æ¹àÌܤ¬ float ·¿¤Ç¤Ï¤Ê¤¯¡¢¤¹¤Ù¤Æ int ·¿¤Ç´ÉÍý¤µ¤ì¤Æ¤¤¤ëÉôʬ¤Ç¤¹¡£
¡¡º£²ó¤Î¥¿¥¤¥ë¥Þ¥Ã¥×¤Ç¤ÏºÂɸ¾ðÊ󤬥¥ë¥ÉºÂɸ¤Ç¤Ï¤Ê¤¯¡¢¥»¥ëºÂɸ¤È¤¤¤¦ÂηϤǴÉÍý¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤ì¤Ï (3, 4) ¤ä(110, 44) ¤Î¤è¤¦¤Ë¡¢¤¹¤Ù¤ÆÀ°¿ô¤Î Vector3Int ¹½Â¤ÂΤǺÂɸ¤¬É½¸½¤µ¤ì¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢¥»¥ëºÂɸ¤Î¾ðÊó¤ò¥¹¥¯¥ê¥×¥ÈÆâ¤Ç°·¤¦¾ì¹ç¤Ë¤â Vector3Int ¹½Â¤ÂΤξðÊó¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢¥»¥ëºÂɸ¤ò¼èÆÀ¤·¤¿¤ê¡¢ÍøÍѤ·¤¿¤ê¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¡¡Ä̾ï¤Î¥ï¡¼¥ë¥ÉºÂɸ¤Ï Vector3 ¹½Â¤ÂÎ(float ·¿)¡¢¥»¥ëºÂɸ¤Ï Vector3Int ¹½Â¤ÂÎ(int ·¿)¤È¤¤¤¦É÷¤Ë¡¢ºÂɸ¤Î´ÉÍý¤·¤Æ¤¤¤ë·¿¤ò³Ð¤¨¤Æ¤·¤Þ¤¦¤È¤¤¤¤¤Ç¤·¤ç¤¦¡£
Unity ¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
Vector3Int
https://docs.unity3d.com/ja/current/ScriptReferenc...
¡¡°ú¿ô¤Ç»ØÄꤷ¤¿¥¹¥¯¥ê¡¼¥óºÂɸ¤Î¾ðÊó¤ò¥ï¡¼¥ë¥ÉºÂɸ¤ËÊÑ´¹¤¹¤ë¥á¥½¥Ã¥É¤Ç¤¹¡£
// ¥¿¥Ã¥×(¥Þ¥¦¥¹¥¯¥ê¥Ã¥¯)¤Î°ÌÃÖ¤ò¼èÆÀ¤·¤Æ¥ï¡¼¥ë¥ÉºÂɸ¤ËÊÑ´¹ Camera.main.ScreenToWorldPoint(Input.mousePosition);
¡¡¥¿¥Ã¥×¤·¤¿°ÌÃÖ¡¢¤¢¤ë¤¤¤Ï¥Þ¥¦¥¹¤Î¥Ý¥¤¥ó¥¿¤¬¤¢¤ë¥¹¥¯¥ê¡¼¥óºÂɸ¤Î¾ðÊó(Input.mousePosition ÊÑ¿ô)¤ò°ú¿ô¤Ë»ØÄꤷ¡¢
¤½¤ÎÃͤòÌá¤êÃͤȤ·¤Æ Vector3 ¹½Â¤ÂΤΥ¥ë¥ÉºÂɸ¤ËÊÑ´¹¤·¤Æ¤¤¤Þ¤¹¡£
¡¡º£²ó¤Ï¤³¤ÎÃͤò WorldToCell ¥á¥½¥Ã¥É¤òÍøÍѤ·¤Æ¡¢¤µ¤é¤Ë¥¿¥¤¥ë¥Þ¥Ã¥×¤Î¥»¥ëºÂɸ¤ËÊÑ´¹¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¤³¤Î¥á¥½¥Ã¥É¤Ï£²£Ä¤Ç¤ÏÌäÂê¤Ê¤¯Æ°ºî¤·¤Þ¤¹¤¬¡¢£³£Ä¤Î¾ì¹ç¤Ë¤Ï Z ¼´¤Î¾ðÊó¤ò¹Íθ¤·¤Ê¤¤¤ÈÀµ³Î¤Ê·×»»¤ò¹Ô¤Ã¤Æ¤¯¤ì¤Þ¤»¤ó¡£
¥¹¥¯¥ê¡¼¥óºÂɸ¤Ï£²¼¡¸µ(Vector2 ¹½Â¤ÂÎ)¤Ç¤¢¤ë¤¿¤á¡¢Vector3 ¹½Â¤ÂΤÎÃͤËÊÑ´¹¤·¤¿ºÝ¡¢Z ¼´¤Ë¤Ï¾ï¤Ë 0 ¤Ë¤Ê¤ë¤¿¤á¤Ç¤¹¡£
¤³¤¦¤¤¤Ã¤¿¥±¡¼¥¹¤Î¾ì¹ç¤Ë¤Ï¡¢ Z ¼´¤ËŬÀÚ¤ÊÃͤòÂåÆþ¤·¤ÆÍøÍѤ·¤Þ¤¹¡£
¤Þ¤¿¥«¥á¥é¤Î Projection ¤ÎÀßÄ꤬£²£Ä¤Î¾ì¹ç¤Ë¤Ï¼«Æ°Åª¤Ë Orthographic ¤Ë¤Ê¤ë¤Î¤ËÂФ·¡¢£³£Ä¤Î¾ì¹ç¤Ë¤Ï Perspective ¤Ë¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤ÎÊÕ¤ê¤Ë¤âÃí°Õ¤¬É¬Íפˤʤê¤Þ¤¹¡£
Unity ¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
Camera.ScreenToWorldPoint
https://docs.unity3d.com/ja/current/ScriptReferenc...
¡¡°ú¿ô¤Ë»ØÄꤷ¤¿¥ï¡¼¥ë¥ÉºÂɸ(Vector3 ·¿)¤ò¡¢¥¿¥¤¥ë¥Þ¥Ã¥×Æâ¤ÎºÂɸñ°Ì¤Ç¤¢¤ë¥»¥ëºÂɸ(Vector3Int ·¿) ¤ËÊÑ´¹¤¹¤ë¥á¥½¥Ã¥É¤Ç¤¹¡£
// ¥¿¥Ã¥×(¥Þ¥¦¥¹¥¯¥ê¥Ã¥¯)¤Î°ÌÃÖ¤ò¼èÆÀ¤·¤Æ¥ï¡¼¥ë¥ÉºÂɸ¤ËÊÑ´¹¤·¡¢¤½¤ì¤ò¤µ¤é¤Ë¥¿¥¤¥ë¤Î¥»¥ëºÂɸ¤ËÊÑ´¹ gridPos = grid.WorldToCell(Camera.main.ScreenToWorldPoint(Input.mousePosition));
¡¡º£²ó¤Î¼ÂÁõ¤Ç¤Ï¡¢ScreenToWorldPoint ¥á¥½¥Ã¥É¤ÎÌá¤êÃͤȤ·¤Æ Vector3 ¹½Â¤ÂΤξðÊó¤ò¼èÆÀ¤·¤Æ¡¢¤½¤ì¤ò¥ï¡¼¥ë¥ÉºÂɸ¤ÎÃͤȤ·¤Æ°ú¿ô¤Ë»ØÄꤷ¤Æ¤¤¤Þ¤¹¡£
WorldToCell ¥á¥½¥Ã¥É£è¤Ç¤Ï¤½¤Î°ú¿ô¤Î°ÌÃ֤ηë²Ì¤ò¥¿¥¤¥ë¥Þ¥Ã¥×Æâ¤Ë¤¢¤ë¥»¥ëºÂɸ¤È¤·¤Æ Vector3Int ¹½Â¤ÂΤξðÊó¤È¤·¤ÆÊÑ´¹¤·¤Æ¼èÆÀ¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¤³¤Î¤è¤¦¤ËºÂɸ¤Î¾ðÊó¤òÊÑ´¹¤·¤Æ¤¤¤¯¤³¤È¤Ë¤è¤Ã¤Æ¡¢²èÌ̤Υ¿¥Ã¥×¤Î°ÌÃÖ¾ðÊó¤ò¥¿¥¤¥ë¥Þ¥Ã¥×Æâ¤Î¥¿¥¤¥ë¤Î°ÌÃÖ¾ðÊó¤Èɳ¤Å¤±¤ÆÍøÍѤ¹¤ë½èÍý¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
Unity ¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
Grid
https://docs.unity3d.com/ja/current/ScriptReferenc...
Unity ¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
GridLayout.WorldToCell
https://docs.unity3d.com/ja/current/ScriptReferenc...
¡¡¥Ò¥¨¥é¥ë¥¡¼¤Î¶õ¤¤¤Æ¤¤¤ë¾ì½ê¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤¡¢Create Empty ¤òÁªÂò¤·¤Þ¤¹¡£
¿·¤·¤¤ Transform ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¤ß¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬ºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢Ì¾Á°¤ò CharaGenerator ¤ËÊѹ¹¤·¤Þ¤¹¡£
¥Ò¥¨¥é¥ë¥¡¼²èÁü

¡¡Àè¤Û¤ÉºîÀ®¤·¤¿ CharaGenerator ¥¹¥¯¥ê¥×¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ CharaGenerator ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤·¤Þ¤¹¡£
¥¢¥¿¥Ã¥Á¤·¤¿¤éɬ¤º¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Æ¡¢Àµ¾ï¤Ë¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¤«¤òÌÜ»ë¤Ç¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£
¡¡CharaGenerator ¥¹¥¯¥ê¥×¥È¤Ë¤Ï¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤è¤ê¥¢¥µ¥¤¥ó¤¹¤ë¾ðÊ󤬣²¤Äɽ¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤³¤Á¤é¤òÀßÄꤷ¤Þ¤¹¡£
¡¡CharaPrefab ÊÑ¿ô¤Ë¤Ï¡¢Prefabs ¥Õ¥©¥ë¥À¤Ë¤¢¤ë Chara ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥×¥ì¥Õ¥¡¥Ö¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£
¡¡Grid ÊÑ¿ô¤Ë¤Ï Grid_Base ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£Grid ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬ÊÑ¿ô¤Î¾ðÊó¤È¤·¤ÆÂåÆþ¤µ¤ì¤Þ¤¹¡£
¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü

¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£
¡¡¥»¡¼¥Ö¤ò¹Ô¤¤¡¢¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ½èÍý¤ò³Îǧ¤·¤Þ¤·¤ç¤¦¡£
¤É¤Î¤è¤¦¤Ê½èÍý¤òµ½Ò¤·¡¢¤É¤Î¤è¤¦¤ÊÀ©¸æ½èÍý¤¬Æ°¤¯¤Î¤«¡¢¥¤¥á¡¼¥¸¤òºî¤Ã¤Æ¤«¤é¼Â¹Ô¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡²èÌ̤ò¥Þ¥¦¥¹¤Ç¥¯¥ê¥Ã¥¯¤·¤Æ¤¯¤À¤µ¤¤¡£¤½¤ÎÃÏÅÀ¤Î¥¿¥¤¥ë¾å¤Ë¥¥ã¥é¤¬À¸À®¤µ¤ì¤ì¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£
¡ã¼Â¹ÔÆ°²è¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¡¡
¡¡Â³¤¤¤Æ¤Ï¡¢¥¿¥Ã¥×¤·¤¿ºÝ¤ÎÀ©¸æ½èÍý¤òÄɲä·¤Þ¤¹¡£
¡¡¸½ºß¤Ï¤¹¤Ù¤Æ¤Î¥¿¥¤¥ë¤ò¥¿¥Ã¥×¤Ç´¶ÃΤ·¤Æ¤·¤Þ¤¦¤¿¤á¡¢¥¥ã¥é¤¬¤É¤³¤Ç¤â¼«Í³¤ËÇÛÃ֤Ǥ¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
¤³¤Î¤Þ¤Þ¤Ç¤¹¤È¥¿¥ï¡¼¥Ç¥£¥Õ¥§¥ó¥¹¥²¡¼¥à¤È¤·¤Æ¤ÏÀ®¤êΩ¤¿¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¦¤¿¤á¡¢
¥¿¥Ã¥×¤·¤¿ºÝ¤Ë¡ÖÇÛÃÖ²Äǽ¤Ê¥¿¥¤¥ë¡×¤Î¤ß¤òÁªÊ̤·¡¢¤½¤ÎÃÏÅÀ¤Ë¤Î¤ß¥¥ã¥é¤òÀ¸À®¤¹¤ëÀ©¸æ½èÍý¤ò¼ÂÁõ¤·¤Þ¤¹¡£
¡¡
¡¡ÇÛÃÖ²Äǽ¤Ê¥¿¥¤¥ë¤ÎȽÄê¤Ë¤Ï¥¿¥¤¥ë¤Î»ý¤Ä¾ðÊó¤Î£±¤Ä¤Ç¤¢¤ë ColliderType ¤òÍøÍѤ·¤Þ¤¹¡£
¤³¤Î¾ðÊ󤬻ØÄꤷ¤¿¾ðÊó¤ÈƱ¤¸¤Ç¤¢¤ë¾ì¹ç¤Ë¸Â¤ê¡¢¡ÖÇÛÃÖ²Äǽ¤Ê¥¿¥¤¥ë¡×¤È¤·¤Æǧ¼±¤Ç¤¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡CharaGenerator ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢¥¿¥Ã¥×¤Î´¶ÃΤò¹Ô¤Ã¤¿¤¢¤È¤Ë¡¢¤½¤Î¥¿¥Ã¥×¤·¤¿¥»¥ëºÂɸ¤Î ColliderType ¤ò³Îǧ¤·¤Æ
»ØÄꤵ¤ì¤¿¥¿¥¤¥×¤Ç¤¢¤ë¤È¤¤Î¤ß¡¢¥¥ã¥é¤òÀ¸À®¤¹¤ë¤è¤¦¤ËÀ©¸æ¤ò¼ÂÁõ¤·¤Þ¤¹¡£
¡¡½èÍý¤òµ½Ò¤¹¤ëÁ°¤Ë¡¢¼«Ê¬¤Ç¤É¤Î¤è¤¦¤ÊÀ©¸æ¤¬¹Ô¤¨¤ì¤Ð¥¥ã¥é¤ÎÇÛÃÖ¤ÎÀ©¸æ¤¬²Äǽ¤Ë¤Ê¤ë¤Î¤«¡¢¥¤¥á¡¼¥¸¤òºî¤Ã¤Æ¤ß¤Æ¤«¤é½èÍý¤ò½¤Àµ¤·¤Þ¤·¤ç¤¦¡£
¥×¥í¥°¥é¥à¤Î¥í¥¸¥Ã¥¯¤òÁȤßΩ¤Æ¤ëºÝ¤Ë¤Ï¡¢½èÍý¤Î¥¤¥á¡¼¥¸¤ò»ý¤Ä¤³¤È¤¬¤È¤Æ¤âÂçÀڤˤʤê¤Þ¤¹¡£
¤É¤ó¤Ê¤È¤¤Ë¡¢¤É¤¦¤Ê¤Ã¤Æ¤Û¤·¤¤¤Î¤«¡¢¤½¤Î¥¤¥á¡¼¥¸¤òÆüËܸ첽¤·¡¢¤µ¤é¤Ë¥×¥í¥°¥é¥à¤È¤·¤Æ¸À¸ì²½¤·¤Æ¤¤¤¯¤³¤È¤¬µá¤á¤é¤ì¤Þ¤¹¡£
¡¡¤Þ¤¿Á°²óÍÑ°Õ¤·¤Æ¤¤¤ë¥¥ã¥é¤ÎÀ¸À®½èÍý¤Ë¤Ä¤¤¤Æ¤Ï¥á¥½¥Ã¥É²½¤·¤Æ¤¤¤Þ¤¹¡£
»öÁ°¤Ëµ½Ò¤·¤Æ¤¢¤Ã¤¿½èÍý¤ò¤É¤Î¤è¤¦¤Ë¤¹¤ì¤Ð¥á¥½¥Ã¥É²½¤Ç¤¤ë¤Î¤«¤â¡¢¹ç¤ï¤»¤Æ³Ø½¬¤·¤Æ¤¤¤¤Þ¤·¤ç¤¦¡£
CharaGenerator.cs
¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é˺¤ì¤º¤Ë¥»¡¼¥Ö¤ò¤·¤Þ¤¹¡£
¡¡°ú¿ô¤Ë»ØÄꤷ¤¿¥»¥ëºÂɸ(¥¿¥¤¥ë¥Þ¥Ã¥×¤ÎºÂɸ¾ðÊó¡£Vector3Int ·¿)¤òÅϤ¹¤³¤È¤Ç¡¢¤½¤Î¥»¥ëºÂɸ¤Ë¤¢¤ë¥¿¥¤¥ë¤Î ColliderType ¤òÌá¤êÃͤȤ·¤Æ¼èÆÀ¤·¤Þ¤¹¡£
ColliderType ¤Ï None¡¢Sprite¡¢Grid ¤Î£³¼ïÎब¤¢¤ê¤Þ¤¹¡£
// ¥¿¥Ã¥×¤·¤¿°ÌÃ֤Υ¿¥¤¥ë¤Î¥³¥é¥¤¥À¡¼¤Î¾ðÊó¤ò³Îǧ¤·¡¢¤½¤ì¤¬ None ¤Ç¤¢¤ë¤Ê¤é if (tilemaps.GetColliderType(gridPos) == Tile.ColliderType.None) { }
¡¡¾åµ¤ÎÎã¤Ç¤Ï¡¢²èÌ̤Υ¿¥Ã¥×¤·¤¿ÃÏÅÀ¤Î¥»¥ëºÂɸ¤ò°ú¿ô¤È¤·¤Æ¡¢¤½¤ÎºÂɸ¤Î¥¿¥¤¥ë¤Î»ý¤Ä ColliderType ¤Î¾ðÊó¤ò¼èÆÀ¤·¡¢¤½¤Î¥¿¥¤¥×¤¬ None ¤Ç¤¢¤ë¾ì¹ç¤Ë¤Ï
if ʸ¤Î¾ò·ï¤òËþ¤¿¤·¤Æ½èÍý¤ò¹Ô¤¦¤è¤¦¤ËÀ©¸æ¤·¤Æ¤¤¤Þ¤¹¡£
Unity ¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
TileMap
https://docs.unity3d.com/ScriptReference/Tilemaps....
Unity ¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
TileMap.GetColliderType
https://docs.unity3d.com/ScriptReference/Tilemaps....
¥³¥¬¥Í¥Ö¥í¥° ÍÍ
¡ÚUnity¡Û¥¿¥¤¥ë¥Þ¥Ã¥× - Tilemap ¥¯¥é¥¹¤Ç¤è¤¯»È¤¦´Ø¿ô
https://baba-s.hatenablog.com/entry/2018/04/08/131...
¡¡CharaGenerator ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤Î¤Ç¡¢CharaGenerator ¥¹¥¯¥ê¥×¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
¥¢¥µ¥¤¥ó¤¹¤ë¾ðÊ󤬿·¤·¤¯£±¤Äɽ¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤³¤Á¤é¤ò½çÈÖ¤ËÀßÄꤷ¤Þ¤¹¡£
¡¡Tilemaps ÊÑ¿ô¤Ë¤Ï Grid_Walk ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤Î Tilemap ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È ¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£
¡¡¥¢¥µ¥¤¥ó¤¹¤ëÂоݤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò´Ö°ã¤¨¤Ê¤¤¤è¤¦¤·¤Æ¤¯¤À¤µ¤¤¡£
¥¢¥µ¥¤¥ó¤¹¤ë¤È¡¢¤½¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤·¤Æ¤¤¤ë³ºÅö¤¹¤ë¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¾ðÊ󤬼«Æ°Åª¤ËÊÑ¿ô¤ËÂåÆþ¤µ¤ì¤Þ¤¹¡£
¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü

¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£
¡¡¥»¡¼¥Ö¤ò¹Ô¤¤¡¢¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ½èÍý¤ò³Îǧ¤·¤Þ¤·¤ç¤¦¡£
¡¡¿§¡¹¤Ê¥¿¥¤¥ë¤ò¥¿¥Ã¥×¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
Grid_Base ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈÆâ¤Î¥¿¥¤¥ë(²¼ÃÏÉôʬ)¤Î¤ß¤ËÈ¿±þ¤·¤Æ¥¥ã¥é¤¬À¸À®¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ì¤Ð¡¢À©¸æÀ®¸ù¤Ç¤¹¡£
¡ã¼ÂÁõÆ°²è¡¡²èÌ̤ò¥¿¥Ã¥×¤·¤¿ºÝ¤ËÇÛÃÖ²Äǽ¤Ê°ÌÃ֤Ǥ¢¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤Î¥¿¥Ã¥×¤·¤¿°ÌÃ֤˥¥ã¥é¤òÀ¸À®¤¹¤ë¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£
¡¡¼¡¤Ï¡¡¼ê½ç£·¡¡¡ÝŨ¥¥ã¥é¤ÎºîÀ®¤È°ÜÆ°½èÍý¤Î¼ÂÁõ¡Ý¡¡¤Ç¤¹¡£
- ¥«¥Æ¥´¥ê¡§
- ¿Ê³Ø/¥¹¥¯¡¼¥ë
- ¥×¥í¥°¥é¥ß¥ó¥°
¥³¥á¥ó¥È¤ò¤«¤¯