ºÇ½ª¹¹¿·¡§
orika_ex_miyako 2019ǯ09·î16Æü(·î) 22:34:36ÍúÎò
¢¨ Unity2019¤Ï²¼µ¤ÎStandard Assets¤¬Èó¿ä¾©¥¢¥»¥Ã¥È¤Ë¤Ê¤Ã¤¿¤¿¤á¡¢¥¤¥ó¥Ý¡¼¥È¤¬¤Ç¤¤Þ¤»¤ó¡£
¤½¤Î¾ì¹ç¡¢¼¡¤Î14.Android¤Ç¤Î¥¹¥ï¥¤¥×Áàºî¤ò¼ÂÁõ¤¹¤ë(Unity 2019°Ê¹ß)¤ò¤´Í÷¤¯¤À¤µ¤¤¡£
¡¡Unity¤Î¡ÖStandard Asset¡×¤Î£±¤Ä¤Ç¤¢¤ë¡ÖCross Platform Input¡×¤òÍøÍѤ·¤Æ¡¢¥¢¥ó¥É¥í¥¤¥ÉüËö¤Ç¼ÂºÝ¤Ë¥²¡¼¥à¤òÁàºî¤·¤ÆÍ·¤Ù¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
»öÁ°½àÈ÷¤È¤·¤Æ¡ÖStandard Asset¡×¤Î¥¤¥ó¥Ý¡¼¥È¤Î¾¤Ë¡¢AndroidStudio¤Î¥¤¥ó¥¹¥È¡¼¥ë¡¢Unity¤ÎÀßÄê¤Ê¤É¤¬É¬Íפˤʤê¤Þ¤¹¤Î¤Ç
¤½¤Á¤é¤ÏSlack¤Î¡Ö01_»öÁ°½àÈ÷¡×¤È¡Ö02_Unity¤ÎƳÆþÊýË¡¡×Æâ¤ËµºÜ¤·¤Æ¤¢¤ê¤Þ¤¹¡£
GameScene¤òMain¥·¡¼¥ó¤ËÀÚ¤êÂØ¤¨¤Þ¤¹¡£Scenes¥Õ¥©¥ë¥ÀÆâ¤è¤êMain¥·¡¼¥ó¤ò¥À¥Ö¥ë¥¯¥ê¥Ã¥¯¤·¤ÆÀÚ¤êÂØ¤¨¤Æ¤¯¤À¤µ¤¤¡£
Project¥Ó¥å¡¼¤ÎAssets¥Õ¥©¥ë¥À¤è¤ê¡¢StandardAssets -> CrossPlatformInput -> Prefabs¥Õ¥©¥ë¥À¤òÁªÂò¤·¤Þ¤¹¡£
Prefabs¥Õ¥©¥ë¥ÀÆâ¤Ë¤¢¤ë¥×¥ì¥Õ¥¡¥Ö¤¬²èÌ̤Υ¿¥Ã¥ÁÁàºî¤ò²Äǽ¤Ë¤¹¤ëµ¡Ç½¤òÄɲ䷤Ƥ¯¤ì¤Þ¤¹¡£
¥Ò¥¨¥é¥ë¥¡¼Æâ¤Ë¡ÖDualTouchControls¡×¤Î¥×¥ì¥Õ¥¡¥Ö¤òÁªÂò¤·¤Æ¡¢¥É¥é¥Ã¥°¡õ¥É¥í¥Ã¥×¤ò¤·¤ÆÄɲä·¤Þ¤¹¡£
DualTouchControls¤Î¹½À®¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¡¦MoveTouchpad
¡¦TurnAndLookTouchpad
¡¦Jump
º£²ó¤ÏMoveTouchpad¤ò»ÈÍѤ·¤Þ¤¹¡£Â¾¤Î£²¤Ä¤ÏÈó¥¢¥¯¥Æ¥£¥Ö¤ËÀÚ¤êÂØ¤¨¤ë¤«¡¢Delete¤·¤Æ¤¯¤À¤µ¤¤¡£
¥Ò¥¨¥é¥ë¥¡¼¤ÎMoveTouchpad¤ò¥À¥Ö¥ë¥¯¥ê¥Ã¥¯¤¹¤ë¤ÈCanvas¤Ø¤Î»ëÅÀ¤ËÀÚ¤êÂØ¤ï¤ê¤Þ¤¹¤Î¤Ç
¤½¤³¤ÇMoveTouchpad¤Î»ØÄêÈϰϤò²èÌÌÁ´ÂΤˤ·¤Þ¤¹¡£²èÌ̤ÎÂ礤µ¤Ë¹ç¤¦¤è¤¦¤ËÄ´À°¤·¤Æ¤¯¤À¤µ¤¤¡£
³¤¤¤Æ¡ÖTouchController¡×¥¹¥¯¥ê¥×¥È¤ò¿·µ¬ºîÀ®¤·¤Þ¤¹¡£
Assets -> Scripts ¥Õ¥©¥ë¥À¤ò³«¤¤¤Æ¡¢¤½¤ÎÃæ¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ create -> C# script ¤òÁªÂò¤·¡¢Ì¾Á°¤ò¡ÖTouchController¡×¤Ë¤·¤Þ¤¹¡£
¡ÖTouchController.cs¡×¤ò³«¤¤¤Æ¡¢²¼µ¤Î¥½¡¼¥¹¥³¡¼¥É¤ò½ñ¤²Ã¤¨¤Þ¤¹¡£
TouchController.cs
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityStandardAssets.CrossPlatformInput; <= CrossPlatformInput¤Î»ÈÍѤòÀë¸À¤·¤Þ¤¹¡£Ëº¤ì¤º¤ËÄɲ䷤Ƥ¯¤À¤µ¤¤¡£ public class TouchController : MonoBehaviour { public float moveSpeed; // Player(¥Ð¡¼)¤Î°Üư®ÅÙ¡£³°Éô¤ÇÀßÄê¤Ç¤¤ë¤è¤¦¤Ëpublic½¤¾þ»Ò¤ò¤Ä¤±¤ë ¡¡ // Update is called once per frame void Update () { float horizontal = CrossPlatformInputManager.GetAxisRaw( "Horizontal" ); // ¿åÊ¿¡Ê²£¡ËÊý¸þ¤Î¥¿¥Ã¥ÁÆþÎϤò¼èÆÀ¤¹¤ë¤¿¤á¤ÎÊÑ¿ôvertical¤òÍѰդ¹¤ë¡£"Vertical"¤Ç¤Ïfloat·¿¤Î-1¡Á1¤Î¿ô»ú¤¬¼èÆÀ¤Ç¤¤ë¡£ if(horizontal != 0){ // ¿åÊ¿Êý¸þ¤Î¥¿¥Ã¥Á¤¬¤¢¤ë¤Ê¤é¡Ê0°Ê³°¤Ê¤é¡Ë transform.position += transform.forward * moveSpeed * -horizontal;¡¡¡¡// °Üư¤ò¤µ¤»¤ë } } }¤³¤Î¥¹¥¯¥ê¥×¥È¡Ê¥¯¥é¥¹¡Ë¤òPlayer¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤·¤Þ¤¹¡£
Unity¤Î¥á¥Ë¥å¡¼Æâ¤ÎMobileInput¤ò¡ÖEnable¡×¤ËÊѹ¹¤·¤Þ¤¹¡£¡Ê¹õ»ú¤¬ÁªÂòÃæ¡Ë
¥²¡¼¥à¤ò¼Â¹Ô¤·¡¢¥Þ¥¦¥¹¤Î¥É¥é¥Ã¥°¡õ¥É¥í¥Ã¥×¤ÇPlayer¥ª¥Ö¥¸¥§¥¯¥È¤¬°Üư¤¹¤ë¤«¤É¤¦¤«³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£
- ¥«¥Æ¥´¥ê¡§
- ¿Ê³Ø/¥¹¥¯¡¼¥ë
- Áí¹ç
¥³¥á¥ó¥È¤ò¤«¤¯