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

¡¡UniTask ¤òÍøÍѤ·¤¿ÈóƱ´ü½èÍý¤Î¼ÂÁõÎã¤ò³Ø½¬¤·¤Þ¤¹¡£

¡¡Google ¤Î SpreadSheet(¥¹¥×¥ì¥Ã¥É¥·¡¼¥È¡£°Ê²¼¡¢GSS ¤È¤·¤Þ¤¹)¤Î¥·¡¼¥È¤Î¾ðÊó¤ò£±¥·¡¼¥È¤Ë¤Ä¤­¡¢£±¤Ä¤Î¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¼è¤ê¹þ¤àÊýË¡¤Ë¤Ä¤¤¤Æ¡¢
¥³¥ë¡¼¥Á¥ó¤Ë¤è¤ê¼ÂÁõ¤·¤Æ¤¤¤¿ÈóƱ´ü½èÍý¤ÎÉôʬ¤ò UniTask (async/await) ¤òÍøÍѤ·¤¿½èÍý¤ËÃÖ¤­´¹¤¨¤Æ¼ÂÁõ¤·¤Þ¤¹¡£

¡¡»öÁ°¤Ë¤³¤Á¤é¤Îµ­»ö¤è¤ê¡¢¸µ¤È¤Ê¤ë½èÍý¤ÎºîÀ®¤ò¹Ô¤Ã¤Æ¤«¤é³Ø½¬¤ò¤·¤Þ¤¹¡£



¡ã¿·¤·¤¤³Ø½¬ÆâÍÆ¡ä
¡¡¡¦async ¥­¡¼¥ï¡¼¥É¤È await ¥­¡¼¥ï¡¼¥É¤òÍøÍѤ·¤¿ÈóƱ´ü½èÍý
¡¡¡¦UniTask ¤È¤Ï¡©
¡¡¡¦CancellationToken¡Ê¥­¥ã¥ó¥»¥ì¡¼¥·¥ç¥ó¥È¡¼¥¯¥ó¡Ë



¡ãasync ¥­¡¼¥ï¡¼¥É¤È await ¥­¡¼¥ï¡¼¥É¤òÍøÍѤ·¤¿ÈóƱ´ü½èÍý¡ä


¡¡¤³¤Î¥­¡¼¥ï¡¼¥É·²¤Ï C# ¤Î Task ¥¯¥é¥¹¡¢¤ª¤è¤Ó UniTask ¥¯¥é¥¹¤Ëɳ¤Å¤¤¤¿¹½Ê¸¤Ç¤¹¡£
¤è¤Ã¤Æ Task ¥¯¥é¥¹¤« UniTask ¥¯¥é¥¹¤È°ì½ï¤ËÀë¸À¤ò¹Ô¤¦É¬Íפ¬¤¢¤ê¤Þ¤¹¡£

¡¡async(¥¨¥¤¥·¥ó¥¯) ¤Ï Asynchoronous(¥¨¥¤¥·¥ó¥¯¥í¥Ê¥¹) ¤È¤¤¤¦Ã±¸ì¤Îά¸ì¤Ç¡ÖÈóƱ´ü¡×¤È¤¤¤¦°ÕÌ£¤Ç¤¹¡£
¤³¤ì¤Ï await ¤òÍøÍѤ¹¤ë¥á¥½¥Ã¥É¤òµ­½Ò¤¹¤ë¤¿¤á¤Ë¡¢¥á¥½¥Ã¥É¤ÎÀë¸À»þ¤Ë¤Ä¤±¤ëɬÍפ¬¤¢¤ë¥­¡¼¥ï¡¼¥É¤Ç¤¹¡£
¤½¤ÎºÝ¡¢Ìá¤êÃÍ¤Ë¤Ï UniTask ¤òÍøÍѤ·¤Þ¤¹¡£

¡ãasync ¥­¡¼¥ï¡¼¥É¡ä
private async UniTask Hoge() {

}



¡¡await(¥¢¥¦¥§¥¤¥È) ¥­¡¼¥ï¡¼¥É¤Ï¡ÖÂÔ¤Á¼õ¤±¤ë¡×¤È¤¤¤¦°ÕÌ£¤Ç¤¹¡£
¤³¤Î¥­¡¼¥ï¡¼¥É¤Ï¡¢ÈóƱ´ü½èÍý¤È¤·¤Æ¼Â¹Ô¤¹¤ë¥á¥½¥Ã¥É¤ÎÀèƬ¤Ëµ­½Ò¤·¤Þ¤¹¡£

¡ãawait ¥­¡¼¥ï¡¼¥É¡ä
private async UniTask Hoge() {
    await HogeHoge();
}



¡¡¤³¤Î£²¤Ä¤Î¥­¡¼¥ï¡¼¥É¤òÍøÍѤ·¡¢Ìá¤êÃͤη¿¤ò UniTask ¤Ë¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢¥³¥ë¡¼¥Á¥ó½èÍý¤ÈƱ¤¸¤è¤¦¤ËÈóƱ´ü½èÍý¤ò¼Â¹Ô¤·¡¢¤½¤Î½èÍý¤Î²ò·è¤òÂÔ¤Á¼õ¤±¤ëµ¡Ç½(¥á¥¤¥ó¥¹¥ì¥Ã¥É¤Ë½èÍý¤¬Ìá¤Ã¤Æ¤¯¤ë¤Î¤òÂÔ¤Ä)¤ò¼ÂÁõ¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¤Þ¤¿¥³¥ë¡¼¥Á¥ó¥á¥½¥Ã¥ÉÆâ¤Çµ­½Ò¤¬²Äǽ¤Ç¤¢¤Ã¤¿ yield return null ¤ä WaitUntil ¤Ê¤É¤â½èÍý¤â UniTask ¤Ë¤Ï static ¥á¥½¥Ã¥É¤È¤·¤ÆÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢async / await ¥­¡¼¥ï¡¼¥É¤ò»È¤¦¤³¤È¤Ç¡¢¥³¥ë¡¼¥Á¥ó¥á¥½¥Ã¥É¤òÃÖ¤­´¹¤¨¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡¤Þ¤¿¥³¥ë¡¼¥Á¥ó¤Ç¤ÏľÀÜ»ØÄê¤Ç¤­¤Ê¤«¤Ã¤¿Ìá¤êÃͤâ UniTask<T> ¤È¤·¤Æµ­½Ò¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¥¿¥×¥ë·¿¤òÍøÍѤ¹¤ë¤³¤È¤ÇÊ£¿ô¤ÎÌá¤êÃͤò»ý¤¿¤»¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£

¡¡¤Ê¤ª UniTask ¤Ë¤Ï void ¤ËÁêÅö¤¹¤ë UniTaskVoid ·¿¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Á¤é¤Î·¿¤Ë¤¹¤ë¤³¤È¤Ç½èÍý¤òÂÔ¤Á¼õ¤±¤Ê¤¤(await ¤Ç¤­¤Ê¤¤)¥á¥½¥Ã¥É¤È¤·¤Æµ¡Ç½¤µ¤»¤ë¤³¤È¤â½ÐÍè¤Þ¤¹¡£
½èÍý¤Î´°Î»¤òÄÌÃΤ¹¤ëɬÍפ¬¤Ê¤¤¥á¥½¥Ã¥É¤ÇÍøÍѤ¹¤ë¤¿¤á¡¢¤³¤Îµ¡Ç½¤Ï UniTask ¤ò»È¤Ã¤¿ÈóƱ´ü½èÍý¤ÎºÇ¸å¤ËÍøÍѤµ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£(ÈóƱ´ü½èÍý¤òºÇ½é¤Ë½èÍý¤·»Ï¤á¤ë¾ì½ê¡¢¤È¤â¸À¤¨¤Þ¤¹)

¡ã»²¹Í¥µ¥¤¥È¡ä
MicroSoft
https://docs.microsoft.com/ja-jp/dotnet/csharp/pro...
Qiita @4_mio_11 ÍÍ
ÈóƱ´üÍý²ò¤Î¤¿¤á¤Ëasync/await¤ÈTask¤Î´ðÁäò³Ø¤ó¤ÀÏÃ
https://qiita.com/4_mio_11/items/f9b19c04509328b1e...


¡ãUniTask ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¡ä


¡¡°Ê²¼¤Î Github ¥µ¥¤¥È¤«¤é UniTask ÍѤΠUnitypackage ¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¥¤¥ó¥Ý¡¼¥È¤ò¹Ô¤¦¤«¡¢PackageManager ·Ðͳ¤Ç¥¤¥ó¥Ý¡¼¥È¤ò¹Ô¤¤¤Þ¤¹¡£


£±¡¥Github ¥µ¥¤¥È¤«¤é Unitypackage ¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¥¤¥ó¥Ý¡¼¥È¤¹¤ë¾ì¹ç

https://github.com/Cysharp/UniTask/releases

¡ãUnitypackage ¤òÁªÂò¤¹¤ë¡ä



¡¡Unity ¤òµ¯Æ°¤·¡¢¥À¥¦¥ó¥í¡¼¥É¤·¤¿ Unitypackage ¤ò Unity Æâ¤Î Assets ¥Õ¥©¥ë¥À¤Ë¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¤¯¤À¤µ¤¤¡£
¥¤¥ó¥Ý¡¼¥ÈÍѤΥݥåץ¢¥Ã¥×¥¦¥¤¥ó¥É¥¦¤¬³«¤­¤Þ¤¹¤Î¤Ç¡¢Import ¤ò²¡¤·¤Æ¤¯¤À¤µ¤¤¡£¼«Æ°Åª¤Ë¥¤¥ó¥Ý¡¼¥È¤¬»Ï¤Þ¤ê¤Þ¤¹¡£


£²¡¥PackageManager ·Ðͳ¤Ç¥¤¥ó¥Ý¡¼¥È¤¹¤ë¾ì¹ç


¡¡Unity Æâ¤Ç PackageManager ¥¦¥¤¥ó¥É¥¦¤ò³«¤­¡¢º¸¾å¤Î ¡Ü ¥¢¥¤¥³¥ó¤ò²¡¤·¤Æ¡¢Add package from git URL... ¤òÁªÂò¤·¤Þ¤¹¡£





¡¡Github ¤Î URL ¤òÆþÎϤ¹¤ë¥Ý¥Ã¥×¥¢¥Ã¥×¤¬½Ð¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤Ë¡¢²¼µ­¤Î URL ¤ò¥³¥Ô¡¼¤·¤ÆŽ¤êÉÕ¤±¡¢Add ¥Ü¥¿¥ó¤ò²¡¤·¤Þ¤¹¡£

¡ãUniTask ¤Î GitURL¡ä
 https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask


¡ã¾åµ­¤Î URL ¤ò¥³¥Ô¡¼¤·¤ÆŽ¤êÉÕ¤±¤Æ¤«¤é Add ¥Ü¥¿¥ó¤ò²¡¤¹¡ä



¡¡°Ê¾å¤Î¼ê½ç¤ò¹Ô¤¦¤È¡¢¼«Æ°Åª¤Ë UniTask ¤Î¥¤¥ó¥Ý¡¼¥È¤¬»Ï¤Þ¤ê¤Þ¤¹¡£








¡ãUniTask ¤È¤Ï¡©¡ä


¡¡C# ¤Ë¤ª¤¤¤ÆÄ󶡤µ¤ì¤Æ¤¤¤ë Task µ¡Ç½¤ò¡¢¤è¤ê Unity ¤ËºÇŬ²½¤·¡¢¤è¤ê°·¤¤¤ä¤¹¤¯¤·¤¿¤â¤Î¤¬¡¢UniTask ¤Ë¤Ê¤ê¤Þ¤¹¡£
UniTask ¤ÏÈóƱ´ü½èÍý¤ËÍ¥¤ì¤Æ¤ª¤ê¡¢¥³¥ë¡¼¥Á¥ó¤Ë¤è¤ë½èÍý¤Î¿¤¯¤ò async / await ¥­¡¼¥ï¡¼¥É¤ò»È¤Ã¤ÆÈóƱ´ü½èÍý¤È¤·¤Æµ­½Ò¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

Chsharp ÍÍ
https://github.com/Cysharp/UniTask


¡¡¥¹¥¯¥ê¥×¥ÈÆâ¤Ç UniTask ¤Îµ¡Ç½¤òÍøÍѤ¹¤ë¾ì¹ç¤Ë¤Ï¡¢using Cysharp.Threading.Tasks; ¤ÎÀë¸À¤¬É¬Íפˤʤê¤Þ¤¹¡£

¡¡Â礭¤Ê°ã¤¤¤È¤·¤Æ¡¢¥³¥ë¡¼¥Á¥ó¤ä Invoke ¥á¥½¥Ã¥É¤Ï MonoBehavior ¥¯¥é¥¹Æâ¤Î¥á¥ó¥Ð¤Ç¤¢¤ë¤¿¤á¡¢MonoBehavior ¤ò·Ñ¾µ¤·¤Ê¤¤¤È¼ÂÁõ¤¬½ÐÍè¤Þ¤»¤ó¤¬¡¢UniTask ¤È async / await ¤Ë¤Ï¤½¤ÎÀ©Ìó¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤Ä¤Þ¤ê¡¢MonoBehavior ¤ò·Ñ¾µ¤·¤Æ¤¤¤Ê¤¤ static ¥¯¥é¥¹¤Ê¤É¤Ç¤âÍøÍѲÄǽ¤Ç¤¹¡£
¡¡
¡¡¤Þ¤¿¡¢¥³¥ë¡¼¥Á¥ó¤Î½èÍý¤Ï¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬ÇË´þ¤µ¤ì¤¿Ãʳ¬¤Ç¼«Æ°Åª¤Ë½èÍý¤¬ÇË´þ(¥­¥ã¥ó¥»¥ë)¤µ¤ì¤Þ¤¹¤¬¡¢
async / await ¤Ç¼ÂÁõ¤·¤¿ÈóƱ´ü½èÍý¤Ï¼«Æ°Åª¤Ë¤ÏÄä»ß¤·¤Þ¤»¤ó¤Î¤Ç¡¢¥­¥ã¥ó¥»¥ë½èÍý¤ò¹Í¤¨¤Æ¼ÂÁõ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£


¡ã»²¹Í¥µ¥¤¥È¡ä
Qiita @toRisouP ÍÍ
UniTaskµ¡Ç½¾Ò²ð
https://qiita.com/toRisouP/items/4445b6b9bf00e49eb...
¥½¥Õ¥È¥á¥Ç¥£¥¢¸¦µæ²ñ ¤¹¤¤¤Þ ÍÍ
UniTask¤Ç¥ì¥Ã¥ÄÈóƱ´ü¡ª
http://softmedia.sakura.ne.jp/advent-calendar/2019...


¥¹¥×¥ì¥Ã¥É¥·¡¼¥È¤òÆɤ߹þ¤ó¤Ç¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¼è¤ê¹þ¤à¤¿¤á¤Î½èÍý¤ò½¤Àµ¤¹¤ë


¡¡GSSReader ¥¯¥é¥¹¤È GSSReciver ¤Î£²¤Ä¤Î¥¯¥é¥¹¤Î¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°¤ò¹Ô¤¤¡¢
ÈóƱ´ü½èÍý¤ÎÉôʬ¤ò¥³¥ë¡¼¥Á¥ó¥á¥½¥Ã¥É¤«¤é UniTask ¤Îµ¡Ç½¤È async / await ¤Îµ¡Ç½¤òÍøÍѤ·¤¿½èÍý¤Ë½¤Àµ¤·¤Þ¤¹¡£

¡¡¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°¤Ë¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢½¤Àµ¸å¤ÏƱ¤¸¤è¤¦¤ËÆ°ºî¤¹¤ë¤³¤È¤¬µá¤á¤é¤ì¤Þ¤¹¡£


GSSReader ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡¥¹¥×¥ì¥Ã¥É¥·¡¼¥È¤Ë¥¢¥¯¥»¥¹¤·¡¢¥·¡¼¥ÈÆâ¤Î¾ðÊó¤ò¥·¡¼¥È¤´¤È¤Ë¼èÆÀ¤·¤Æ¤ª¤¯¤¿¤á¤Ë¥¯¥é¥¹¤Ç¤¹¡£


GSSReader.cs

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



¡ãCancellationToken¡Ê¥­¥ã¥ó¥»¥ì¡¼¥·¥ç¥ó¥È¡¼¥¯¥ó¡Ë¡ä


¡¡ÈóƱ´ü½èÍý¤ÎÅÓÃæ¤Ç½èÍý¤¬Ää»ß¤¹¤ë¤è¤¦¤Ê»öÂÖ¤¬È¯À¸¤·¤¿¾ì¹ç¤Ë¤Ä¤¤¤Æ¤ÎÀ©¸æ¤Î½èÍý¤Ç¤¹¡£

¡¡¥³¥ë¡¼¥Á¥ó¥á¥½¥Ã¥É¤Î½èÍý¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀ¸Â¸¾õÂ֤ȥ³¥ë¡¼¥Á¥ó¥á¥½¥Ã¥É¤Î½èÍý¤¬É³¤Å¤¤¤ÆÆ°¤¤¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢
¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬Ç˲õ¤µ¤ì¤ë¤È¡¢¤½¤Î»þÅÀ¤Ç¥³¥ë¡¼¥Á¥ó¥á¥½¥Ã¥É¤Î½èÍý¤â¼«Æ°Åª¤Ë½ªÎ»¤·¤Þ¤¹¡£

¡¡UniTask ¤ÇÍøÍѤ¹¤ë async / await ¤Ë¤è¤ëÈóƱ´ü½èÍý¤Ï¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë½èÍý¤¬É³¤Å¤¤¤Æ¤¤¤Ê¤¤¤¿¤á¡¢
½èÍý¤ò¼Â¹Ô¤·¤¿¥¹¥¯¥ê¥×¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬Ç˲õ¤µ¤ì¤Æ¤â¡¢½èÍý¼«ÂΤÏÆ°¤­Â³¤±¤Æ¤·¤Þ¤¦¤³¤È¤Ë¤Ê¤ê¡¢
¥á¥â¥ê¥ê¡¼¥¯¤ò°ú¤­µ¯¤³¤¹¸¶°ø¤È¤Ê¤ê¤Þ¤¹¡£

¡¡¤½¤Î¤¿¤á¡¢»öÁ°¤Ë½èÍý¤òÄä»ß¤¹¤ë¤¿¤á¤ÎÀ©¸æ¤òÍÑ°Õ¤·¤Æ¤ª¤¤¤Æ¡¢½èÍý¤ÎÄä»ß¤ò¹Ô¤¨¤ë¤è¤¦¤Ë¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£



¡¡C# ¤Ë¤Ï CancellationToken ¤È¤¤¤¦µ¡Ç½¤¬ÍÑ°Õ¤µ¤ì¤Æ¤ª¤ê¤Þ¤¹¤¬¡¢UniTask ¤Ç¤âƱÍͤε¡Ç½¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤ì¤òÍøÍѤ¹¤ë¤³¤È¤ÇÈóƱ´ü½èÍý¤òÄä»ß¤µ¤»¤ë¤³¤È¤¬½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡C# ¤Î CancellationToken ¤Ï System.Threading ¤Î namespace ¤ËÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢
UniTask ¤ÎÀë¸ÀÆâ¤Ë¤âÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢½ÅÊ£¤·¤ÆÀë¸À¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£


¡¡using Cysharp.Threading.Tasks;

¡¡// CancellationToken ¤ÎºîÀ®
¡¡var token = this.GetCancellationTokenOnDestroy();

¡¡// ÈóƱ´ü½èÍý¤Ë CancellationToken ¤ÎÀßÄê¤ò¹Ô¤¤¡¢ÈóƱ´ü½èÍý¤ò¥­¥ã¥ó¥»¥ë¤·¤¿¾ì¹ç¤Ë¤Ï½èÍý¤¬Ää»ß¤¹¤ë¤è¤¦¤Ë¥»¥Ã¥È¤¹¤ë
  await request.SendWebRequest().WithCancellation(token);



GSSReceiver ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡¥¹¥×¥ì¥Ã¥É¥·¡¼¥È¤«¤é¼èÆÀ¤·¤¿¥Ç¡¼¥¿¤¬ GSSReacer ¥¯¥é¥¹¤Î SheetData ÇÛÎóÊÑ¿ôÆâ¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢
¤½¤ì¤ò¥·¡¼¥Èñ°Ì¤ÇǤ°Õ¤Î¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ËÃͤȤ·¤Æ¼è¤ê¹þ¤à¤¿¤á¤Î¥¯¥é¥¹¤Ç¤¹¡£


GSSReceiver.cs

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



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


¡¡ÈóƱ´ü½èÍý¤ò¥³¥ë¡¼¥Á¥ó¥á¥½¥Ã¥É¤«¤é UniTask ¤òÍøÍѤ·¤¿½èÍý¤Ë¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°¤·¤¿¤À¤±¤Ç¤¹¤Î¤Ç¡¢
¥²¡¼¥à¤ò¼Â¹Ô¤·¤¿ºÝ¤Î½èÍý¤Ï¤¤¤Þ¤Þ¤Ç¤ÈƱ¤¸¤è¤¦¤ËÆ°ºî¤¹¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£

¡¡¥²¡¼¥à¤ò¼Â¹Ô¤¹¤ë¤È¡¢¼«Æ°Åª¤Ë¥¹¥×¥ì¥Ã¥É¥·¡¼¥È¤ÎÆɤ߹þ¤ß¤È¡¢Æɤ߹þ¤ó¤À¾ðÊó¤ò¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¼è¤ê¹þ¤à½èÍý¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£

¡¡SkillDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò³Îǧ¤·¡¢Size ¤¬ 0 ¤Ç¤Ï¤Ê¤¯¡¢¥¹¥×¥ì¥Ã¥É¥·¡¼¥È¤Î¹Ô¤Î¿ôʬ¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢Ãͤ¬ÂåÆþ¤µ¤ì¤Æ¤¤¤ë¤«¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡¤Þ¤¿Ê£¿ô¤Î¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÍÑ°Õ¤·¤Æ¤¤¤ë¾ì¹ç¤âƱÍͤ˳Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£





¡¡°Ê¾å¤Ë¤Ê¤ê¤Þ¤¹¡£

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


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

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

Menu



´ðÁÃ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

private



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

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